單片微型計(jì)算機(jī)原理和接口技術(shù)習(xí)題解答:賴修琳_第1頁
單片微型計(jì)算機(jī)原理和接口技術(shù)習(xí)題解答:賴修琳_第2頁
單片微型計(jì)算機(jī)原理和接口技術(shù)習(xí)題解答:賴修琳_第3頁
單片微型計(jì)算機(jī)原理和接口技術(shù)習(xí)題解答:賴修琳_第4頁
單片微型計(jì)算機(jī)原理和接口技術(shù)習(xí)題解答:賴修琳_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 單片機(jī)是指單一集成電路芯片,是集成的微型計(jì)算機(jī),其包含中央處理器CPU、內(nèi)存MEM和輸入輸出I/O三部分。而個(gè)人計(jì)算機(jī)至少包含顯示器和鍵盤,其核心部分也包含CPU、MEM和I/O,也可以用單片機(jī)制作個(gè)人計(jì)算機(jī)。注:個(gè)人計(jì)算機(jī)強(qiáng)調(diào)人機(jī)交互操作,而單片機(jī)主要應(yīng)用于自動(dòng)控制?,F(xiàn)代的個(gè)人計(jì)算機(jī)內(nèi)存容量比較大,一般都超過1MB RAM,難以集成到單片機(jī)中,所以個(gè)人計(jì)算機(jī)的內(nèi)存MEM都采用獨(dú)立的MEM芯片。 單片機(jī)由于集成在單一芯片上,所以高可靠性是其最主要的特點(diǎn)。單片機(jī)由于CPU、MEM和I/O的差別,種類繁多,能適應(yīng)各種各樣的要求,性價(jià)比極高。 1)民用智能家電;2)個(gè)人移動(dòng)電子設(shè)備:電子表,手機(jī),

2、MP3;3)工業(yè)智能測(cè)控;4)農(nóng)業(yè),醫(yī)療,軍事;5)計(jì)算機(jī)網(wǎng)絡(luò)設(shè)備 1)CPU; 2) I/O: 定時(shí)計(jì)數(shù)器、普通I/O、串行通信;3)MEN:FLASH+RAM 第13頁。計(jì)算機(jī)各組成部分的信息傳輸?shù)囊唤M公共線路??偩€分為片總線,內(nèi)總線,和外總線。采用總線方便系統(tǒng)的功能擴(kuò)充。 CPU讀存儲(chǔ)器的過程:1)送出地址 2)讀信息有效 3)存儲(chǔ)器對(duì)應(yīng)單元的數(shù)據(jù)輸出到總線 4)CPU取得數(shù)據(jù) 5)結(jié)束讀信號(hào)地址。CPU寫存儲(chǔ)器的過程:1)送出地址,選擇存儲(chǔ)器對(duì)應(yīng)單元 2)送出數(shù)據(jù) 3)輸出有效寫信號(hào) 4)結(jié)束寫信號(hào) 5)結(jié)束數(shù)據(jù)和地址信號(hào)。 B、D、H;十進(jìn)制。 該題目的意思應(yīng)該是8位二進(jìn)制數(shù)。無符號(hào)

3、書0255,帶符號(hào)數(shù)通常是補(bǔ)碼:-128127;BCD碼是指壓縮BCD碼:0099。 這是一個(gè)7位二進(jìn)制書,補(bǔ)碼是-11 0111B=-37H=-(48+7)=-55。無符號(hào)二進(jìn)制數(shù)是49H=4*16+9=73。A的ASCII碼是41H,49H既是字母I,BCD碼是49. 電腦型電飯鍋,電子表。 第15頁,1)程序地址指針寄存器(PC或AR)的內(nèi)容輸出到地址總線,選擇程序存儲(chǔ)器單元;2)控制單元輸出讀信號(hào);3)存儲(chǔ)器輸出指令內(nèi)容到數(shù)據(jù)總線;4)CPU將指令內(nèi)容存入CPU指令寄存器;5)PC指針加一;6)指令譯碼;7)執(zhí)行指令。 1)24+23+22+21+20+2-2=16+8+2+1+0.2

