微機(jī)原理與接口實(shí)驗(yàn) 4.2 定時(shí)器-計(jì)數(shù)器-8253 賴曉錚_第1頁(yè)
微機(jī)原理與接口實(shí)驗(yàn) 4.2 定時(shí)器-計(jì)數(shù)器-8253 賴曉錚_第2頁(yè)
微機(jī)原理與接口實(shí)驗(yàn) 4.2 定時(shí)器-計(jì)數(shù)器-8253 賴曉錚_第3頁(yè)
微機(jī)原理與接口實(shí)驗(yàn) 4.2 定時(shí)器-計(jì)數(shù)器-8253 賴曉錚_第4頁(yè)
微機(jī)原理與接口實(shí)驗(yàn) 4.2 定時(shí)器-計(jì)數(shù)器-8253 賴曉錚_第5頁(yè)
已閱讀5頁(yè),還剩20頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

微機(jī)原理與接口實(shí)驗(yàn)系列一、IO端口擴(kuò)展(8255)二、定時(shí)器/計(jì)數(shù)器(8253)三、串口通信(8251)四、模數(shù)轉(zhuǎn)換(ADC0809)五、數(shù)模轉(zhuǎn)換(DAC0832)六、液晶屏顯示(LCD1602)七、中斷控制器(8259)賴曉錚博士華南理工大學(xué)laixz@QQ:68046508(二)

定時(shí)器/計(jì)數(shù)器(8253)實(shí)驗(yàn)實(shí)驗(yàn)內(nèi)容:●構(gòu)建一個(gè)“CPU+8253”的微型計(jì)算機(jī)系統(tǒng),通過8253芯片使CPU處于定時(shí)工作狀態(tài),或?qū)ν獠窟^程進(jìn)行計(jì)數(shù)。編寫機(jī)器語言程序,實(shí)現(xiàn)8253芯片的六種工作方式。實(shí)驗(yàn)?zāi)康模骸窭斫饪删幊潭〞r(shí)器/計(jì)數(shù)器芯片8253的基本工作原理?!裾莆?253芯片實(shí)現(xiàn)定時(shí)/計(jì)數(shù)功能的工作方式及編程方法。微程序版“CPU+8253”電路圖初始化過程時(shí)鐘信號(hào)CLK接手動(dòng)開關(guān)MANUAL,啟動(dòng)仿真,使能復(fù)位信號(hào)#RESET=0;手動(dòng)按鈕MANUAL開關(guān)“010”,然后令信號(hào)#RESET=1.注:初始化完成后,若時(shí)鐘信號(hào)CLK繼續(xù)接開關(guān)MANUAL,則CPU進(jìn)入手動(dòng)模式,手動(dòng)MANUAL開關(guān),生成時(shí)鐘信號(hào)CLK,程序單步執(zhí)行;若時(shí)鐘信號(hào)CLK接信號(hào)源AUTO-CLK(主頻10Hz),則CPU進(jìn)入自動(dòng)模式,程序自動(dòng)運(yùn)行,直到HLT指令的“斷點(diǎn)”處暫停。重啟過程(跳出“斷點(diǎn)”)時(shí)鐘信號(hào)CLK接開關(guān)MANUAL,手動(dòng)令復(fù)位信號(hào)端#RESET的狀態(tài)“101”變化,即重啟完成,跳出“斷點(diǎn)”繼續(xù)執(zhí)行

。注:跳出“斷點(diǎn)”后,CPU進(jìn)入HLT指令的后續(xù)下一條指令的取指周期。8253A應(yīng)用電路圖(工作方式3)定時(shí)器/計(jì)數(shù)器芯片8253A結(jié)構(gòu)圖#CS#RD#WRA1A0寄存器選擇和操作001

0

0讀0通道鎖存器

001

01讀1通道鎖存器

00

1

10讀2通道鎖存器

01

0

00寫

0通道計(jì)數(shù)寄存器

01001寫1通道計(jì)數(shù)寄存器

01010寫2通道計(jì)數(shù)寄存器

