便攜式B型超聲診斷儀具有無(wú)創(chuàng)傷、簡(jiǎn)便易行、相對(duì)價(jià)廉等優(yōu)勢(shì),在臨床中越來越得到廣泛的應(yīng)用。它將超聲波技術(shù)、微電子技術(shù)、計(jì)算機(jī)技術(shù)、機(jī)械設(shè)計(jì)與制造及生物醫(yī)學(xué)工程等技術(shù)融合在一起。開展該課題的研究對(duì)提高臨床診斷能力和促進(jìn)我國(guó)醫(yī)療事業(yè)的發(fā)展具有重要的意義。 便攜式B型超聲診斷儀由人機(jī)交互系統(tǒng)、探頭、成像系統(tǒng)、顯示系統(tǒng)構(gòu)成。其基本工作過程是:首先人機(jī)交互系統(tǒng)接收到用戶通過鍵盤或鼠標(biāo)發(fā)出的命令,然后成像系統(tǒng)根據(jù)命令控制探頭發(fā)射超聲波,并對(duì)回波信號(hào)處理、合成圖像,最后通過顯示系統(tǒng)完成圖像的顯示。 成像系統(tǒng)作為便攜式B型超聲診斷儀的核心對(duì)圖像質(zhì)量有決定性影響,但以前研制的便攜式B型超聲診斷儀的成像系統(tǒng)在三個(gè)方面存在不足:第一、采用的是單片機(jī)控制步進(jìn)電機(jī),控制精度不高,導(dǎo)致成像系統(tǒng)采樣不精確;第二、采用的數(shù)字掃描變換算法太粗糙,影響超聲圖像的分辨率;第三、它的CPU多采用的是51系列單片機(jī),測(cè)量速度太慢,同時(shí)也不便于系統(tǒng)升級(jí)和擴(kuò)展。 針對(duì)以上不足,提出了基于FPGA的B型超聲成像系統(tǒng)解決方案,采用Altera公司的EP2C5Q208C8芯片實(shí)現(xiàn)了步進(jìn)電機(jī)步距角的細(xì)分,使電機(jī)旋轉(zhuǎn)更勻速,提高了采樣精度;提出并采用DSTI-ULA算法(Uniform Ladder Algorithm based on Double Sample and Trilinear Interotation)在FPGA內(nèi)實(shí)現(xiàn)數(shù)字掃描變換,提高了圖像分辨率;人機(jī)交互系統(tǒng)采用S3C2410-AL作為CPU,改善了測(cè)量速度和系統(tǒng)的擴(kuò)展性。 通過對(duì)系統(tǒng)硬件電路的設(shè)計(jì)、制作,軟件的編寫、調(diào)試,結(jié)果表明,本文所設(shè)計(jì)的便攜式B型超聲成像系統(tǒng)圖像分辨率高、測(cè)量速度快、體積小、操作方便。本文所設(shè)計(jì)的便攜式B型超聲診斷儀可在野外作業(yè)和搶險(xiǎn)(諸如地震、抗洪)中發(fā)揮作用,同時(shí)也可在鄉(xiāng)村診所中完成對(duì)相關(guān)疾病的診斷工作。
上傳時(shí)間: 2013-05-18
上傳用戶:helmos
一.晶片的作用: 晶片為L(zhǎng)ED的主要原材料,LED主要依靠晶片來發(fā)光. 二.晶片的組成. 主要有砷(AS) 鋁(AL) 鎵(Ga) 銦(IN) 磷(P) 氮(N)鍶(Si)這幾種元素中的若干種組成.
標(biāo)簽: 芯片
上傳時(shí)間: 2013-12-10
上傳用戶:離殤
AL-BNR系列變壓器中性點(diǎn)接地電阻柜 中性點(diǎn)經(jīng)電阻接地可有效限制間歇弧光接地過電壓、降低系統(tǒng)操作過電壓、消除系統(tǒng)諧振過電壓、方便配置單相接地故障保護(hù)、可在短時(shí)間內(nèi)有效切除故障線路。從而降低系統(tǒng)設(shè)備的絕緣水平,延遲系統(tǒng)設(shè)備的使用壽命,提高系統(tǒng)運(yùn)行的安全可靠性。 保定市奧蘭電氣設(shè)備有限公司擁有一流的研發(fā)隊(duì)伍和精良的專用設(shè)備,專注于配電系統(tǒng)中性點(diǎn)接地保護(hù)系列產(chǎn)品、繼電保護(hù)裝置、過電壓保護(hù)裝置的研發(fā)、生產(chǎn)、銷售。公司所開發(fā)的系列AL-BNR變壓器中性點(diǎn)接地電阻柜是6-35KV配電網(wǎng)中變壓器中性點(diǎn)接地保護(hù)專用成套設(shè)備,目前已廣泛應(yīng)用于以電纜線路為主的城市配電網(wǎng)、大型工業(yè)企業(yè)、工廠、機(jī)場(chǎng)、港口、地鐵等重要電力用戶配電網(wǎng)以及發(fā)電廠廠用電系統(tǒng)。 產(chǎn)品采用優(yōu)質(zhì)進(jìn)口不銹鋼或國(guó)產(chǎn)不銹鋼電熱金屬材料,具有電導(dǎo)率高、溫度系數(shù)高、耐腐蝕、耐高溫、抗氧化能力強(qiáng)、抗拉強(qiáng)度高及阻值穩(wěn)定等優(yōu)良特點(diǎn),產(chǎn)品運(yùn)行安全可靠。 中壓配電系統(tǒng)中,如果變壓器為三角形接法,則需加裝Z型接地變壓器,以便為系統(tǒng)人為引出中性點(diǎn),以加裝中性點(diǎn)接地電阻。 1、針對(duì)性強(qiáng),保護(hù)到位 AL-BNR變壓器中性點(diǎn)接地電阻柜適用于系統(tǒng)中性點(diǎn)采用小電阻或中電阻接地的場(chǎng)合。此時(shí),電網(wǎng)出現(xiàn)單相接地故障時(shí)需立即跳閘切除故障線路。當(dāng)電網(wǎng)出現(xiàn)單相接地時(shí),接地電阻向接地點(diǎn)提供附加阻性電流,使接地電流呈阻容性質(zhì),從而保證產(chǎn)生的過電壓不超過2.6倍的相電壓。 2、結(jié)構(gòu)緊湊,便于安裝 AL-BNR變壓器中性點(diǎn)接地電阻柜將零散的Z型接地變壓器(如系統(tǒng)無(wú)中性點(diǎn)引出則需加裝)、電阻器、電流互感器、測(cè)量?jī)x表、接地保護(hù)輸出端子等電器設(shè)備整體組合在一個(gè)封閉金屬柜內(nèi),而且可以選配隔離開關(guān)、避雷器,成套供貨,安全可靠性高,布置清晰整齊,便于安裝調(diào)試及操作維護(hù)。 3、選材考究,充分保證產(chǎn)品質(zhì)量 AL-BNR變壓器中性點(diǎn)接地電阻柜內(nèi)的接地變壓器為優(yōu)質(zhì)干式變壓器,其一次繞組為“Z”形接線;電阻器采用不銹鋼鎳鉻合金(Cr20Ni80)材料制成,導(dǎo)電率高、通流能力強(qiáng)、耐高溫、最高使用溫度可達(dá)1600℃;溫度系數(shù)≤ -0.045% /℃、阻值穩(wěn)定、耐腐蝕、防燃防爆、可靠性高。用合金材料組成的電阻全部采用電阻單元,以 多個(gè)單元采用亞弧焊接而成框架式結(jié)構(gòu),電阻單元采用耐高溫絕緣子(高分子)支撐連接。根據(jù)不同的客戶要求我公司可提供進(jìn)口電阻器。 4、監(jiān)測(cè)功能齊全,并提供模擬量輸出 AL-BNR變壓器中性點(diǎn)接地電阻柜可加裝智能監(jiān)控裝置,可監(jiān)測(cè)電阻柜正常運(yùn)行狀態(tài)下中性點(diǎn)不平衡電流、電阻片、電阻柜內(nèi)的溫度,也可以監(jiān)測(cè)發(fā)生單相接地故障瞬間的電流以及記錄接地動(dòng)作次數(shù),并預(yù)留通訊接口,可將檢測(cè)、記錄的信息傳遞至主控室,使運(yùn)行人員在第一時(shí)間內(nèi)得到信息。 5、技術(shù)力量雄厚,服務(wù)周到 我公司為專業(yè)生產(chǎn)廠家,技術(shù)力量雄厚,售前的技術(shù)交流咨詢可隨時(shí)到位。售后的安裝技術(shù)指導(dǎo)可按用戶要求及時(shí)進(jìn)行
標(biāo)簽: 變壓器 中性點(diǎn)接地 電阻柜
上傳時(shí)間: 2014-12-24
上傳用戶:shinesyh
AL-FNR系列發(fā)電機(jī)中性點(diǎn)接地電阻柜 我公司擁有技術(shù)優(yōu)秀的研發(fā)隊(duì)伍和精良的設(shè)備,引進(jìn)并消化國(guó)外先進(jìn)技術(shù),長(zhǎng)期致力于對(duì)中性點(diǎn)接地技術(shù)產(chǎn)品的研發(fā)、生產(chǎn),對(duì)降低電網(wǎng)過電壓、提高電網(wǎng)的安全性、可靠性,具有良好的效果。我公司以進(jìn)口特殊不銹鋼合金材料,開發(fā)生產(chǎn)的系列不銹鋼中性點(diǎn)接地電阻柜。產(chǎn)品具有精度高,線性度好,運(yùn)行可靠,安裝方便,外形美觀等特點(diǎn),已廣泛用于許多國(guó)家重點(diǎn)工程。所生產(chǎn)的0.4KV~35KV發(fā)電機(jī)中性點(diǎn)接地電阻柜是發(fā)電機(jī)組中采用高阻接地的專用成套裝置。 AL-FNR型發(fā)電機(jī)中性點(diǎn)電阻柜連接在發(fā)電機(jī)中性點(diǎn)上,當(dāng)電網(wǎng)或發(fā)電機(jī)定子繞組發(fā)生單相接地故障時(shí),向接地點(diǎn)提供附加阻性電流,使接地點(diǎn)電流由容性變成阻容性電流,從而保證產(chǎn)生的過電壓不超過2.6倍的相電壓。 1、精心設(shè)計(jì)、保護(hù)到位 AL-FNR型發(fā)電機(jī)中性點(diǎn)電阻柜連接在發(fā)電機(jī)中性點(diǎn)與地之間,當(dāng)電網(wǎng)或發(fā)電機(jī)定子繞組發(fā)生單相接地故障時(shí),向接地點(diǎn)提供附加阻性電流,使接地點(diǎn)電流由容性變成阻容性電流,從而保證產(chǎn)生的過電壓不超過2.6倍的相電壓。 2、專業(yè)保護(hù),避免燒損發(fā)電機(jī)鐵芯 AL-FNR型發(fā)電機(jī)中性點(diǎn)電阻柜在設(shè)計(jì)參數(shù)時(shí),力求將總的接地電流控制在15A以內(nèi),不僅可以滿足繼電保護(hù)靈敏度的要求,同時(shí)也可減輕發(fā)電機(jī)定子繞組接地時(shí)鐵芯的損傷。 3、結(jié)構(gòu)緊湊,元器件性能優(yōu)異 AL-FNR型發(fā)電機(jī)中性點(diǎn)電阻柜將零散的單相變壓器、電阻器、電流互感器、接地保護(hù)輸出端子等電器設(shè)備整體組合在一個(gè)封閉金屬柜內(nèi),并可選配隔離開關(guān)、避雷器,智能保護(hù)儀表等成套供貨;安全可靠性高,布置清晰整齊,便于安裝調(diào)試及操作維護(hù)。裝置采用的單相變壓器為干式絕緣變壓器,工作性能穩(wěn)定,抗沖擊能力強(qiáng)。變壓器二次側(cè)采用不銹鋼材料電阻。 4、監(jiān)控功能齊全,并提供模擬量輸出 AL-FNR型發(fā)電機(jī)中性點(diǎn)電阻柜是0.4KV~35KV發(fā)電機(jī)中性點(diǎn)接地電阻柜是發(fā)電機(jī)組中采用高阻接地的專用成套裝置,可選配電流和動(dòng)作記錄儀等智能控制儀表,正常時(shí)可監(jiān)測(cè)中性點(diǎn)不平衡電流,出現(xiàn)單相接地故障時(shí),可記錄動(dòng)作次數(shù);且可為保護(hù)和監(jiān)控系統(tǒng)提供模擬量輸出。 5、性能可靠,維護(hù)簡(jiǎn)便 AL-FNR型發(fā)電機(jī)中性點(diǎn)電阻柜中裝設(shè)干式單相接地變壓器及相應(yīng)的大容量電阻器,柜中還可裝設(shè)單相隔離開關(guān),以便在進(jìn)行檢修或?qū)嶒?yàn)時(shí)隔離電源。 6、技術(shù)力量雄厚,服務(wù)周到 我公司為中性點(diǎn)設(shè)備專業(yè)生產(chǎn)廠家,技術(shù)力量雄厚,售前的技術(shù)交流咨詢可隨時(shí)到位;售后的安裝技術(shù)指導(dǎo)可按用戶要求及時(shí)進(jìn)行。
標(biāo)簽: 發(fā)電機(jī) 中性點(diǎn)接地 電阻柜
上傳時(shí)間: 2013-10-17
上傳用戶:王楚楚
AL-WDZ196型系列微機(jī)小電流系統(tǒng)接地選線裝置 本裝置適用于0.4KV~66KV中性點(diǎn)不接地或經(jīng)電阻、消弧線圈接地的小電流接地系統(tǒng)。可廣泛用于電力系統(tǒng)的發(fā)電廠、變電站、水電站及化工、冶金、煤炭、鐵路等大型廠礦企業(yè)的供電系統(tǒng)。 在電力系統(tǒng)中,把中性點(diǎn)不接地或經(jīng)消弧線圈、電阻接地的系統(tǒng)叫小電流接地系統(tǒng),在小電流接地系統(tǒng)中最常見的故障是單相接地。小電流接地系統(tǒng)發(fā)生單項(xiàng)接地故障時(shí),凡是對(duì)地有電容的線路都將有零序電流通過,但由于零序電流較小,又有很大的分散性,選擇接地線路有一定困難;若系統(tǒng)中有消弧線圈,困難更大。 單相接地時(shí)接地電流較小,按電力系統(tǒng)安全運(yùn)行規(guī)程的規(guī)定,發(fā)生單相接地故障后可繼續(xù)運(yùn)行1至2小時(shí),但此時(shí)系統(tǒng)非故障相對(duì)地電壓升高為線電壓,若不及時(shí)處理,極易發(fā)展成兩相短路使故障擴(kuò)大。弧光接地還會(huì)引起全系統(tǒng)過電壓。
上傳時(shí)間: 2013-10-10
上傳用戶:希醬大魔王
AL-LJ(K)系列零序電流互感器 保定奧蘭電氣科技有限責(zé)任公司生產(chǎn)的AL-LJ(K)系列零序電流互感器經(jīng)電力工業(yè)部電氣設(shè)備質(zhì)量檢測(cè)中心檢測(cè),質(zhì)量?jī)?yōu)于國(guó)標(biāo)GB1208-1997《電流互感器》,具有精度高,線性度好,運(yùn)行可靠,安裝方便,外型美觀等特點(diǎn)。 零序電流互感器(電纜型)的孔徑范圍為Ф40~Ф360,有各種容量、變比、準(zhǔn)確限值系數(shù),可與小電流接地選線裝置、繼電器、儀表等配套使用,實(shí)現(xiàn)對(duì)系統(tǒng)的檢測(cè)和保護(hù)。裝置具有靈敏度高,線性度好等優(yōu)點(diǎn)。產(chǎn)品分整體式和組合式兩類。互感器采用工程塑料外殼、樹脂澆注全密封;外型美觀、安裝方便、節(jié)省安裝空間、規(guī)格品種多,可適用各種保護(hù)裝置和電力系統(tǒng)各種運(yùn)行方式(中性點(diǎn)接地,中性點(diǎn)不接地,大電阻接地,小電阻接地和消弧線圈接地)的需要。 空格:用于小電流接地選線裝置 A:與DD11/60型繼電器配合使用 J:用于微機(jī)型繼電保護(hù) B:與DL11/0.2型繼電器配合使用 保定市奧蘭電氣科技有限責(zé)任公司開發(fā)生產(chǎn)的零序電流互感器是一種套在電纜上的CT,它的一次繞組為穿過CT內(nèi)孔的三相一次導(dǎo)體電纜,它的一次電流是一次三相電流的向量和(在正常、三相平衡時(shí)為0),當(dāng)發(fā)生一次系統(tǒng)單相接地時(shí)三相平衡關(guān)系被打破,這時(shí)零序電流互感器的二次就有電流輸出,供給保護(hù)裝置,實(shí)現(xiàn)保護(hù)和監(jiān)控。 零序電流互感器的一次絕緣就是電纜自身絕緣,所以這種零序電流互感器可以套在任一電壓等級(jí)的電纜上。
標(biāo)簽: 零序電流互感器
上傳時(shí)間: 2013-10-30
上傳用戶:fengzimili
采用射頻等離子體增強(qiáng)化學(xué)氣相沉積(RF2PECVD)技術(shù)制備非晶硅(a2Si)NIP 太陽(yáng)能電池,其中電池的窗口層采用P 型晶化硅薄膜,電池結(jié)構(gòu)為Al/ glass/ SnO2 / N(a2Si :H) / I(a2Si :H) / P(cryst2Si : H) / ITO/ Al。為了使P 型晶化硅薄膜能夠在a2Si 表面成功生長(zhǎng),電池制備過程中采用了H 等離子體處理a2Si 表面的方法。通過調(diào)節(jié)電池P 層和N 層厚度和H 等離子體處理a2Si 表面的時(shí)間,優(yōu)化了太陽(yáng)能電池的制備工藝。結(jié)果表明,使用H 等離子體處理a2Si 表面5 min ,可以在a2Si 表面獲得高電導(dǎo)率的P 型晶化硅薄膜,并且這種結(jié)構(gòu)可以應(yīng)用到電池上;當(dāng)P 型晶化硅層沉積時(shí)間12. 5 min ,N 層沉積12 min ,此種結(jié)構(gòu)電池特性最好,效率達(dá)6. 40 %。通過調(diào)整P 型晶化硅薄膜的結(jié)構(gòu)特征,將能進(jìn)一步改善電池的性能。
標(biāo)簽: NIP 非晶硅 薄膜太陽(yáng)能電池
上傳時(shí)間: 2013-11-21
上傳用戶:wanqunsheng
TLC2543是TI公司的12位串行模數(shù)轉(zhuǎn)換器,使用開關(guān)電容逐次逼近技術(shù)完成A/D轉(zhuǎn)換過程。由于是串行輸入結(jié)構(gòu),能夠節(jié)省51系列單片機(jī)I/O資源;且價(jià)格適中,分辨率較高,因此在儀器儀表中有較為廣泛的應(yīng)用。 TLC2543的特點(diǎn) (1)12位分辯率A/D轉(zhuǎn)換器; (2)在工作溫度范圍內(nèi)10μs轉(zhuǎn)換時(shí)間; (3)11個(gè)模擬輸入通道; (4)3路內(nèi)置自測(cè)試方式; (5)采樣率為66kbps; (6)線性誤差±1LSBmax; (7)有轉(zhuǎn)換結(jié)束輸出EOC; (8)具有單、雙極性輸出; (9)可編程的MSB或LSB前導(dǎo); (10)可編程輸出數(shù)據(jù)長(zhǎng)度。 TLC2543的引腳排列及說明 TLC2543有兩種封裝形式:DB、DW或N封裝以及FN封裝,這兩種封裝的引腳排列如圖1,引腳說明見表1 TLC2543電路圖和程序欣賞 #include<reg52.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int sbit clock=P1^0; sbit d_in=P1^1; sbit d_out=P1^2; sbit _cs=P1^3; uchar a1,b1,c1,d1; float sum,sum1; double sum_final1; double sum_final; uchar duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; uchar wei[]={0xf7,0xfb,0xfd,0xfe}; void delay(unsigned char b) //50us { unsigned char a; for(;b>0;b--) for(a=22;a>0;a--); } void display(uchar a,uchar b,uchar c,uchar d) { P0=duan[a]|0x80; P2=wei[0]; delay(5); P2=0xff; P0=duan[b]; P2=wei[1]; delay(5); P2=0xff; P0=duan[c]; P2=wei[2]; delay(5); P2=0xff; P0=duan[d]; P2=wei[3]; delay(5); P2=0xff; } uint read(uchar port) { uchar i,al=0,ah=0; unsigned long ad; clock=0; _cs=0; port<<=4; for(i=0;i<4;i++) { d_in=port&0x80; clock=1; clock=0; port<<=1; } d_in=0; for(i=0;i<8;i++) { clock=1; clock=0; } _cs=1; delay(5); _cs=0; for(i=0;i<4;i++) { clock=1; ah<<=1; if(d_out)ah|=0x01; clock=0; } for(i=0;i<8;i++) { clock=1; al<<=1; if(d_out) al|=0x01; clock=0; } _cs=1; ad=(uint)ah; ad<<=8; ad|=al; return(ad); } void main() { uchar j; sum=0;sum1=0; sum_final=0; sum_final1=0; while(1) { for(j=0;j<128;j++) { sum1+=read(1); display(a1,b1,c1,d1); } sum=sum1/128; sum1=0; sum_final1=(sum/4095)*5; sum_final=sum_final1*1000; a1=(int)sum_final/1000; b1=(int)sum_final%1000/100; c1=(int)sum_final%1000%100/10; d1=(int)sum_final%10; display(a1,b1,c1,d1); } }
上傳時(shí)間: 2013-11-19
上傳用戶:shen1230
微型計(jì)算機(jī)課程設(shè)計(jì)論文—通用微機(jī)發(fā)聲程序的匯編設(shè)計(jì) 本文講述了在微型計(jì)算機(jī)中利用可編程時(shí)間間隔定時(shí)器的通用發(fā)聲程序設(shè)計(jì),重點(diǎn)講述了程序的發(fā)聲原理,節(jié)拍的產(chǎn)生,按節(jié)拍改變的動(dòng)畫程序原理,并以設(shè)計(jì)一個(gè)簡(jiǎn)單的樂曲評(píng)分程序?yàn)橐樱治龀绦蛟O(shè)計(jì)的細(xì)節(jié)。關(guān)鍵字:微機(jī) 8253 通用發(fā)聲程序 動(dòng)畫技術(shù) 直接寫屏 1. 可編程時(shí)間間隔定時(shí)器8253在通用個(gè)人計(jì)算機(jī)中,有一個(gè)可編程時(shí)間間隔定時(shí)器8253,它能夠根據(jù)程序提供的計(jì)數(shù)值和工作方式,產(chǎn)生各種形狀和各種頻率的計(jì)數(shù)/定時(shí)脈沖,提供給系統(tǒng)各個(gè)部件使用。本設(shè)計(jì)是利用計(jì)算機(jī)控制發(fā)聲的原理,編寫演奏樂曲的程序。 在8253/54定時(shí)器內(nèi)部有3個(gè)獨(dú)立工作的計(jì)數(shù)器:計(jì)數(shù)器0,計(jì)數(shù)器1和計(jì)數(shù)器2,每個(gè)計(jì)數(shù)器都分配有一個(gè)斷口地址,分別為40H,41H和42H.8253/54內(nèi)部還有一個(gè)公用的控制寄存器,端地址為43H.端口地址輸入到8253/54的CS,AL,A0端,分別對(duì)3個(gè)計(jì)數(shù)器和控制器尋址. 對(duì)8353/54編程時(shí),先要設(shè)定控制字,以選擇計(jì)數(shù)器,確定工作方式和計(jì)數(shù)值的格式.每計(jì)數(shù)器由三個(gè)引腳與外部聯(lián)系,見教材第320頁(yè)圖9-1.CLK為時(shí)鐘輸入端,GATE為門控信號(hào)輸入端,OUT為計(jì)數(shù)/定時(shí)信號(hào)輸入端.每個(gè)計(jì)數(shù)器中包含一個(gè)16位計(jì)數(shù)寄存器,這個(gè)計(jì)數(shù)器時(shí)以倒計(jì)數(shù)的方式計(jì)數(shù)的,也就是說,從計(jì)數(shù)初值逐次減1,直到減為0為止. 8253/54的三個(gè)計(jì)數(shù)器是分別編程的,在對(duì)任一個(gè)計(jì)數(shù)器編程時(shí),必須首先講控制字節(jié)寫入控制寄存器.控制字的作用是告訴8253/54選擇哪個(gè)計(jì)數(shù)器工作,要求輸出什么樣的脈沖波形.另外,對(duì)8253/54的初始化工作還包括,向選定的計(jì)數(shù)器輸入一個(gè)計(jì)數(shù)初值,因?yàn)檫@個(gè)計(jì)數(shù)值可以是8為的,也可以是16為的,而8253/5的數(shù)據(jù)總線是8位的,所以要用兩條輸出指令來寫入初值.下面給出8253/54初始化程序段的一個(gè)例子,將計(jì)數(shù)器2設(shè)定為方式3,(關(guān)于計(jì)數(shù)器的工作方式參閱教材第325—330頁(yè))計(jì)數(shù)初值為65536. MOV AL,10110110B ;選擇計(jì)數(shù)器2,按方式3工作,計(jì)數(shù)值是二進(jìn)制格式 OUT 43H,AL ; j將控制字送入控制寄存器 MOV AL,0 ;計(jì)數(shù)初值為0 OUT 42H,AL ;將計(jì)數(shù)初值的低字節(jié)送入計(jì)數(shù)器2 OUT 42H,AL ;將計(jì)數(shù)初值的高字節(jié)送入計(jì)數(shù)器2 在IBM PC中8253/54的三個(gè)時(shí)鐘端CLK0,CLK1和CLK2的輸入頻率都是1.1931817MHZ. PC機(jī)上的大多數(shù)I/O都是由主板上的8255(或8255A)可編程序外圍接口芯片(PPI)管理的.關(guān)于8255A的結(jié)構(gòu)和工作原理及應(yīng)用舉例參閱教材第340—373頁(yè).教材第364頁(yè)的”PC/XT機(jī)中的揚(yáng)聲器接口電路”一節(jié)介紹了揚(yáng)聲器的驅(qū)動(dòng)原理,并給出了通用發(fā)聲程序.本設(shè)計(jì)正是基于這個(gè)原理,通過編程,控制加到揚(yáng)聲器上的信號(hào)的頻率,奏出樂曲的.2.發(fā)聲程序的設(shè)計(jì)下面是能產(chǎn)生頻率為f的通用發(fā)聲程序:MOV AL, 10110110B ;8253控制字:通道2,先寫低字節(jié),后寫高字節(jié) ;方式3,二進(jìn)制計(jì)數(shù)OUT 43H, AL ;寫入控制字MOV DX, 0012H ;被除數(shù)高位MOV AX, 35DEH ;被除數(shù)低位 DIV ID ;求計(jì)數(shù)初值n,結(jié)果在AX中OUT 42H, AL ;送出低8位MOV AL, AHOUT 42H,AL ;送出高8位IN AL, 61H ;讀入8255A端口B的內(nèi)容MOV AH, AL ;保護(hù)B口的原狀態(tài)OR AL, 03H ;使B口后兩位置1,其余位保留OUT 61H,AL ;接通揚(yáng)聲器,使它發(fā)聲
標(biāo)簽: 微型計(jì)算機(jī) 發(fā)聲程序 論文 微機(jī)
上傳時(shí)間: 2013-10-17
上傳用戶:sunjet
九.輸入/輸出保護(hù)為了支持多任務(wù),80386不僅要有效地實(shí)現(xiàn)任務(wù)隔離,而且還要有效地控制各任務(wù)的輸入/輸出,避免輸入/輸出沖突。本文將介紹輸入輸出保護(hù)。 這里下載本文源代碼。 <一>輸入/輸出保護(hù)80386采用I/O特權(quán)級(jí)IPOL和I/O許可位圖的方法來控制輸入/輸出,實(shí)現(xiàn)輸入/輸出保護(hù)。 1.I/O敏感指令輸入輸出特權(quán)級(jí)(I/O Privilege Level)規(guī)定了可以執(zhí)行所有與I/O相關(guān)的指令和訪問I/O空間中所有地址的最外層特權(quán)級(jí)。IOPL的值在如下圖所示的標(biāo)志寄存器中。 標(biāo) 志寄存器 BIT31—BIT18 BIT17 BIT16 BIT15 BIT14 BIT13—BIT12 BIT11 BIT10 BIT9 BIT8 BIT7 BIT6 BIT5 BIT4 BIT3 BIT2 BIT1 BIT0 00000000000000 VM RF 0 NT IOPL OF DF IF TF SF ZF 0 AF 0 PF 1 CF I/O許可位圖規(guī)定了I/O空間中的哪些地址可以由在任何特權(quán)級(jí)執(zhí)行的程序所訪問。I/O許可位圖在任務(wù)狀態(tài)段TSS中。 I/O敏感指令 指令 功能 保護(hù)方式下的執(zhí)行條件 CLI 清除EFLAGS中的IF位 CPL<=IOPL STI 設(shè)置EFLAGS中的IF位 CPL<=IOPL IN 從I/O地址讀出數(shù)據(jù) CPL<=IOPL或I/O位圖許可 INS 從I/O地址讀出字符串 CPL<=IOPL或I/O位圖許可 OUT 向I/O地址寫數(shù)據(jù) CPL<=IOPL或I/O位圖許可 OUTS 向I/O地址寫字符串 CPL<=IOPL或I/O位圖許可 上表所列指令稱為I/O敏感指令,由于這些指令與I/O有關(guān),并且只有在滿足所列條件時(shí)才可以執(zhí)行,所以把它們稱為I/O敏感指令。從表中可見,當(dāng)前特權(quán)級(jí)不在I/O特權(quán)級(jí)外層時(shí),可以正常執(zhí)行所列的全部I/O敏感指令;當(dāng)特權(quán)級(jí)在I/O特權(quán)級(jí)外層時(shí),執(zhí)行CLI和STI指令將引起通用保護(hù)異常,而其它四條指令是否能夠被執(zhí)行要根據(jù)訪問的I/O地址及I/O許可位圖情況而定(在下面論述),如果條件不滿足而執(zhí)行,那么將引起出錯(cuò)碼為0的通用保護(hù)異常。 由于每個(gè)任務(wù)使用各自的EFLAGS值和擁有自己的TSS,所以每個(gè)任務(wù)可以有不同的IOPL,并且可以定義不同的I/O許可位圖。注意,這些I/O敏感指令在實(shí)模式下總是可執(zhí)行的。 2.I/O許可位圖如果只用IOPL限制I/O指令的執(zhí)行是很不方便的,不能滿足實(shí)際要求需要。因?yàn)檫@樣做會(huì)使得在特權(quán)級(jí)3執(zhí)行的應(yīng)用程序要么可訪問所有I/O地址,要么不可訪問所有I/O地址。實(shí)際需要與此剛好相反,只允許任務(wù)甲的應(yīng)用程序訪問部分I/O地址,只允許任務(wù)乙的應(yīng)用程序訪問另一部分I/O地址,以避免任務(wù)甲和任務(wù)乙在訪問I/O地址時(shí)發(fā)生沖突,從而避免任務(wù)甲和任務(wù)乙使用使用獨(dú)享設(shè)備時(shí)發(fā)生沖突。 因此,在IOPL的基礎(chǔ)上又采用了I/O許可位圖。I/O許可位圖由二進(jìn)制位串組成。位串中的每一位依次對(duì)應(yīng)一個(gè)I/O地址,位串的第0位對(duì)應(yīng)I/O地址0,位串的第n位對(duì)應(yīng)I/O地址n。如果位串中的第位為0,那么對(duì)應(yīng)的I/O地址m可以由在任何特權(quán)級(jí)執(zhí)行的程序訪問;否則對(duì)應(yīng)的I/O地址m只能由在IOPL特權(quán)級(jí)或更內(nèi)層特權(quán)級(jí)執(zhí)行的程序訪問。如果在I/O外層特權(quán)級(jí)執(zhí)行的程序訪問位串中位值為1的位所對(duì)應(yīng)的I/O地址,那么將引起通用保護(hù)異常。 I/O地址空間按字節(jié)進(jìn)行編址。一條I/O指令最多可涉及四個(gè)I/O地址。在需要根據(jù)I/O位圖決定是否可訪問I/O地址的情況下,當(dāng)一條I/O指令涉及多個(gè)I/O地址時(shí),只有這多個(gè)I/O地址所對(duì)應(yīng)的I/O許可位圖中的位都為0時(shí),該I/O指令才能被正常執(zhí)行,如果對(duì)應(yīng)位中任一位為1,就會(huì)引起通用保護(hù)異常。 80386支持的I/O地址空間大小是64K,所以構(gòu)成I/O許可位圖的二進(jìn)制位串最大長(zhǎng)度是64K個(gè)位,即位圖的有效部分最大為8K字節(jié)。一個(gè)任務(wù)實(shí)際需要使用的I/O許可位圖大小通常要遠(yuǎn)小于這個(gè)數(shù)目。 當(dāng)前任務(wù)使用的I/O許可位圖存儲(chǔ)在當(dāng)前任務(wù)TSS中低端的64K字節(jié)內(nèi)。I/O許可位圖總以字節(jié)為單位存儲(chǔ),所以位串所含的位數(shù)總被認(rèn)為是8的倍數(shù)。從前文中所述的TSS格式可見,TSS內(nèi)偏移66H的字確定I/O許可位圖的開始偏移。由于I/O許可位圖最長(zhǎng)可達(dá)8K字節(jié),所以開始偏移應(yīng)小于56K,但必須大于等于104,因?yàn)門SS中前104字節(jié)為TSS的固定格式,用于保存任務(wù)的狀態(tài)。 1.I/O訪問許可檢查細(xì)節(jié)保護(hù)模式下處理器在執(zhí)行I/O指令時(shí)進(jìn)行許可檢查的細(xì)節(jié)如下所示。 (1)若CPL<=IOPL,則直接轉(zhuǎn)步驟(8);(2)取得I/O位圖開始偏移;(3)計(jì)算I/O地址對(duì)應(yīng)位所在字節(jié)在I/O許可位圖內(nèi)的偏移;(4)計(jì)算位偏移以形成屏蔽碼值,即計(jì)算I/O地址對(duì)應(yīng)位在字節(jié)中的第幾位;(5)把字節(jié)偏移加上位圖開始偏移,再加1,所得值與TSS界限比較,若越界,則產(chǎn)生出錯(cuò)碼為0的通用保護(hù)故障;(6)若不越界,則從位圖中讀對(duì)應(yīng)字節(jié)及下一個(gè)字節(jié);(7)把讀出的兩個(gè)字節(jié)與屏蔽碼進(jìn)行與運(yùn)算,若結(jié)果不為0表示檢查未通過,則產(chǎn)生出錯(cuò)碼為0的通用保護(hù)故障;(8)進(jìn)行I/O訪問。設(shè)某一任務(wù)的TSS段如下: TSSSEG SEGMENT PARA USE16 TSS <> ;TSS低端固定格式部分 DB 8 DUP(0) ;對(duì)應(yīng)I/O端口00H—3FH DB 10000000B ;對(duì)應(yīng)I/O端口40H—47H DB 01100000B ;對(duì)用I/O端口48H—4FH DB 8182 DUP(0ffH) ;對(duì)應(yīng)I/O端口50H—0FFFFH DB 0FFH ;位圖結(jié)束字節(jié)TSSLen = $TSSSEG ENDS 再假設(shè)IOPL=1,CPL=3。那么如下I/O指令有些能正常執(zhí)行,有些會(huì)引起通用保護(hù)異常: in al,21h ;(1)正常執(zhí)行 in al,47h ;(2)引起異常 out 20h,al ;(3)正常實(shí)行 out 4eh,al ;(4)引起異常 in al,20h ;(5)正常執(zhí)行 out 20h,eax ;(6)正常執(zhí)行 out 4ch,ax ;(7)引起異常 in ax,46h ;(8)引起異常 in eax,42h ;(9)正常執(zhí)行 由上述I/O許可檢查的細(xì)節(jié)可見,不論是否必要,當(dāng)進(jìn)行許可位檢查時(shí),80386總是從I/O許可位圖中讀取兩個(gè)字節(jié)。目的是為了盡快地執(zhí)行I/O許可檢查。一方面,常常要讀取I/O許可位圖的兩個(gè)字節(jié)。例如,上面的第(8)條指令要對(duì)I/O位圖中的兩個(gè)位進(jìn)行檢查,其低位是某個(gè)字節(jié)的最高位,高位是下一個(gè)字節(jié)的最低位。可見即使只要檢查兩個(gè)位,也可能需要讀取兩個(gè)字節(jié)。另一方面,最多檢查四個(gè)連續(xù)的位,即最多也只需讀取兩個(gè)字節(jié)。所以每次要讀取兩個(gè)字節(jié)。這也是在判別是否越界時(shí)再加1的原因。為此,為了避免在讀取I/O許可位圖的最高字節(jié)時(shí)產(chǎn)生越界,必須在I/O許可位圖的最后填加一個(gè)全1的字節(jié),即0FFH。此全1的字節(jié)應(yīng)填加在最后一個(gè)位圖字節(jié)之后,TSS界限范圍之前,即讓填加的全1字節(jié)在TSS界限之內(nèi)。 I/O許可位圖開始偏移加8K所得的值與TSS界限值二者中較小的值決定I/O許可位圖的末端。當(dāng)TSS的界限大于I/O許可位圖開始偏移加8K時(shí),I/O許可位圖的有效部分就有8K字節(jié),I/O許可檢查全部根據(jù)全部根據(jù)該位圖進(jìn)行。當(dāng)TSS的界限不大于I/O許可位圖開始偏移加8K時(shí),I/O許可位圖有效部分就不到8K字節(jié),于是對(duì)較小I/O地址訪問的許可檢查根據(jù)位圖進(jìn)行,而對(duì)較大I/O地址訪問的許可檢查總被認(rèn)為不可訪問而引起通用保護(hù)故障。因?yàn)檫@時(shí)會(huì)發(fā)生字節(jié)越界而引起通用保護(hù)異常,所以在這種情況下,可認(rèn)為不足的I/O許可位圖的高端部分全為1。利用這個(gè)特點(diǎn),可大大節(jié)約TSS中I/O許可位圖占用的存儲(chǔ)單元,也就大大減小了TSS段的長(zhǎng)度。 <二>重要標(biāo)志保護(hù)輸入輸出的保護(hù)與存儲(chǔ)在標(biāo)志寄存器EFLAGS中的IOPL密切相關(guān),顯然不能允許隨便地改變IOPL,否則就不能有效地實(shí)現(xiàn)輸入輸出保護(hù)。類似地,對(duì)EFLAGS中的IF位也必須加以保護(hù),否則CLI和STI作為敏感指令對(duì)待是無(wú)意義的。此外,EFLAGS中的VM位決定著處理器是否按虛擬8086方式工作。 80386對(duì)EFLAGS中的這三個(gè)字段的處理比較特殊,只有在較高特權(quán)級(jí)執(zhí)行的程序才能執(zhí)行IRET、POPF、CLI和STI等指令改變它們。下表列出了不同特權(quán)級(jí)下對(duì)這三個(gè)字段的處理情況。 不同特權(quán)級(jí)對(duì)標(biāo)志寄存器特殊字段的處理 特權(quán)級(jí) VM標(biāo)志字段 IOPL標(biāo)志字段 IF標(biāo)志字段 CPL=0 可變(初POPF指令外) 可變 可變 0 不變 不變 可變 CPL>IOPL 不變 不變 不變 從表中可見,只有在特權(quán)級(jí)0執(zhí)行的程序才可以修改IOPL位及VM位;只能由相對(duì)于IOPL同級(jí)或更內(nèi)層特權(quán)級(jí)執(zhí)行的程序才可以修改IF位。與CLI和STI指令不同,在特權(quán)級(jí)不滿足上述條件的情況下,當(dāng)執(zhí)行POPF指令和IRET指令時(shí),如果試圖修改這些字段中的任何一個(gè)字段,并不引起異常,但試圖要修改的字段也未被修改,也不給出任何特別的信息。此外,指令POPF總不能改變VM位,而PUSHF指令所壓入的標(biāo)志中的VM位總為0。 <三>演示輸入輸出保護(hù)的實(shí)例(實(shí)例九)下面給出一個(gè)用于演示輸入輸出保護(hù)的實(shí)例。演示內(nèi)容包括:I/O許可位圖的作用、I/O敏感指令引起的異常和特權(quán)指令引起的異常;使用段間調(diào)用指令CALL通過任務(wù)門調(diào)用任務(wù),實(shí)現(xiàn)任務(wù)嵌套。 1.演示步驟實(shí)例演示的內(nèi)容比較豐富,具體演示步驟如下:(1)在實(shí)模式下做必要準(zhǔn)備后,切換到保護(hù)模式;(2)進(jìn)入保護(hù)模式的臨時(shí)代碼段后,把演示任務(wù)的TSS段描述符裝入TR,并設(shè)置演示任務(wù)的堆棧;(3)進(jìn)入演示代碼段,演示代碼段的特權(quán)級(jí)是0;(4)通過任務(wù)門調(diào)用測(cè)試任務(wù)1。測(cè)試任務(wù)1能夠順利進(jìn)行;(5)通過任務(wù)門調(diào)用測(cè)試任務(wù)2。測(cè)試任務(wù)2演示由于違反I/O許可位圖規(guī)定而導(dǎo)致通用保護(hù)異常;(6)通過任務(wù)門調(diào)用測(cè)試任務(wù)3。測(cè)試任務(wù)3演示I/O敏感指令如何引起通用保護(hù)異常;(7)通過任務(wù)門調(diào)用測(cè)試任務(wù)4。測(cè)試任務(wù)4演示特權(quán)指令如何引起通用保護(hù)異常;(8)從演示代碼轉(zhuǎn)臨時(shí)代碼,準(zhǔn)備返回實(shí)模式;(9)返回實(shí)模式,并作結(jié)束處理。
上傳時(shí)間: 2013-12-11
上傳用戶:nunnzhy
蟲蟲下載站版權(quán)所有 京ICP備2021023401號(hào)-1