4、5=27.25 2) 256-43+2-1=100H-2BH+2-1=11010101.1B=0D5.8H 3) 126 = 128 - 2 = 80H - 02H = 7EH 4) 111 = 128 - 17 = 80H -11H = 6FH = 0110 1111B 5) 75426) 5923H = 0101 1001 0010 0011B-(100H - 85H) = -7BH = -(7*16 + 11) = -123-112 = 100H -70H = 90H84H = -(100H - 84H) = -7CH = -124(1)8位CPU(2)程序存儲(chǔ)器8K Flash(3)2

5、56B內(nèi)部RAM(4)4個(gè)8位I/O端口(5)3個(gè)16位定時(shí)/計(jì)數(shù)器(6)6個(gè)中斷源(7)1個(gè)串行接口(1)4*8=32根I/O線(2)P0是數(shù)據(jù)線和低8位地址線的分時(shí)復(fù)用總線P2是高8位地址總線P3.6和P3.7是外擴(kuò)RAM的讀寫信號(hào)線(3)地址總線16位,數(shù)據(jù)總線8位 (35頁)(1) 難記可以列舉。最多128個(gè)通用PSW,A,B,SP,DPH,DPL控制:TMOD,TCONT0:TH0,TL0 T1:TH1,TL1中斷:IE,IP I/O:P0,P1,P2,P3串口:SCON,SBUF電源:PCONT2:TH2,TL2;RCAP2H,RCAP2L;T2CON,T2MOD; 難點(diǎn):WDTR

6、ST;AUXR;AUXR1;DP0L,DP0H;DP1L;DP1H(2)問題是分組的方法:可按(1)的方式分組(3)內(nèi)容太多,不列舉。(1)內(nèi)部RAM:00FFH SFR:80HFFH RAM又分成:寄存器區(qū) 001FH 位尋址區(qū) 20H2FH 通用RAM 30HFFH(2)各區(qū)域?qū)ぶ贩绞接胁顒eRESET:高電平復(fù)位;ALE:外部低8位地址有效PSEN:取代碼有效(外部);EA:選擇內(nèi)外程序存儲(chǔ)器INT0,INT1,T0,T1,RD,WR,X0/X1晶振節(jié)能,中斷及復(fù)位可啟動(dòng)節(jié)電是CPU無時(shí)鐘而停止工作,其它部分正常。 掉電是所有部分無時(shí)鐘,振停。因?yàn)殡姵厝萘坑邢?,要延長(zhǎng)便攜設(shè)備的工作時(shí)間,節(jié)

7、電尤其重要。通常有冷啟動(dòng)上電復(fù)位,熱啟動(dòng)手動(dòng)復(fù)位,以及看門狗復(fù)位。冷啟動(dòng)復(fù)位后,程序指針PC的值是確定的(PC)=0000H,其次是中斷允許EA=0;P0=P1=P2=P3=0 xFF。RAM的值是隨機(jī)值,一般還有堆棧指針(SP)=0 x07; (PSW)=00H.而熱啟動(dòng)和看門狗復(fù)位時(shí),除RAM保持復(fù)位前的值外,其它寄存器的值同上。AT89S52采用的是哈佛結(jié)構(gòu),程序和數(shù)據(jù)存儲(chǔ)是獨(dú)立的,它們共用地址數(shù)據(jù)總線,但是通過分時(shí)共享,PSEN信號(hào)有效時(shí)取程序空間,而WR和RD有效時(shí)取數(shù)據(jù)空間,PSEN,WR和RD三個(gè)信號(hào)任何時(shí)刻最多僅一個(gè)有效。后進(jìn)先出或先進(jìn)后出的隊(duì)列稱為堆棧。AT89S52的堆棧設(shè)

8、在內(nèi)部RAM數(shù)據(jù)區(qū);SP是堆棧指針;存取數(shù)據(jù)的原則是先將SP增一再存入數(shù)據(jù),取數(shù)時(shí)根據(jù)SP取數(shù)后將SP減一。DPTR是數(shù)據(jù)指針寄存器。用于存取外部數(shù)據(jù)RAM和程序空間的數(shù)據(jù),由DPH和DPL組成。PC:16位,但不在SFR區(qū)域中。見page38最后一段。有4組工作寄存器;8個(gè);PSW寄存器中的RS1和RS0位。假設(shè)晶體頻率為12MHZ,任何時(shí)候只有一個(gè)燈亮,每延時(shí)一定時(shí)間換一盞燈。由于沒學(xué)過51的匯編,可用C語言實(shí)現(xiàn)。#include Void Delay(void)Void main(void)int i;P1 = 0 xFF;P2 = 0 xFF;WhileP1 = 0 xFE; Dela