01011寫控制字寄存器

1XX

XX禁止訪問,總線D7~D0接口呈現(xiàn)高阻態(tài)8253A控制端口功能圖工作方式門控信號(hào)OUT端輸出波形計(jì)數(shù)過程啟動(dòng)方式寫入新計(jì)數(shù)初值方式0高N+1個(gè)CLK周期負(fù)脈沖軟件觸發(fā)立即有效方式1上升沿N個(gè)CLK周期負(fù)脈沖硬件門控觸發(fā)硬件觸發(fā)有效方式2高1個(gè)CLK周期負(fù)脈沖自動(dòng)重復(fù)下一次計(jì)數(shù)有效方式3高方波/矩形波自動(dòng)重復(fù)下一次計(jì)數(shù)有效方式4高1個(gè)CLK周期負(fù)脈沖軟件觸發(fā)立即有效方式5上升沿1個(gè)CLK周期負(fù)脈沖硬件門控觸發(fā)硬件觸發(fā)有效8253A工作方式列表8253A控制字結(jié)構(gòu)圖8253A工作方式0(計(jì)數(shù)結(jié)束中斷)時(shí)序圖8253A工作方式1(可編程單脈沖發(fā)生器)時(shí)序圖8253A工作方式2(分頻器)時(shí)序圖8253A工作方式3(方波發(fā)生器)時(shí)序圖8253A工作方式4(

軟件觸發(fā)選通)時(shí)序圖8253A工作方式5(硬件觸發(fā)選通)時(shí)序圖實(shí)驗(yàn)步驟:1)8253A的六種工作方式測(cè)試程序00_test~05_test存放在實(shí)驗(yàn)4.2項(xiàng)目的子文件夾test里。例如方式3測(cè)試程序03_test,其功能是在8253A芯片的OUT0輸出端產(chǎn)生周期性的方波,周期寬度是N個(gè)CLK周期(N是程序設(shè)定的計(jì)數(shù)初始值)。具體代碼如后頁(yè)所示。2)編譯、燒寫、自動(dòng)運(yùn)行上述程序03_test.asm,觀察虛擬示波器顯示的A端和B端波形。(編譯和燒寫asm文件的方法參見“2.6存儲(chǔ)器實(shí)驗(yàn):ROM批量導(dǎo)入數(shù)據(jù)”)3)00test.asm是8253A工作方式0測(cè)試程序,與方式3不同的是,方式0產(chǎn)生的是一次性的上升沿跳變。編譯、燒寫、自動(dòng)運(yùn)行00test源程序,觀察虛擬示波器顯示的波形。4)編譯、燒寫和自動(dòng)運(yùn)行01test、04test和05test源程序,觀察上述程序運(yùn)行中的虛擬示波器顯示波形,對(duì)比8253A的工作方式1和方式0、以及工作方式4和方式5的運(yùn)行結(jié)果。匯編助記符注釋(M地址:機(jī)器指令)SETR1,A6H8253控制寄存器地址[1010xxxx]寫入R1A1A0=1100H:0011010001H:10100110OUTAR1,PORT0選擇8253的控制寄存器02H:01010110SETR1,16H控制字:選計(jì)數(shù)器0/只讀寫低8位數(shù)據(jù)/方式3/二進(jìn)制03H:0011010004H:00010110OUTR1,PORT0輸入控制字05H:01010100SETR1,A0H把0通道計(jì)數(shù)寄存器地址打入R1A1A0=0006H:0011010007H:10100000OUTAR1,PORT0選擇8253的0通道計(jì)數(shù)寄存器08H:01010110SETR1,04H計(jì)數(shù)初始值N09H:001101000AH:00000100OUTR1,PORT0輸入后,開始以N個(gè)CLK周期做循環(huán)方波0BH:0101010003_test匯編助記符注釋(M地址:機(jī)器指令)HLT0CH:00000001SETR1,05H計(jì)數(shù)初始值N(新)0DH:001101000EH:00000101OUTR1,PORT0輸入N后,待當(dāng)前方波結(jié)束,再開始新的方波周期0FH:01010100HLT10H:0000000103_test思考題:●請(qǐng)把本實(shí)驗(yàn)的微程序版“CPU+8253”電路改成硬布線版和流水線版“CPU+8253”電路,并且運(yùn)行本實(shí)驗(yàn)步驟所述的六種8253芯片工作方式的測(cè)試程序。請(qǐng)問上述程序在硬布線或流水線版本中需要修改么?若需要,請(qǐng)修改并測(cè)試。(二)定時(shí)器/計(jì)數(shù)器(8253)實(shí)驗(yàn)附錄:CPU指令集(OP碼表)OP碼(I7I6I5I4)指令助記符OP碼(I7I6I5I4)指令助記符0111IRET1111OR/ORI0110MOV1110AND/ANDI0101OUT/OUTA1101ADD/ADDI0100IN1100SUB/SUBI0011SET1011XOR/XORI0010SOP(INC/DEC/NOT/THR)1010SHT

