微型計(jì)算機(jī)課程設(shè)計(jì)論文—通用微機(jī)發(fā)聲程序的匯編設(shè)計(jì) 本文講述了在微型計(jì)算機(jī)中利用可編程時間間隔定時器的通用發(fā)聲程序設(shè)計(jì),重點(diǎn)講述了程序的發(fā)聲原理,節(jié)拍的產(chǎn)生,按節(jié)拍改變的動畫程序原理,并以設(shè)計(jì)一個簡單的樂曲評分程序?yàn)橐樱治龀绦蛟O(shè)計(jì)的細(xì)節(jié)。關(guān)鍵字:微機(jī) 8253 通用發(fā)聲程序 動畫技術(shù) 直接寫屏 1. 可編程時間間隔定時器8253在通用個人計(jì)算機(jī)中,有一個可編程時間間隔定時器8253,它能夠根據(jù)程序提供的計(jì)數(shù)值和工作方式,產(chǎn)生各種形狀和各種頻率的計(jì)數(shù)/定時脈沖,提供給系統(tǒng)各個部件使用。本設(shè)計(jì)是利用計(jì)算機(jī)控制發(fā)聲的原理,編寫演奏樂曲的程序。 在8253/54定時器內(nèi)部有3個獨(dú)立工作的計(jì)數(shù)器:計(jì)數(shù)器0,計(jì)數(shù)器1和計(jì)數(shù)器2,每個計(jì)數(shù)器都分配有一個斷口地址,分別為40H,41H和42H.8253/54內(nèi)部還有一個公用的控制寄存器,端地址為43H.端口地址輸入到8253/54的CS,AL,A0端,分別對3個計(jì)數(shù)器和控制器尋址. 對8353/54編程時,先要設(shè)定控制字,以選擇計(jì)數(shù)器,確定工作方式和計(jì)數(shù)值的格式.每計(jì)數(shù)器由三個引腳與外部聯(lián)系,見教材第320頁圖9-1.CLK為時鐘輸入端,GATE為門控信號輸入端,OUT為計(jì)數(shù)/定時信號輸入端.每個計(jì)數(shù)器中包含一個16位計(jì)數(shù)寄存器,這個計(jì)數(shù)器時以倒計(jì)數(shù)的方式計(jì)數(shù)的,也就是說,從計(jì)數(shù)初值逐次減1,直到減為0為止. 8253/54的三個計(jì)數(shù)器是分別編程的,在對任一個計(jì)數(shù)器編程時,必須首先講控制字節(jié)寫入控制寄存器.控制字的作用是告訴8253/54選擇哪個計(jì)數(shù)器工作,要求輸出什么樣的脈沖波形.另外,對8253/54的初始化工作還包括,向選定的計(jì)數(shù)器輸入一個計(jì)數(shù)初值,因?yàn)檫@個計(jì)數(shù)值可以是8為的,也可以是16為的,而8253/5的數(shù)據(jù)總線是8位的,所以要用兩條輸出指令來寫入初值.下面給出8253/54初始化程序段的一個例子,將計(jì)數(shù)器2設(shè)定為方式3,(關(guān)于計(jì)數(shù)器的工作方式參閱教材第325—330頁)計(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的三個時鐘端CLK0,CLK1和CLK2的輸入頻率都是1.1931817MHZ. PC機(jī)上的大多數(shù)I/O都是由主板上的8255(或8255A)可編程序外圍接口芯片(PPI)管理的.關(guān)于8255A的結(jié)構(gòu)和工作原理及應(yīng)用舉例參閱教材第340—373頁.教材第364頁的”PC/XT機(jī)中的揚(yáng)聲器接口電路”一節(jié)介紹了揚(yáng)聲器的驅(qū)動原理,并給出了通用發(fā)聲程序.本設(shè)計(jì)正是基于這個原理,通過編程,控制加到揚(yáng)聲器上的信號的頻率,奏出樂曲的.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ī)
上傳時間: 2013-10-17
上傳用戶:sunjet
計(jì)算機(jī)部件要具有通用性,適應(yīng)不同系統(tǒng)與不同用戶的需求,設(shè)計(jì)必須模塊化。計(jì)算機(jī)部件產(chǎn)品(模塊)供應(yīng)出現(xiàn)多元化。模塊之間的聯(lián)接關(guān)系要標(biāo)準(zhǔn)化,使模塊具有通用性。模塊設(shè)計(jì)必須基于一種大多數(shù)廠商認(rèn)可的模塊聯(lián)接關(guān)系,即一種總線標(biāo)準(zhǔn)。總線的標(biāo)準(zhǔn)總線是一類信號線的集合是模塊間傳輸信息的公共通道,通過它,計(jì)算機(jī)各部件間可進(jìn)行各種數(shù)據(jù)和命令的傳送。為使不同供應(yīng)商的產(chǎn)品間能夠互換,給用戶更多的選擇,總線的技術(shù)規(guī)范要標(biāo)準(zhǔn)化。總線的標(biāo)準(zhǔn)制定要經(jīng)周密考慮,要有嚴(yán)格的規(guī)定。總線標(biāo)準(zhǔn)(技術(shù)規(guī)范)包括以下幾部分:機(jī)械結(jié)構(gòu)規(guī)范:模塊尺寸、總線插頭、總線接插件以及按裝尺寸均有統(tǒng)一規(guī)定。功能規(guī)范:總線每條信號線(引腳的名稱)、功能以及工作過程要有統(tǒng)一規(guī)定。電氣規(guī)范:總線每條信號線的有效電平、動態(tài)轉(zhuǎn)換時間、負(fù)載能力等。總線的發(fā)展情況S-100總線:產(chǎn)生于1975年,第一個標(biāo)準(zhǔn)化總線,為微計(jì)算機(jī)技術(shù)發(fā)展起到了推動作用。IBM-PC個人計(jì)算機(jī)采用總線結(jié)構(gòu)(Industry Standard Architecture, ISA)并成為工業(yè)化的標(biāo)準(zhǔn)。先后出現(xiàn)8位ISA總線、16位ISA總線以及后來兼容廠商推出的EISA(Extended ISA)32位ISA總線。為了適應(yīng)微處理器性能的提高及I/O模塊更高吞吐率的要求,出現(xiàn)了VL-Bus(VESA Local Bus)和PCI(Peripheral Component Interconnect,PCI)總線。適合小型化要求的PCMCIA(Personal Computer Memory Card International Association)總線,用于筆記本計(jì)算機(jī)的功能擴(kuò)展。總線的指標(biāo)計(jì)算機(jī)主機(jī)性能迅速提高,各功能模塊性能也要相應(yīng)提高,這對總線性能提出更高的要求。總線主要技術(shù)指標(biāo)有幾方面:總線寬度:一次操作可以傳輸?shù)臄?shù)據(jù)位數(shù),如S100為8位,ISA為16位,EISA為32位,PCI-2可達(dá)64位。總線寬度不會超過微處理器外部數(shù)據(jù)總線的寬度。總數(shù)工作頻率:總線信號中有一個CLK時鐘,CLK越高每秒鐘傳輸?shù)臄?shù)據(jù)量越大。ISA、EISA為8MHz,PCI為33.3MHz, PCI-2可達(dá)達(dá)66.6MHz。單個數(shù)據(jù)傳輸周期:不同的傳輸方式,每個數(shù)據(jù)傳輸所用CLK周期數(shù)不同。ISA要2個,PCI用1個CLK周期。這決定總線最高數(shù)據(jù)傳輸率。5. 總線的分類與層次系統(tǒng)總線:是微處理器芯片對外引線信號的延伸或映射,是微處理器與片外存儲器及I/0接口傳輸信息的通路。系統(tǒng)總線信號按功能可分為三類:地址總線(Where):指出數(shù)據(jù)的來源與去向。地址總線的位數(shù)決定了存儲空間的大小。系統(tǒng)總線:數(shù)據(jù)總線(What)提供模塊間傳輸數(shù)據(jù)的路徑,數(shù)據(jù)總線的位數(shù)決定微處理器結(jié)構(gòu)的復(fù)雜度及總體性能。控制總線(When):提供系統(tǒng)操作所必需的控制信號,對操作過程進(jìn)行控制與定時。擴(kuò)充總線:亦稱設(shè)備總線,用于系統(tǒng)I/O擴(kuò)充。與系統(tǒng)總線工作頻率不同,經(jīng)接口電路對系統(tǒng)總統(tǒng)信號緩沖、變換、隔離,進(jìn)行不同層次的操作(ISA、EISA、MCA)局部總線:擴(kuò)充總線不能滿足高性能設(shè)備(圖形、視頻、網(wǎng)絡(luò))接口的要求,在系統(tǒng)總線與擴(kuò)充總線之間插入一層總線。由于它經(jīng)橋接器與系統(tǒng)總線直接相連,因此稱之為局部總線(PCI)。
標(biāo)簽: 微型計(jì)算機(jī) 總線
上傳時間: 2013-11-09
上傳用戶:nshark
C51單片機(jī)是我們生活中最常用的系列,MCS-51系列單片機(jī)有4個并行口(P0,P1,P2,P3口),但對一個稍微復(fù)雜的應(yīng)用系統(tǒng)來說,真正可供用戶使用的并行口,只有P1口可用,況且常常因擴(kuò)展I2C和SPI的器件需占用某些P1口,迫使用戶不得不擴(kuò)展并行口以滿足實(shí)際的需要。習(xí)慣上,常用的并行口接口芯片有8255、8155,這兩種芯片功能比較齊全,可以使用在相對比較復(fù)雜的系統(tǒng)中,但如是對一般的系統(tǒng)而言,這些功能往往閑置不用。那么就可以選用一些本來閑置不用的口線作為選通信號來進(jìn)行并行口的擴(kuò)展,這樣就能充分利用單片機(jī)有限的I/O資源,在本設(shè)計(jì)中是將P1口擴(kuò)展成一個或幾個8位并行口,在每一個八位口上接入8個發(fā)光二極管做為輸出,二極管是做開關(guān)量來使用的,在這里設(shè)計(jì)了跑馬燈和流水燈程序,做到對開關(guān)量的開斷控制;配合開關(guān)量的控制筆者設(shè)計(jì)了一個共陽LED數(shù)碼管,用來顯示當(dāng)前發(fā)光二極管發(fā)亮的序號,做到更加直觀的雙重控制效果,然后再將P0口通過D/A轉(zhuǎn)換器和一放大器輸出一個模擬信號,其結(jié)果可以通過示波器看出。這樣整個系統(tǒng)即有了數(shù)字信號輸出和模擬信號輸出,也有數(shù)碼管顯示功能,實(shí)用性能大提高了。2、 基于89C51的系統(tǒng)硬件設(shè)計(jì)2.1 并行口的擴(kuò)展的電路設(shè)計(jì) 眾所周知,C51系列的單片機(jī)都有四個I/O口(P0、P1、P2、P3),那么AT89C51也不例外,但我們通常僅僅使用P1口作為并行口,而令其余口(P2、P3)處于閑置狀態(tài),所以這次設(shè)計(jì),我們就是使用閑置不用的P3口做為選能信號線來將P1口進(jìn)行并行口擴(kuò)展。 (1) 種方式的并行口擴(kuò)展優(yōu)點(diǎn) 連線簡單; 不占用存儲器空間; (2) 編程也方便靈活。但也有很大的缺點(diǎn) 并行口擴(kuò)展能力有限,(如使用74LS573(74LS373)且不進(jìn)行驅(qū)動處理,則最多可擴(kuò)展4個同樣類型的并行輸出端口,當(dāng)然還需要與之對應(yīng)的四個選通信號。) 如擴(kuò)展較多,選通信號占用并行口位數(shù)太多,例如欲擴(kuò)展8個并行輸出端口,則需要8個選能信號,此時,僅選能信號就占用了一個8位并行口,這對在I/O端口線有限的單片機(jī)系統(tǒng)中,如此浪費(fèi)資源的現(xiàn)象是不能容忍的。在本次的設(shè)計(jì)中,采用芯片74HC573(帶三態(tài)輸出的八進(jìn)制透明D型鎖存器)對P1口進(jìn)行了一個8位并行口的擴(kuò)展,選通信號選用P3口的P3.3引腳。原理圖如圖1所示:
標(biāo)簽: C51 單片機(jī) 并行口 擴(kuò)展設(shè)計(jì)
上傳時間: 2013-11-18
上傳用戶:dbs012280
九.輸入/輸出保護(hù)為了支持多任務(wù),80386不僅要有效地實(shí)現(xiàn)任務(wù)隔離,而且還要有效地控制各任務(wù)的輸入/輸出,避免輸入/輸出沖突。本文將介紹輸入輸出保護(hù)。 這里下載本文源代碼。 <一>輸入/輸出保護(hù)80386采用I/O特權(quán)級IPOL和I/O許可位圖的方法來控制輸入/輸出,實(shí)現(xiàn)輸入/輸出保護(hù)。 1.I/O敏感指令輸入輸出特權(quán)級(I/O Privilege Level)規(guī)定了可以執(zhí)行所有與I/O相關(guān)的指令和訪問I/O空間中所有地址的最外層特權(quán)級。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)級執(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),并且只有在滿足所列條件時才可以執(zhí)行,所以把它們稱為I/O敏感指令。從表中可見,當(dāng)前特權(quán)級不在I/O特權(quán)級外層時,可以正常執(zhí)行所列的全部I/O敏感指令;當(dāng)特權(quán)級在I/O特權(quán)級外層時,執(zhí)行CLI和STI指令將引起通用保護(hù)異常,而其它四條指令是否能夠被執(zhí)行要根據(jù)訪問的I/O地址及I/O許可位圖情況而定(在下面論述),如果條件不滿足而執(zhí)行,那么將引起出錯碼為0的通用保護(hù)異常。 由于每個任務(wù)使用各自的EFLAGS值和擁有自己的TSS,所以每個任務(wù)可以有不同的IOPL,并且可以定義不同的I/O許可位圖。注意,這些I/O敏感指令在實(shí)模式下總是可執(zhí)行的。 2.I/O許可位圖如果只用IOPL限制I/O指令的執(zhí)行是很不方便的,不能滿足實(shí)際要求需要。因?yàn)檫@樣做會使得在特權(quán)級3執(zhí)行的應(yīng)用程序要么可訪問所有I/O地址,要么不可訪問所有I/O地址。實(shí)際需要與此剛好相反,只允許任務(wù)甲的應(yīng)用程序訪問部分I/O地址,只允許任務(wù)乙的應(yīng)用程序訪問另一部分I/O地址,以避免任務(wù)甲和任務(wù)乙在訪問I/O地址時發(fā)生沖突,從而避免任務(wù)甲和任務(wù)乙使用使用獨(dú)享設(shè)備時發(fā)生沖突。 因此,在IOPL的基礎(chǔ)上又采用了I/O許可位圖。I/O許可位圖由二進(jìn)制位串組成。位串中的每一位依次對應(yīng)一個I/O地址,位串的第0位對應(yīng)I/O地址0,位串的第n位對應(yīng)I/O地址n。如果位串中的第位為0,那么對應(yīng)的I/O地址m可以由在任何特權(quán)級執(zhí)行的程序訪問;否則對應(yīng)的I/O地址m只能由在IOPL特權(quán)級或更內(nèi)層特權(quán)級執(zhí)行的程序訪問。如果在I/O外層特權(quán)級執(zhí)行的程序訪問位串中位值為1的位所對應(yīng)的I/O地址,那么將引起通用保護(hù)異常。 I/O地址空間按字節(jié)進(jìn)行編址。一條I/O指令最多可涉及四個I/O地址。在需要根據(jù)I/O位圖決定是否可訪問I/O地址的情況下,當(dāng)一條I/O指令涉及多個I/O地址時,只有這多個I/O地址所對應(yīng)的I/O許可位圖中的位都為0時,該I/O指令才能被正常執(zhí)行,如果對應(yīng)位中任一位為1,就會引起通用保護(hù)異常。 80386支持的I/O地址空間大小是64K,所以構(gòu)成I/O許可位圖的二進(jìn)制位串最大長度是64K個位,即位圖的有效部分最大為8K字節(jié)。一個任務(wù)實(shí)際需要使用的I/O許可位圖大小通常要遠(yuǎn)小于這個數(shù)目。 當(dāng)前任務(wù)使用的I/O許可位圖存儲在當(dāng)前任務(wù)TSS中低端的64K字節(jié)內(nèi)。I/O許可位圖總以字節(jié)為單位存儲,所以位串所含的位數(shù)總被認(rèn)為是8的倍數(shù)。從前文中所述的TSS格式可見,TSS內(nèi)偏移66H的字確定I/O許可位圖的開始偏移。由于I/O許可位圖最長可達(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指令時進(jìn)行許可檢查的細(xì)節(jié)如下所示。 (1)若CPL<=IOPL,則直接轉(zhuǎn)步驟(8);(2)取得I/O位圖開始偏移;(3)計(jì)算I/O地址對應(yīng)位所在字節(jié)在I/O許可位圖內(nèi)的偏移;(4)計(jì)算位偏移以形成屏蔽碼值,即計(jì)算I/O地址對應(yīng)位在字節(jié)中的第幾位;(5)把字節(jié)偏移加上位圖開始偏移,再加1,所得值與TSS界限比較,若越界,則產(chǎn)生出錯碼為0的通用保護(hù)故障;(6)若不越界,則從位圖中讀對應(yīng)字節(jié)及下一個字節(jié);(7)把讀出的兩個字節(jié)與屏蔽碼進(jìn)行與運(yùn)算,若結(jié)果不為0表示檢查未通過,則產(chǎn)生出錯碼為0的通用保護(hù)故障;(8)進(jìn)行I/O訪問。設(shè)某一任務(wù)的TSS段如下: TSSSEG SEGMENT PARA USE16 TSS <> ;TSS低端固定格式部分 DB 8 DUP(0) ;對應(yīng)I/O端口00H—3FH DB 10000000B ;對應(yīng)I/O端口40H—47H DB 01100000B ;對用I/O端口48H—4FH DB 8182 DUP(0ffH) ;對應(yīng)I/O端口50H—0FFFFH DB 0FFH ;位圖結(jié)束字節(jié)TSSLen = $TSSSEG ENDS 再假設(shè)IOPL=1,CPL=3。那么如下I/O指令有些能正常執(zhí)行,有些會引起通用保護(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)行許可位檢查時,80386總是從I/O許可位圖中讀取兩個字節(jié)。目的是為了盡快地執(zhí)行I/O許可檢查。一方面,常常要讀取I/O許可位圖的兩個字節(jié)。例如,上面的第(8)條指令要對I/O位圖中的兩個位進(jìn)行檢查,其低位是某個字節(jié)的最高位,高位是下一個字節(jié)的最低位。可見即使只要檢查兩個位,也可能需要讀取兩個字節(jié)。另一方面,最多檢查四個連續(xù)的位,即最多也只需讀取兩個字節(jié)。所以每次要讀取兩個字節(jié)。這也是在判別是否越界時再加1的原因。為此,為了避免在讀取I/O許可位圖的最高字節(jié)時產(chǎn)生越界,必須在I/O許可位圖的最后填加一個全1的字節(jié),即0FFH。此全1的字節(jié)應(yīng)填加在最后一個位圖字節(jié)之后,TSS界限范圍之前,即讓填加的全1字節(jié)在TSS界限之內(nèi)。 I/O許可位圖開始偏移加8K所得的值與TSS界限值二者中較小的值決定I/O許可位圖的末端。當(dāng)TSS的界限大于I/O許可位圖開始偏移加8K時,I/O許可位圖的有效部分就有8K字節(jié),I/O許可檢查全部根據(jù)全部根據(jù)該位圖進(jìn)行。當(dāng)TSS的界限不大于I/O許可位圖開始偏移加8K時,I/O許可位圖有效部分就不到8K字節(jié),于是對較小I/O地址訪問的許可檢查根據(jù)位圖進(jìn)行,而對較大I/O地址訪問的許可檢查總被認(rèn)為不可訪問而引起通用保護(hù)故障。因?yàn)檫@時會發(fā)生字節(jié)越界而引起通用保護(hù)異常,所以在這種情況下,可認(rèn)為不足的I/O許可位圖的高端部分全為1。利用這個特點(diǎn),可大大節(jié)約TSS中I/O許可位圖占用的存儲單元,也就大大減小了TSS段的長度。 <二>重要標(biāo)志保護(hù)輸入輸出的保護(hù)與存儲在標(biāo)志寄存器EFLAGS中的IOPL密切相關(guān),顯然不能允許隨便地改變IOPL,否則就不能有效地實(shí)現(xiàn)輸入輸出保護(hù)。類似地,對EFLAGS中的IF位也必須加以保護(hù),否則CLI和STI作為敏感指令對待是無意義的。此外,EFLAGS中的VM位決定著處理器是否按虛擬8086方式工作。 80386對EFLAGS中的這三個字段的處理比較特殊,只有在較高特權(quán)級執(zhí)行的程序才能執(zhí)行IRET、POPF、CLI和STI等指令改變它們。下表列出了不同特權(quán)級下對這三個字段的處理情況。 不同特權(quán)級對標(biāo)志寄存器特殊字段的處理 特權(quán)級 VM標(biāo)志字段 IOPL標(biāo)志字段 IF標(biāo)志字段 CPL=0 可變(初POPF指令外) 可變 可變 0 不變 不變 可變 CPL>IOPL 不變 不變 不變 從表中可見,只有在特權(quán)級0執(zhí)行的程序才可以修改IOPL位及VM位;只能由相對于IOPL同級或更內(nèi)層特權(quán)級執(zhí)行的程序才可以修改IF位。與CLI和STI指令不同,在特權(quán)級不滿足上述條件的情況下,當(dāng)執(zhí)行POPF指令和IRET指令時,如果試圖修改這些字段中的任何一個字段,并不引起異常,但試圖要修改的字段也未被修改,也不給出任何特別的信息。此外,指令POPF總不能改變VM位,而PUSHF指令所壓入的標(biāo)志中的VM位總為0。 <三>演示輸入輸出保護(hù)的實(shí)例(實(shí)例九)下面給出一個用于演示輸入輸出保護(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ù)模式的臨時代碼段后,把演示任務(wù)的TSS段描述符裝入TR,并設(shè)置演示任務(wù)的堆棧;(3)進(jìn)入演示代碼段,演示代碼段的特權(quán)級是0;(4)通過任務(wù)門調(diào)用測試任務(wù)1。測試任務(wù)1能夠順利進(jìn)行;(5)通過任務(wù)門調(diào)用測試任務(wù)2。測試任務(wù)2演示由于違反I/O許可位圖規(guī)定而導(dǎo)致通用保護(hù)異常;(6)通過任務(wù)門調(diào)用測試任務(wù)3。測試任務(wù)3演示I/O敏感指令如何引起通用保護(hù)異常;(7)通過任務(wù)門調(diào)用測試任務(wù)4。測試任務(wù)4演示特權(quán)指令如何引起通用保護(hù)異常;(8)從演示代碼轉(zhuǎn)臨時代碼,準(zhǔn)備返回實(shí)模式;(9)返回實(shí)模式,并作結(jié)束處理。
上傳時間: 2013-12-11
上傳用戶:nunnzhy
基于單片機(jī)的汽車多功能報(bào)警系統(tǒng)設(shè)計(jì)The Design of Automobile Multi-function AlarmingBased on Single Chip Computer劉法治趙明富寧睡達(dá)(河 南 科 技 學(xué) 院 ,新 鄉(xiāng) 453 00 3)摘要介紹了一種基于單片機(jī)控制的汽車多功能報(bào)警系統(tǒng),它能對汽車的潤滑系統(tǒng)油壓、制動系統(tǒng)氣壓、冷卻系統(tǒng)溫度、輪胎欠壓及防盜進(jìn)行自動檢測,并在發(fā)現(xiàn)異常情況時,發(fā)出聲光報(bào)警。闡述了該報(bào)警系統(tǒng)的硬件組成及軟件設(shè)計(jì)方法。關(guān)鍵詞單片機(jī)傳感器數(shù)模轉(zhuǎn)換報(bào)警Abstract Am ulti-fimctiona utomobilea larnungs ystemb asedo ns inglec hipc omputerco ntorlis in torducedin th isp aper.Th eo ilpr essuero flu bricatesystem, air pressure of braking system, temperature of cooling system, under pressure of tyre and guard against theft, detected automaticaly場thesystem. Audio and visual alarms wil be provided under abnormal conditions廠The hardware composition and software design of the system, described.Keywords Singlec hipc omputer Sensor Digital-t-oanaloguec onversion Alarmin 汽車多功能報(bào)苦器硬件系統(tǒng)設(shè)計(jì)根據(jù) 系 統(tǒng) 實(shí)際需要和產(chǎn)品性價(jià)比,選用ATMEL公司新生產(chǎn)的采用CMOs工藝的低功耗、高性能8位單片機(jī)AT89S52作為系統(tǒng)的控制器。AT89S52的片內(nèi)有8k Bytes LSP Flash閃爍存儲器,可進(jìn)行100(〕次寫、擦除操作;256Bytes內(nèi)部數(shù)據(jù)存儲器(RAM);3 2 根可編程輸N輸出線;2個可編程全雙工串行通道;看門狗(WTD)電路等。系統(tǒng)由傳感器、單片機(jī)、模數(shù)轉(zhuǎn)換器、無線信號發(fā)射電路、指示燈驅(qū)動電路、聲光報(bào)警驅(qū)動電KD一9563,發(fā)出三聲二閃光。并觸發(fā)一個高電平,驅(qū)動無線信號發(fā)射電路。
標(biāo)簽: 單片機(jī) 汽車 多功能 報(bào)警
上傳時間: 2013-11-09
上傳用戶:gxmm
基于變頻調(diào)速的水平連鑄機(jī)拉坯輥速度控制系統(tǒng)Frequency Inverter Based Drawing RollerS peedC ontrolSy stem ofHorizontal Continuous Casting MachineA 偉劉沖旅巴(南 華 大 學(xué)電氣工程學(xué)院,衡陽421001)摘要拉坯輥速度控制是水平連鑄工藝的關(guān)鍵技術(shù)之一,采用變頻器實(shí)現(xiàn)水平連鑄機(jī)拉坯輥速度程序控制,由信號發(fā)生裝置給變頻器提供程控信號。現(xiàn)場應(yīng)用表明該控制系統(tǒng)速度響應(yīng)快,控制精度高,滿足了水平連鑄生產(chǎn)的需要。關(guān)鍵詞水平連鑄拉坯輥速度程序控制變頻器Absh'act Speedc ontorlof dr awingor leris on eo fth ek eyte chnologiesfo rho rizontalco ntinuousca stingm achine.Fo rth ispu rpose,fr equencyco nverterisad optedfo rdr awingor lersp eedp rogrammablec ontorlof ho rizontalco ntinuousca stingm achine,th ep rogrammableco ntorlsi gnalto fr equencyc onverteris provided場a signal generator. The results of application show that the response of system is rapid and the control accuracy is high enough to meet thedemand of production of horizontal continuous casting.Keywords Horizontalco ntinuousc asting Drawingor ler Speedp rogrammablec ontrol Ferquencyin verter 隨著 現(xiàn) 代 化工業(yè)生產(chǎn)對鋼材需求量的日益增加,連鑄生產(chǎn)能力已經(jīng)成為衡量一個國家冶金工業(yè)發(fā)展水平的重要指標(biāo)之一。近十幾年來,水平連鑄由于具有投資少、鑄坯直、見效快等多方面的優(yōu)點(diǎn),國內(nèi)許多鋼鐵企業(yè)利用水平連鑄機(jī)來澆鑄特種合金鋼,發(fā)揮了其獨(dú)特的優(yōu)勢并取得了較好的經(jīng)濟(jì)效益〔1,2)0采用 水 平 連鑄機(jī)澆鑄特種合金鋼時,由于拉坯機(jī)是水平連鑄系統(tǒng)中的關(guān)鍵設(shè)備之一,拉坯機(jī)及其控制性能的好壞直接影響著連鑄坯的質(zhì)量,因此,連鑄的拉坯技術(shù)便成為整個水平連鑄技術(shù)的核心。由于鋼的冶煉過程是在高溫下進(jìn)行的,鋼水溫度的變化又容易影響鑄坯的質(zhì)量和成材率,因此,如何能在高溫環(huán)境下控制好與鑄坯速度相關(guān)的參數(shù)(拉、推程量,中停時間和拉坯頻率等)對于確保連鑄作業(yè)的進(jìn)一步高效化,延長系統(tǒng)的連續(xù)作業(yè)時間十分關(guān)鍵。因此,拉坯輥速度控制技術(shù)是連鑄生產(chǎn)過程控制領(lǐng)域中的關(guān)鍵技術(shù)之- [31
標(biāo)簽: 變頻調(diào)速 水平連鑄機(jī) 速度控制
上傳時間: 2013-10-12
上傳用戶:gxy670166755
這是一本關(guān)于Intel 80C51 以及廣大的51 系列單片機(jī)的書這本書介紹給讀者一些新的技術(shù)使你的8051 工程和開發(fā)過程變得簡單請注意這本書的目的可不是教你各種8051 嵌入式系統(tǒng)的解決方法為使問題討論更加清晰在適當(dāng)?shù)牡胤浇o出了程序代碼我們以討論項(xiàng)目的方法來說明每章碰到的問題所有的代碼都可在附帶的光盤上找到你必須熟系C 和8051 匯編因?yàn)楸緯皇且槐綜 和匯編的指導(dǎo)書你可以買到不少關(guān)于ANSI C 的書最佳選擇當(dāng)然是Intel的數(shù)據(jù)書可從你的芯片供應(yīng)商處免費(fèi)索取和隨編譯工具附送的手冊附送光盤中有我為這本書編寫和收集的程序這些程序已經(jīng)通過測試這并不意味著你可以隨時把這些程序加到你的應(yīng)用系統(tǒng)或工程中有些地方必須首先經(jīng)過修改才能結(jié)合到你的程序中這本書將教你充分使用你的工具如果你只有8051 的匯編程序你也可以學(xué)習(xí)該書和使用這些例子但是你必須把C 語言的程序裝入你的匯編程序中這對懂得C 語言和8051匯編程序指令的人來說并不是一件困難的事如果你有C 編譯器的話那恭喜你使用C 語言進(jìn)行開發(fā)是一個好的決定你會發(fā)現(xiàn)使用C 進(jìn)行開發(fā)將使你的工程開發(fā)和維護(hù)的時間大大減少如果你已經(jīng)擁有Keil C51 那你已經(jīng)選擇了一個非常好的開發(fā)工具我發(fā)現(xiàn)Keil 軟件包能夠提供最好的支持本書支持Keil C 的擴(kuò)展如果你有其它的開發(fā)工具像Archimedes 和Avocet 這本書也能很好地為你服務(wù)但你必須根據(jù)你所用的開發(fā)工具改變一些Keil 的特殊指令在書的一些地方有硬件圖實(shí)例程序在這些硬件上運(yùn)行這些圖繪制地不是很詳細(xì)主要是方框圖但足以使讀者明白軟件和硬件之間的接口讀者應(yīng)該把這本書看成工具書而不是用來學(xué)習(xí)各種系統(tǒng)設(shè)計(jì)通過本書你可以了解給定一定的硬件和軟件設(shè)計(jì)之后8051 的各種性能希望你能從本書中獲取靈感并有助于你的設(shè)計(jì)使你豁然開朗當(dāng)然我希望你也能夠從本書中學(xué)到有用的知識使之能夠提升你的設(shè)計(jì) 8051 系列微處理器基于簡化的嵌入式控制系統(tǒng)結(jié)構(gòu)被廣泛應(yīng)用于從軍事到自動控制再到PC 機(jī)上的鍵盤上的各種應(yīng)用系統(tǒng)上僅次于Motorola 68HC11 在 8 位微控制器市場上的銷量很多制造商都可提供8051 系列單片機(jī)像Intel Philips Siemens 等這些制造商給51 系列單片機(jī)加入了大量的性能和外部功能像I2C 總線接口模擬量到數(shù)字量的轉(zhuǎn)換看門狗PWM 輸出等不少芯片的工作頻率達(dá)到40M 工作電壓下降到1.5V 基于一個內(nèi)核的這些功能使得8051 單片機(jī)很適合作為廠家產(chǎn)品的基本構(gòu)架它能夠運(yùn)行各種程序而且開發(fā)者只需要學(xué)習(xí)這一個平臺8051 系列的基本結(jié)構(gòu)如下1 一個8 位算術(shù)邏輯單元2 32 個I/O 口4 組8 位端口可單獨(dú)尋址3 兩個16 位定時計(jì)數(shù)器4 全雙工串行通信5 6 個中斷源兩個中斷優(yōu)先級6 128 字節(jié)內(nèi)置RAM7 獨(dú)立的64K 字節(jié)可尋址數(shù)據(jù)和代碼區(qū)每個8051 處理周期包括12 個振蕩周期每12 個振蕩周期用來完成一項(xiàng)操作如取指令和計(jì)算指令執(zhí)行時間可把時鐘頻率除以12 取倒數(shù)然后指令執(zhí)行所須的周期數(shù)因此如果你的系統(tǒng)時鐘是11.059MHz 除以12 后就得到了每秒執(zhí)行的指令個數(shù)為921583條指令取倒數(shù)將得到每條指令所須的時間1.085ms
上傳時間: 2013-11-09
上傳用戶:chenlong
在C8051F系列單片機(jī)中集成有多通道8位、10位、12位或16位的SAR型ADC,能夠滿足大多數(shù)數(shù)據(jù)采集的應(yīng)用需求;集成跟蹤和保持電路;集成模擬多路復(fù)用器(AMUX)。 采樣頻率從100ksps到1Msps。 片內(nèi)溫度傳感器可直接配置到ADC的輸入端。 C8051F04x系列集成可編程增益放大器(PGA)和高電壓差分放大器(HVDA),可接受60V的差動模擬電壓輸入。 集成越限檢測器,可監(jiān)視模擬量的變化范圍,越限能產(chǎn)生中斷。 C8051F06x系列集成DMA接口,提高對轉(zhuǎn)換結(jié)果的讀取效率。 ADC轉(zhuǎn)換啟動方式:軟件設(shè)置寄存器位啟動;定時器溢出啟動;外部管腳信號啟動。
標(biāo)簽: C8051F 單片機(jī)應(yīng)用
上傳時間: 2013-10-13
上傳用戶:jx_wwq
摘要: 本文介紹了L ED 顯示屏常規(guī)型驅(qū)動電路的設(shè)計(jì)方式及其存在的缺陷, 提出了簡單的L ED 顯示屏恒流驅(qū)動方式及電路的實(shí)現(xiàn)。關(guān)鍵詞:L ED 顯示屏 動態(tài)掃描 驅(qū)動電路中圖分類號: TN 873+ . 93 文獻(xiàn)標(biāo)識碼:A 文章編號: 1005- 9490(2001) 03- 0252- 051 引 言 L ED 顯示屏是80 年代后期在全球迅速發(fā)展起來的新型信息顯示媒體, 它利用發(fā)光二極管構(gòu)成的點(diǎn)陣模塊或像素單元, 組成大面積顯示屏幕, 以其可靠性高、使用壽命、環(huán)境適應(yīng)能力強(qiáng)、性能價(jià)格比高、使用成本低等特點(diǎn), 在信息顯示領(lǐng)域已經(jīng)得到了非常廣泛的應(yīng)用[ 1 ]。L ED 顯示屏主要包括發(fā)光二極管構(gòu)成的陣列、驅(qū)動電路、控制系統(tǒng)及傳輸接口和相應(yīng)的應(yīng)用軟件等, 其中驅(qū)動電路設(shè)計(jì)的好壞, 對L ED 顯示屏的顯示效果、制作成本及系統(tǒng)的運(yùn)行性能起著很重要的作用。所以, 設(shè)計(jì)一種既能滿足控制驅(qū)動的要求, 同時使用器件少、成本低的控制驅(qū)動電路是很有必要的。本文就常規(guī)型驅(qū)動電路的設(shè)計(jì)作些分析并提出恒流驅(qū)動電路的設(shè)計(jì)方式。2 L ED 顯示屏常規(guī)驅(qū)動電路的設(shè)計(jì) L ED 顯示屏驅(qū)動電路的設(shè)計(jì), 與所用控制系統(tǒng)相配合, 通常分為動態(tài)掃描型驅(qū)動及靜態(tài)鎖存型驅(qū)動二大類。以下就動態(tài)掃描型驅(qū)動電路的設(shè)計(jì)為例為進(jìn)行分析:動態(tài)掃描型驅(qū)動方式是指顯示屏上的4 行、8 行、16 行等n 行發(fā)光二極管共用一組列驅(qū)動寄存器, 通過行驅(qū)動管的分時工作, 使得每行L ED 的點(diǎn)亮?xí)r間占總時間的1ön , 只要每行的刷新速率大于50 Hz, 利用人眼的視覺暫留效應(yīng), 人們就可以看到一幅完整的文字或畫面[ 2 ]。常規(guī)型驅(qū)動電路的設(shè)計(jì)一般是用串入并出的通用集成電路芯片如74HC595 或MC14094 等作為列數(shù)據(jù)鎖存, 以8050 等小功率N PN 三極管為列驅(qū)動, 而以達(dá)林頓三極管如T IP127 等作為行掃描管, 其電路如圖1 所示。
標(biāo)簽: LED 顯示屏 恒流驅(qū)動 電路設(shè)計(jì)
上傳時間: 2014-02-19
上傳用戶:lingzhichao
載波相移正弦脈寬調(diào)制(SPWM)技術(shù)是一種適用于大功率電力開關(guān)變換裝置的高性能開關(guān)調(diào)制策略,在有源電力濾波器中有良好的應(yīng)用前景。本文介紹了如何利用高性能數(shù)字信號處理器TMS320F28335的片內(nèi)外設(shè)事件管理器(EV)模塊產(chǎn)生三相SPWM波,給出了程序流程圖及關(guān)鍵程序源碼。該方法采用不對稱規(guī)則采樣算法,參數(shù)計(jì)算主要采用查表法,計(jì)算量小,實(shí)時性高。在工程實(shí)踐中表明,該方法既能滿足控制精度要求,又能滿足實(shí)時性要求,可以很好地控制逆變電源的輸出。
標(biāo)簽: F28335 28335 SPWM 320F
上傳時間: 2013-11-05
上傳用戶:tzrdcaabb
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1