9、y(); /p1.0燈亮P1 = 0 xFD; Delay(); /p1.1燈亮.P1 = 0 xFF; /p1所有燈滅P2 = 0 xFE; Delay(); /p2.0燈亮.P2 = 0 x7E; Delay(); /p2.7燈亮P2 = 0 xFF; /p2所有燈滅Void Delay(void) /延時(shí)int i, j; for( i = 0; i 1000; i+)for( j=0; j1000;j+)在p3.0引腳上設(shè)一鍵,按下為0,開機(jī)后判斷p3.0的狀態(tài)決定流水方向。if(p3 & 0 x01) /只判p3最低位LoopUpDown();elseLoopDownUp();書中沒

10、有介紹數(shù)碼管的工作原理,自己查資料完成。 同上 同上提示:自學(xué)5.2.3,習(xí)題集中應(yīng)預(yù)習(xí)相關(guān)內(nèi)容。匯編指令中存取數(shù)據(jù)的方式或數(shù)據(jù)所在地址的方式(見page74:表4-1)立即數(shù):程序空間直接地址:RAM:007FH,SFR:80HFFH間接地址:RAM:00FFH,外部RAM變址:程序寄存器:A,DPTR,R0R7,乘除法中得B,位尋址的C相對(duì):程序位尋址:內(nèi)部RAM:202FH;SFR中被8整除的字節(jié)255條(111條不科學(xué))page74移動(dòng);(2)算術(shù);(3)邏輯;(4)位操作;(5)控制每類包括的指令不好記憶指令操作數(shù)1操作數(shù)2操作數(shù)3 CJNE A,#55,NEXT控制指令,累加器A中

11、得內(nèi)容不是55時(shí)轉(zhuǎn)移到NEXT MOV R2,#5 MOV R0,#30H MOV DPTR,#100H LOOP: MOV A,R0 MOVX DPTR,A INC R0 INC DPTR DJNZ R2,LOOP1 MOV R2,#10 MOV DPTR,#2000H MOV R0,#40HLOOP2:MOVX A,DPTR MOV R0,A INC DPTR INC R0 DJNZ R2,LOOP2 MOV R2,#6 MOV DPTR,#1000H MOV R0,#0LOOP: MOV P2,#20H MOVX A,R0 MOV P2,#30H MOVX R0,A CLR A MOVC

12、 A,A+DPTR MOV P2,#20H MOVX R0,A INC R0 INC DPTR DJNZ R2,LOOP CLR C MOV A,51H SUBB A,41H MOV 31H,A MOV A,50H SUBB A,40H MOV 30H,A MOV DPTR,#1000H INC DPTR MOV A,30H MOV A,31H ADD A,40H ADDC A,41H DA A DA A MOVX DPTR,A MOVX DPTR,A設(shè)低8位存R6,高8位存R5 MOV A,R3 MOV B,R4 MUL AB MOV R5,B MOV R6,A MOV A,20H ANL

13、A,21H ORL A,22H XRL A,23H ADD A,ACC CPL A MOV 25H,A MOV R0,#30H MOV R2,#20 MOV B,#0LOOP:CJNZ R0,#W,NEXT INC BNEXT: INC R0 DJNZ R2,LOOP MOV A,B JZ NEXT2 MOV A,#Y SJMP NEXT3 NEXT2:MOV A,#NNEXT3:NOP MOV A,30H MOV B,#10H DIV AB /拆分BCD碼,分別存入A,B MOL AB DA A MOV 31H,A MOV B,#10 DIV A,B SWAP A ORL A,B SWAP