(RLC/LLC/RRC/LRC)0001JMP/JMPR/Jx/JxR1001STO/PUSH0000NOP/HLT1000LAD/POP一、系統(tǒng)指令:匯編語言功能I7I6I5I4I3I2I1I0NOP;無操作(延時(shí)4個(gè)T)00000/0x/0HLT;停機(jī)(斷點(diǎn))00000/0x/1IRET;中斷返回BP_PCPC;BP_PSWPSW01110/0x/x匯編語言注釋I7I6I5I4I3I2I1I0MOVRA,RB;(RB)RA0110RARBSETRA,IMM;IMMRA0011RAx/xIMM二、寄存器及I/O操作指令:匯編語言功能I7I6I5I4I3I2I1I0INRA,PORTx;(PORTx)RA0100RAPORTxOUTRA,PORTx;(RA)PORTx0101RA0/PORTxOUTARA,PORTx;(RA)PORTx0101RA1/PORTx匯編語言功能I7I6I5I4I3I2I1I0LADRA,[ADDR];[ADDR]RA1000RA0/0ADDRPOPRA,[RB];[RB]RA1000RARBSTORA,[ADDR];(RA)[ADDR]1001RA0/0ADDRPUSHRA,[RB];(RA)[RB]1001RARB三、存儲(chǔ)器及堆棧操作指令:匯編語言功能I7I6I5I4I3I2I1I0JMPADDR;ADDRPC00010/00/0ADDRJMPRRB;(RB)PC00010/0RBJCADDR;IFCF=1,ADDRPC00010/10/0ADDRJCRRB;IFCF=1,(RB)PC00010/1RBJZADDR;IFZF=1,ADDRPC00011/00/0ADDRJZRRB;IFZF=1,(RB)PC00011/0RBJSADDR;IFSF=1,ADDRPC00011/10/0ADDRJSRRB;IFSF=1,(RB)PC00011/1RB四、跳轉(zhuǎn)系列指令:五、算術(shù)邏輯運(yùn)算指令:匯編語言功能I7I6I5I4I3I2

I1I0RLCRA;(RA)右邏輯移位1010RA0/0LLCRA;(RA)左邏輯移位1010RA1/0RRCRA;(RA)右循環(huán)移位1010RA0/1LRCRA;(RA)左循環(huán)移位1010RA1/1匯編語言功能I7I6I5I4I3I2I1I0INCRA;(RA)+1RA0010RA0/0DECRA;(RA)-1RA0010RA0/1NOTRA;#(RA)RA0010RA1/0THRRA;(RA)RA0010RA1/1五、算術(shù)邏輯運(yùn)算指令:匯編語言格式功能I7I6I5I4I3I2I1I0ADDRA,RB;(RA)+(RB)RA1101RARBADDIRA,IMM;(RA)+I(xiàn)MMRA1101RA0/0IMMSUBRA,RB;(RA)-(RB)RA1100RARBSUBIRA,IMM;(RA)-IMMRA1100RA0/

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論