14、A當(dāng)在30H區(qū)域找到一個(gè)最小值時(shí),將相應(yīng)單元置成FFH。從小到大找完后,再移動(dòng)到50H區(qū)域。B保存最小值 MOV R3,#10LOOP2:MOV R1,#40HMOV R2,#10 MOV R0,#30H MOV A,#0FFHLOOP1:MOV B,R0 CJNE A,B,$+3 JNC MOV A,R0 MOV DPH,R0;記憶地址 INC RO DJNZ R2,LOOP1 MOV R1,A MOV R0,DPH MOV R0,#0FFH INC R1 DJNZ R3,LOOP2:倒轉(zhuǎn)40H區(qū)域到50H區(qū)域 MOV R2,#10 MOV R0,#40H MOV R1,#50+9LOOP3

15、:MOV A,R0 MOV R1,A INC R0 DEC R1,LOOP MOV A,30H MOV B,#10 DIV A,B MOV 40H,A MOV A,B MOV B,#10 DIV A, B MOV 41H,A MOV 42H,B MOV R2,#10 MOV R0,#40H MOV R1,#50HLOOP:MOV A,R0 ADD A,#0 MOV R1,A INC R0 INC R1 DJNZ R2,LOOP MOV R2,#16 MOV R0,#30H MOV R1,#40HLOOP:MOV A,R0 CJNE A,#0AH,$+3 JNC NEXT1 ADD A,#0 S

16、JMP NEXT2NEXT1:ADD A,#A- 0AHNEXT2:MOV R1,A INC R0 INC R1 DJNZ R2,LOOP MOV R2,#30H MOV DPTR,#2000H MOV P2,#10H MOV R0,#00H MOV R1,#30HLOOP:MOV A,DPTR MOV R1,A MOVX R0,A CLR A MOVX DPTR,A INC DPTR INC R1 INV R0 DJNZ R2,LOOP2由于p0p3是準(zhǔn)雙向口,作為輸入時(shí)首先應(yīng)輸出高電平。(1)本題的LED應(yīng)該指數(shù)碼管,多個(gè)LED可以靜態(tài),也可以動(dòng)態(tài)顯示。(2)該題中的“基本原理”不明確,應(yīng)

17、該指動(dòng)態(tài)數(shù)碼管的顯示原理。其原理是分時(shí)動(dòng)態(tài)掃描每支LED,所有LED每秒至少要顯示25次,利用人眼的視覺特性實(shí)現(xiàn)同時(shí)顯示的現(xiàn)象。(3)靜態(tài)顯示不存在該問題,所以此處仍指動(dòng)態(tài)顯示方式。其他操作是指無法保證LED的掃描顯示,可以理解應(yīng)用定時(shí)中斷實(shí)現(xiàn)動(dòng)態(tài)掃描?題目不明確,何為“簡(jiǎn)易鍵盤”?應(yīng)給出連線圖。獨(dú)立按鍵:中斷,查詢矩陣鍵盤:掃描P0要外接上拉電阻(通常情況,保證與P1P3相同)P0是數(shù)據(jù)總線與低8位地址總線的復(fù)用總線,當(dāng)ALE為高時(shí),P0為A0A7,當(dāng)ALE為低時(shí)P0為D0D7,P2是高8位地址總線。P3.0: RXD 串行口接收信號(hào)輸入P3.1: TXD 串行口發(fā)送信號(hào)輸出P3.2: IN

18、T0 外部中斷輸入0P3.3: INT1 外部中斷輸入1P3.4: T0 計(jì)數(shù)器的輸入時(shí)鐘P3.5: T1 計(jì)數(shù)器的輸入時(shí)鐘P3.6: WR 外部擴(kuò)展RAM的寫信號(hào)P3.7: RD 外部擴(kuò)展RAM的讀信號(hào)由于有6位數(shù),靜態(tài)方式要較多的硬件,所以采用動(dòng)態(tài)方式。采用共陰數(shù)碼管,P1接段選,P2接字選即可。如果亮度不夠,可在P1接上拉電阻,增加驅(qū)動(dòng)電流。ORG 0000HLOOP:MOV P1, #(1的代碼)MOV P2,#1111 1110BLCALL DELAY.MOV P1, #(2的代碼)MOV P2,#1101 1111BLCALL DELAYLJMP LOOPDELAY: MOV R6

19、, #100DELAY1:MOV R7, #100DJNZ R6, DELAY1RETEND在P1接靜態(tài)數(shù)碼管(共陰)。在P2和P3接10個(gè)獨(dú)立按鍵。ORG 0000HMOV P2, #0FFHMOV P3, #0FFHLOOP:JB P2.0, LOOP1MOV P1, #(0代碼)LJMP LOOPLOOP1:JB P2.1, LOOP2MOV P1, #(1代碼)JMP LOOP.JB P3.0MOV P1, #(8.)LJMP LOOPJB P3.1MOV P1, #(9.)LJMP LOOPEND1ms=800us+200us=200us*(4+1) ORG 0000HLOOP:SE

20、TBP1.0 LCALLDELAY200LCALLDELAY200LCALLDELAY200LCALLDELAY200CLRP1.0LCALLDELAY200SJMPLOOPDELAY:MOV R2,#100DJNER2,DELAYRET END修正時(shí)R2值可以改為98 大題,超難。字符B應(yīng)改為b P1段選,P0字選,共陰動(dòng)態(tài) P2和P3獨(dú)立按鍵 4位數(shù)存入 30H33H/40H43HORG000HMOVR0,#30HMOVR2,#4LCALLKeyIn ;顯示LCALLCompare; 得證不重復(fù)JZMOVR0INCR0DJNER2 = 2 * GB3 K設(shè)置顯示 = 3 * GB3 同上輸

21、入40H43H = 4 * GB3 比較30H33H/40H43H,求得A參數(shù) = 5 * GB3 求得B參數(shù) = 6 * GB3 顯示A、B參數(shù) = 7 * GB3 A參數(shù)不為4 = 8 * GB3 結(jié)束在P1和P2端口上接兩個(gè)共陰數(shù)碼管(靜態(tài)),酒瓶通過信號(hào)接到P3.2,輸出脈沖接P3.3。當(dāng)有酒瓶通過時(shí),光線被遮擋,光敏三極管截止,P3.2為高電平,否則P3.2為低電平。30H單元存酒瓶計(jì)數(shù)值。設(shè)晶體頻率為12MHzORG0000HStart:MOV30H, #0 ; 開始0瓶Loop:LCALL SHOWJNBP3.2, $JBP3.2, $INC30HLCALLSHOWMOVA, 3

22、0HCJNEA, #12, LoopSETB P3.3MOV R7, #100Loop1:MOVR6, #100Loop2:MOVR5, #50DJNER5, $DJNER6, Loop2DJNER7,Loop1CLRP3.3LJMPStartEND處理器在執(zhí)行正常程序過程中,發(fā)生某一事件,需要處理器暫停當(dāng)前的程序,轉(zhuǎn)而去處理突發(fā)事件。這種現(xiàn)象稱為中斷。中斷的主要功能是解決突發(fā)事件的處理能力。6個(gè)中斷源X0: 0003H T0: 000BHX1: 0013HT1: 001BHRS: 0023HT2: 002BH補(bǔ)充說明:中斷向量通常是可改變的地址,放在之指定位置表中,中斷入口是固定不變的。本題

23、應(yīng)該是中斷入口,而非中斷向量。當(dāng)處理器在處理某中斷事件時(shí),又再次被另一個(gè)中斷事件中斷,也就是新事件的中斷級(jí)比之前的中斷高。這種處理器中則支持不同級(jí)別的中斷,這就是中斷優(yōu)先級(jí)別的問題。單片機(jī)中存在同級(jí)別的自然優(yōu)先權(quán)問題和不同優(yōu)先級(jí)問題高級(jí)別的中斷將中斷低級(jí)別中斷,發(fā)生中斷嵌套現(xiàn)象。 MOVIP, #0SETB PT2SETBEX0SETB EX1SETBET2SETB ESSETBEA TF0, TF1, IE0, IE1, TF2, RI, TI, TF0, TF1在中斷服務(wù)返回時(shí)自動(dòng)清零。IE0,和IE1都工作在下降沿方式時(shí),中斷返回時(shí)自動(dòng)清零。而TF2, RI, TI 必須通過軟件清零。

24、= 1 * GB3 產(chǎn)生了中斷請(qǐng)求 = 2 * GB3 允許了該中斷 = 3 * GB3 允許CPU中斷,即EA=1 = 4 * GB3 當(dāng)前CPU沒有在中斷服務(wù)或正在服務(wù)的中斷級(jí)別比該中斷級(jí)別低 = 5 * GB3 執(zhí)行完了一條制定,如果是RETI指令或是處理中斷IE, IP允許的指令,必須還要執(zhí)行一條指令。 = 1 * GB3 中斷請(qǐng)求 = 2 * GB3 CPU響應(yīng)中斷 = 3 * GB3 保護(hù)現(xiàn)場(chǎng) = 4 * GB3 中斷服務(wù) = 5 * GB3 恢復(fù)現(xiàn)場(chǎng) = 6 * GB3 中斷返回 = 1 * GB3 將X0或X1置為電平中斷方式,擴(kuò)展中斷源相與輸入,同時(shí)各擴(kuò)展源通過I/O并口輸入

25、查詢 = 2 * GB3 將T0, T1, T2改為計(jì)數(shù)器方式中斷,計(jì)數(shù)值為-1 = 1 * GB3 RETI = 2 * GB3 操作IE和IP的指令?之前計(jì)算機(jī)智能按指令批量處理,不能實(shí)現(xiàn)人機(jī)交互工作。中斷概念的提出,才讓計(jì)算機(jī)能解決實(shí)時(shí)事件。燒水設(shè)一氣閥,燒開時(shí)觸發(fā)一開關(guān),變換成電壓信號(hào)低電平,接P3.2產(chǎn)生中斷,單片機(jī)響應(yīng)中斷后關(guān)電源或燃?xì)忾y,同時(shí)輸出報(bào)警信號(hào)。?降低了系統(tǒng)的效率和實(shí)際性可屏蔽中斷是指通過指令可關(guān)閉被開放的中斷,而非屏蔽中斷,是指一但開放后,無法通過指令關(guān)閉的中斷,非屏蔽中斷常用于一些非處理不可的突發(fā)事件,比如掉電要保護(hù)當(dāng)前數(shù)據(jù)等。兩者都讓CPU執(zhí)行指定地址的指令。但復(fù)

26、位時(shí)CPU內(nèi)很長(zhǎng)寄存器被置為固定值。而中斷在執(zhí)行指定地址的指令前,會(huì)將當(dāng)前的PC值壓棧,而且不影響硬件。中斷入口是指某中斷產(chǎn)生中斷請(qǐng)求后,CPU響應(yīng)中斷直接轉(zhuǎn)入到固定地址,該地址即為中斷入口。而中斷矢量是指CPU響應(yīng)中斷時(shí),CPU從某向量表中取得一運(yùn)行地址,該地址通??赏ㄟ^軟件修改設(shè)置。電平中斷適用那些通過軟件方式可以清除的中斷。而邊沿中斷適合事件記錄,即使CPU響應(yīng)中斷后該中斷信號(hào)已消失,但這種中斷能記憶曾經(jīng)發(fā)生過的中斷。如果首先出現(xiàn)的中斷還沒消失,而又產(chǎn)生了第二個(gè)中斷,且在CPU響應(yīng)中斷之前所有中斷都消失了,這樣采用邊沿中斷,但無法查出某個(gè)擴(kuò)展中斷產(chǎn)生過。 = 1 * GB3 有3個(gè),T0

27、,T1,T2 = 2 * GB3 T0有4中工作方式。方式0為13位非重載;方式1為16為非自動(dòng)重載;方式2為8為自動(dòng)重載;方式3為雙8為兩計(jì)數(shù)器。 T1有3中工作方式,無T0的方式3。 T2有16位重載方式或工作在捕獲模式。此題目有問題。T1無方式3。T0工作在方式3時(shí),T1通常工作在方式2作為串口的速率發(fā)生器。此時(shí)T0的TH0 8位計(jì)數(shù)器將使用T1的TR1,TF1標(biāo)志控制位,工作于定時(shí)器模式。通過T2CON中的RCLK和TCLK進(jìn)行設(shè)置,為1時(shí)用T2產(chǎn)生波特率,否則用T1產(chǎn)生波特率,只要兩者不同,就可以用T1和T2分別產(chǎn)生收發(fā)速率,從而實(shí)現(xiàn)串口收發(fā)速率不相同的功能。初始化時(shí)讓T1工作在計(jì)數(shù)

28、器方式1,而T0工作在定時(shí)器方式1,初始值分別為-1000和-2000.首先啟動(dòng)T1,當(dāng)T1產(chǎn)生溢出后啟動(dòng)T0,到T0產(chǎn)生溢出時(shí),重復(fù)上述過程即可。 ORG 0000HLoop:MOVTCON, #0MOV TMOD, #01010001BMOVTH1, #high(-1000)MOVTL1, #low(-1000)MOVTH0, #high(-2000)MOVTL0, #low(-2000)SETBTR1JNBTF1, $SETBTR0JNBTF0, $LJMP LoopEND由于對(duì)精度沒有要求,可用T0工作在定時(shí)方式1,實(shí)現(xiàn)計(jì)時(shí),每次定時(shí)2.5msORG 0000HMOVTCON, #01

29、HLoop:LCALL Delay ;2.5msSETBp1.3LCALL Delay ;2.5msCLRP1.3LCALL DelaySETBp1.3LCALL DelayCLRp1.3SETBp1.2LCALL DelaySETBp1.3LCALL DelayCLRp1.3LCALL DelayPETBP1.3LCALL DelayCLRp1.3CLRp1.2LJMP Loop Delay:MOVTH0, #MOVTL0, #CLRTF0SETBTR0JNBTF0,$CLRTR0RET(補(bǔ)充T2的說明)讓T2工作在10ms定時(shí)方式,然后通過計(jì)數(shù)變量實(shí)現(xiàn)。ORG 0000HMOV T2MOD

30、,#0MOV T2CON, #0MOV RCAP2L, #low(-10000)MOV RCAP2H, #high(-10000)SET TR2LOOP: MOV R2, #5 SETB P1.2LOOP1: JNB TF2, $CLR TF2DJNZ R2, LOOP1MOV R2, #16CLR P1.2LOOP2: JNB TF2, $CLR TF2DJNZ R2, LOOP2SJMP LOOPEND按題意用T1定時(shí)器方式1單次決定定時(shí)即可測(cè)量脈沖的寬帶。ORG 0000HJBINT1, $LOOP:MOV TMOD, #1001 0000H;MOV TL1, #0MOV TH1, #0

31、SETB TR1JNB INT1, $ ; 等高JB INT1,$ ;等低MOV DRH, TH1 ;取高電平時(shí)間入DPTRMOV DRL, TL1SJMP LOOP ;重復(fù)題目不確定。首先高于3MHz的信號(hào)無法測(cè)量,而頻率太低的信號(hào)沒有精度要求,所以本題假設(shè)用一秒鐘統(tǒng)計(jì)信號(hào)的計(jì)頻方式進(jìn)行工作,用T2計(jì)時(shí)一秒,用T0計(jì)頻。ORG 0000HMOV TMOD, #0001 0101BMOV TH0, #0MOV TL0, #0MOV T2CON, #0MOV T2MOD, #0MOV RCAP2H, #high(-50000)MOV RCAP2L, #low(-50000)MOV R2, #0M

32、OV R7, #0SETB TR2SETB TR1LOOP:JNB TF0,LOOP1CLR TF0INC R7LOOP1:JNB TF2, LOOPCLR TF2DJNZ R2, LOOPCLR TR0CLR TR2MOV R6, TH0MOV R5, TL0R5, R6, R7中為頻率低 高如果是減法計(jì)數(shù)器,其初始化原則為設(shè)計(jì)的計(jì)數(shù)值,但若是加法計(jì)數(shù)器,其初始值則為計(jì)數(shù)器的最大值減去要計(jì)數(shù)的值。(或設(shè)為計(jì)數(shù)的負(fù)值)當(dāng)計(jì)數(shù)脈沖的頻率是固定值時(shí)。什么問題,沒有表述清楚。社一個(gè)變量,其初始值為0,每當(dāng)計(jì)數(shù)器溢出時(shí),該變量加一(通過軟件或中斷檢測(cè)溢出),最終計(jì)數(shù)值有變量和計(jì)數(shù)器中的兩部分構(gòu)成。采用補(bǔ)償方式,將重載時(shí)的誤差補(bǔ)償去CLR EACLR TR0MOV A, TL0ADD A,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論