版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、一1除了單片機這一名稱之外,單片機還可稱為微控制器和嵌入式控制器。2單片機與普通微型計算機的不同之處在于其將CPU、存儲器、和 I/O口3部分集成于一塊芯片上。38051與8751的區(qū)別是CA內(nèi)部數(shù)據(jù)存儲單元數(shù)目不同 B內(nèi)部數(shù)據(jù)存儲器的類型不同C內(nèi)部程序存儲器的類型不同 D內(nèi)部寄存器的數(shù)目不同4在家用電器中使用單片機應屬于微計算機的B。A輔助設計應用;B測量、控制應用;C數(shù)值計算應用;D數(shù)據(jù)處理應用5微處理器、微計算機、微處理機、CPU、單片機它們之間有何區(qū)別?答:微處理器、微處理機和CPU都是中央處理器的不同稱謂;而微計算機、單片機都是一個完整的計算機系統(tǒng),單片機特指集成在一個芯片上的用于測
2、控目的的單片微計算機。6MCS-51系列單片機的基本型芯片分別為哪幾種?它們的差別是什么?答:MCS-51系列單片機的基本型芯片分別是8031、8051和8751。它們的差別是在片內(nèi)程序存儲器上。8031無片內(nèi)程序存儲器,8051片內(nèi)有4KB的程序存儲器ROM,而8751片內(nèi)集成有4KB的程序存儲器EPROM。7為什么不應當把51系列單片機稱為MCS-51系列單片機?答:因為MCS-51系列單片機中的“MCS”是Intel公司生產(chǎn)的單片機的系列符號,而51系列單片機是指世界各個廠家生產(chǎn)的所有與8051的內(nèi)核結(jié)構(gòu)、指令系統(tǒng)兼容的單片機。8AT89C51單片機相當于MCS-51系列單片機中的哪一種
3、型號的產(chǎn)品?答:相當于MCS-51系列中的87C51,只不過是AT89C51芯片內(nèi)的4KB Flash存儲器取代了87C51片內(nèi)的4KB的EPROM。二1在AT89C51單片機中,如果采用6MHz晶振,一個機器周期為2µs2AT89C51單片機的機器周期等于12個時鐘振蕩周期。3內(nèi)部RAM中,位地址為40H、88H的位,該位所在字節(jié)的字節(jié)地址分別為 28H;88H4片內(nèi)字節(jié)地址為2AH單元的最低位的位地址是50H;片內(nèi)字節(jié)地址為88H單元的最低位的位地址是88H。5若A中的內(nèi)容為63H,那么,P標志位的值為0。6AT89C51單片機復位后,R4所對應的存儲單元的地址為 04H ,因上
4、電時PSW = 00H。這時當前的工作寄存器區(qū)是 0組工作寄存器區(qū)。7內(nèi)部RAM中,可作為工作寄存器區(qū)的單元地址為00H H1FH 。8通過堆棧操作實現(xiàn)子程序調(diào)用,首先要把PC的內(nèi)容入棧,以進行斷點保護。調(diào)用返回時,再進行出棧保護,把保護的斷點送回到 PC。9AT89C51單片機程序存儲器的尋址范圍是由程序計數(shù)器PC的位數(shù)所決定的,因為AT89C51單片機的PC是16位的,因此其尋址的范圍為64 KB。10判斷下列錯錯對對項說法是正確的。AAT89C51單片機的CPU是由RAM和EPROM組成的B區(qū)分片外程序存儲器和片外數(shù)據(jù)存儲器的最可靠的方法是看其位于地址范圍的低端還是高
5、端C在AT89C51單片機中,為使準雙向的I/O口工作在輸入方式,必須保證它被事先預置為1DPC可以看成是程序存儲器的地址指針11判斷以下有關(guān)PC和DPTR的結(jié)論 對對錯對 是正確的。ADPTR是可以訪問的,而PC不能訪問B它們都是16位寄存器C在單片機運行時,它們都具有自動加“1”的功能DDPTR可以分為2個8位的寄存器使用,但PC不能12判斷下列說法對錯錯項是正確的。A程序計數(shù)器PC不能為用戶編程時直接訪問,因為它沒有地址B內(nèi)部RAM的位尋址區(qū),只能供位尋址使用,而不能供字節(jié)尋址使用CAT89C51單片機共有21個特殊功能寄存器,它們的位都是可用軟件設置的,因此,是可以進行位尋址的。13P
6、C的值是錯錯對錯。A當前正在執(zhí)行指令的前一條指令的地址B當前正在執(zhí)行指令的地址C當前正在執(zhí)行指令的下一條指令的地址D控制器中指令寄存器的地址14判斷下列說法對對錯錯是正確的。APC是一個不可尋址的特殊功能寄存器B單片機的主頻越高,其運算速度越快C在AT89C51單片機中,一個機器周期等于1msD特殊功能寄存器內(nèi)存放的是棧頂首地址單元的內(nèi)容15AT89C51單片機的片內(nèi)都集成了哪些功能部件?各個功能部件的最主要的功能是什么?(1)1個微處理器(CPU);(2)128個數(shù)據(jù)存儲器(RAM)單元;(3)4KB Flash程序存儲器;(4)4個8位可編程并行I/O口(P0口、P1口、P2口、P3口);
7、(5)1個全雙工串行口;(6)2個16位定時器/計數(shù)器;(7)一個中斷系統(tǒng),5個中斷源,2個優(yōu)先級;(8)21個特殊功能寄存器(SFR)。16說明AT89C51單片機的引腳的作用,該引腳接高電平和低電平時各有何種功能?答:當腳為高電平時,單片機讀片內(nèi)程序存儲器(4KB Flash),但在PC值超過0FFFH(即超出4KB地址范圍)時,將自動轉(zhuǎn)向讀外部程序存儲器內(nèi)的程序。當腳為低電平時,對程序存儲器的讀操作只限定在外部程序存儲器,地址為0000HFFFFH,片內(nèi)的4KB Flash程序存儲器不起作用。1764KB程序存儲器空間有5個單元地址對應AT89C51單片機5個中斷源的中斷入口地址,請寫出
8、這些單元的入口地址及對應的中斷源。答:64KB程序存儲器空間中有5個特殊單元分別對應于5個中斷源的中斷服務程序的入口地址,見下表。表 5個中斷源的中斷入口地址入口地址中斷源0003H外部中斷0 ()000BH定時器0 (T0)0013H外部中斷1 ()001BH定時器1 (T1)0023H串行口18當AT89C51單片機運行出錯或程序陷入死循環(huán)時,如何擺脫困境?答:按下復位按鈕。三1在基址加變址尋址方式中,以A作為變址寄存器,以PC或DPTR作為基址寄存器。2指令格式是由操作碼和操作數(shù)組成,也可僅由操作碼組成。3假定累加器A中的內(nèi)容為30H,執(zhí)行指令1000H:MOVC A,A+PC后,把程序
9、存儲器1031H單元的內(nèi)容送入累加器A中。4在AT89C51單片機中,PC和DPTR都用于提供地址,但PC是為訪問程序 存儲器提供地址,而DPTR是為訪問數(shù)據(jù)存儲器提供地址。5在寄存器間接尋址方式中,其“間接”體現(xiàn)在指令中寄存器的內(nèi)容不是操作數(shù),而是操作數(shù)的地址。6已知程序執(zhí)行前有(A) = 02H,(SP) = 52H,(51H) = FFH,(52H) = FFH。下述程序執(zhí)行后,(A) =50H,(SP) =50H,(51H) =30H,(52H) =50H,(PC)&
10、#160;=5030H。POP DPHPOP DPLMOV DPTR,#4000HRL AMOV B,AMOVC A,A+DPTRPUSH AccMOV A,BINC AMOVC A,A+DPTRPUSH AccRETORG 4000HDB 10H,80H,30H,50H,30H,50H7假定(A) = 83H,(R0) = 17H,(17H) = 34H,執(zhí)行以下指令后,(A) =0CBH。ANL A,#17HORL 17H,AXRL A,R0CPL A8假設(A) = 55H,(R3) =&
11、#160;0AAH,在執(zhí)行指令“ANL A,R5”后,(A) = 00H,(R3) = 0AAH。9如果(DPTR) = 507BH,(SP) = 32H,(30H) = 50H,(31H) = 5FH,(32H) = 3CH,則執(zhí)行下列指令后,(DPH) =3CH,(DPL) = 5FH,(SP) = 50H。POP DPHPOP DPLPOP SP10假定,(SP) = 60H,
12、(A) = 30H,(B) = 70H,執(zhí)行下列指令后,SP的內(nèi)容為62H,61H單元的內(nèi)容為30H,62H單元的內(nèi)容為70H。PUSH AccPUSH B11判斷下列說法 對對錯 項是正確的。A立即尋址方式是被操作的數(shù)據(jù)本身就在指令中,而不是它的地址在指令中B指令周期是執(zhí)行一條指令的時間C指令中直接給出的操作數(shù)稱為直接尋址12判斷以下指令的正誤。(1)MOV 28H,R2 (2)DEC DPTR (3)INC DPTR (4)CLR R0(5)CPL R5 (6)MOV R0,R1 (7)PHSH DPTR (8)MOV F0,C(9)MOV F0,A
13、cc.3 (10)MOVX A,R1 (11)MOV C,30H (12)RLC R0答:(1)錯(2)錯(3)對(4)錯(5)錯(6)錯(7)錯(8)對(9)錯(10)對 (11)對(12)錯。13訪問SFR,可使用哪些尋址方式?答:只能使用直接尋址方式。14下列程序段的功能是什么?PUSHAccPUSH BPOP AccPOP B答:A的內(nèi)容與B的內(nèi)容互換。15寫出完成如下要求的指令,但是不能改變未涉及位的內(nèi)容。(1)把ACC.3,ACC.4,ACC.5和ACC.6清“0”。(2)把累加器A的中間4位清“0”。(3)使ACC.2和ACC.3置“1”。答:(1)ANL A,#87H
14、(2)ANL A,#0C3H(3)ORL A,#0CH16借助本書中的表3-2(指令表),對如下指令代碼(十六進制)進行手工反匯編。FF C0 E0 E5 F0 F0答:MOV R7,APUSH AMOV A ,BMOVX DPTR,A四1已知程序執(zhí)行前有A = 02H,SP = 42H,(41H) = FFH,(42H) = FFH。下述程序執(zhí)行后,A =80H;SP = 40H;(41H) = 50H;(42H) = 80H;PC
15、= 8050H。POP DPHPOP DPLMOV DPTR,#3000HRL AMOV B,AMOVC A,A+DPTRPUSH AccMOV A,BINC AMOVC A,A+DPTRPUSH AccRETORG 3000HDB 10H,80H,30H,80H,50H,80H2說明偽指令的作用?!皞巍钡暮x是什么?常用偽指令的功能如何?答:偽指令不屬于指令系統(tǒng)中的匯編語言指令,它是程序員發(fā)給匯編程序的控制命令。只有在匯編前的源程序中才有偽指令。所以“偽”體現(xiàn)在匯編后,偽指令沒有相應的機器代碼產(chǎn)生。3解釋手工匯編、機器匯編、交叉匯編、反匯編術(shù)語概念。答:(1)手工匯編:手工編程,首
16、先把程序用助記符指令寫出,然后通過查指令的機器代碼表,逐個把助記符指令“翻譯”成機器代碼,這種人工查表“翻譯”指令的方法稱為手工匯編。(2)機器匯編:是借助于微型計算機上的軟件(匯編程序)來代替手工匯編,完成把助記符指令“翻譯”成機器代碼的工作。(3)交叉匯編:使用微型計算機來完成匯編,而匯編后得到的機器代碼卻是在另一臺計算機(這里是單片機)上運行,稱這種機器匯編為交叉匯編。(4)反匯編:將二進制的機器代碼語言程序翻譯成匯編語言源程序的過程。4下列程序段經(jīng)匯編后,從1000H開始的各有關(guān)存儲單元的內(nèi)容是什么?ORG 1000HTAB1 EQU 1234HTAB2 EQU 3000HDB &qu
17、ot;MAIN"DW TAB1,TAB2,70H答:4D 41 49 4E 12 34 30 00 00 705設計子程序時應注意哪些問題?答:在編寫子程序時應注意以下問題。(1)子程序的第一條指令前必須有標號。(2)使用子程序調(diào)用指令時,有兩條調(diào)用指令可供使用。使用絕對調(diào)用指令(ACALL addr11)要注意,被調(diào)用的子程序的首地址與本絕對調(diào)用指令的下一條指令的高5位地址相同,即只能在同一2KB程序存儲區(qū)內(nèi)。使用長調(diào)用指令(LCALL addr16)時,addr16為直接調(diào)用的子程序的目標地址,也就是說,被調(diào)用的子程序可放置在64KB程序存儲器區(qū)的任意位置。(3)子程序結(jié)構(gòu)中必須
18、用到堆棧,堆棧通常用來保護斷點和現(xiàn)場保護。(4)子程序返回主程序時,最后一條指令必須是RET指令。(5)子程序可以嵌套,即主程序可以調(diào)用子程序,子程序又可以調(diào)用另外的子程序。6試編寫一個程序,將內(nèi)部RAM中45H單元的高4位清“0”,低4位置“1”。答:參考程序如下:MOVA,45HANLA,#0FHORLA,#0FHMOV45H,A7試編寫程序,查找在內(nèi)部RAM的30H50H單元中是否有0AAH這一數(shù)據(jù)。若有,則將51H單元置為“01H”;若未找到,則將51H單元置為“00H”。答:參考程序如下:START:MOVR0,#30HMOVR2,#20HLOOP:MOVA,R0CJNEA,#0AA
19、H,NEXTMOV51H,#01HLJMPEXITNEXT:INCR0DJNZR2,LOOPMOV51H,#00HEXIT:RET8試編寫程序,查找在內(nèi)部RAM的20H40H單元中出現(xiàn)“00H”這一數(shù)據(jù)的次數(shù),并將查找到的結(jié)果存入41H單元。答:參考程序如下:START:MOV41H,#0MOVR0,#20HMOVR2,#20HLOOP:MOVA,R0JNZNEXTINC41HNEXT:INCR0DJNZR2,LOOPRET9在內(nèi)部RAM的21H單元開始存有一組單字節(jié)無符號數(shù),數(shù)據(jù)長度為20H,編寫程序,要求找出最大數(shù)存入MAX單元。答:略:10若SP = 60H,標號LA
20、BEL所在的地址為3456H。LCALL指令的地址為2000H,執(zhí)行如下指令2000H LCALL LABEL后,堆棧指針SP和堆棧內(nèi)容發(fā)生了哪些變化?PC的值等于什么?如果將指令LCALL直接換成ACALL是否可以?如果換成ACALL指令,可調(diào)用的地址范圍是什么?答: (1)SP=SP+1=61H (61H)=PC的低字節(jié)=03HSP=SP+1=62H (62H)=PC的高字節(jié)=20H(2)PC=3456H(3)可以(4)2KB=2048 Byte五1外部中斷1的中斷入口地址為0013H。定時器1的中斷入口地址為001BH。2若(IP) = 00010100B,則優(yōu)先級最
21、高者為外部中斷1,最低者為定時器T1。3AT89C51單片機響應中斷后,產(chǎn)生長調(diào)用指令LCALL,執(zhí)行該指令的過程包括:首先把PC的內(nèi)容壓入堆棧,以進行斷點保護,然后把長調(diào)用指令的16位地址送PC,使程序執(zhí)行轉(zhuǎn)向程序存儲器中的中斷地址區(qū)。4判斷AT89C51單片機對外中斷請求源響應的最快響應時間為3個機器周期對。5下列說法正確的是D。A各中斷源發(fā)出的中斷請求信號,都會標記在AT89C51單片機的IE寄存器中B各中斷源發(fā)出的中斷請求信號,都會標記在AT89C51單片機的TMOD寄存器中C各中斷源發(fā)出的中斷請求信號,都會標記在AT89C51單片機的IP寄存器中D各中斷源發(fā)出的中斷請求信號,都會標記
22、在AT89C51單片機的TCON與SCON寄存器中6中斷查詢確認后,在下列各種AT89C51單片機運行情況下,能立即進行響應的是D。A當前正在進行高優(yōu)先級中斷處理B當前正在執(zhí)行RETI指令C當前指令是DIV指令,且正處于取指令的機器周期D當前指令是MOV A,R37在AT89C51單片機的中斷請求源中,需要外加電路實現(xiàn)中斷撤銷的是 答:A 。A電平方式的外部中斷B脈沖方式的外部中斷C外部串行中斷D定時中斷。8下列說法正確的是A、C、D。A同一級別的中斷請求按時間的先后順序響應B同一時間同一級別的多中斷請求將形成阻塞,系統(tǒng)無法響應C低優(yōu)先級中斷請求不能中斷高優(yōu)先級中斷請求,但是高優(yōu)先級中斷請求能
23、中斷低優(yōu)先級中斷請求D同級中斷不能嵌套9中斷服務子程序與普通子程序有哪些相同和不同之處?答:RETI指令在返回時,同時清除中斷系統(tǒng)中相應的優(yōu)先級觸發(fā)器,以允許下次中斷,而RET指令則沒有這個操作。除了這一點兩條指令不同外,其他操作都相同。10AT89C51單片機響應外部中斷的典型時間是多少?在哪些情況下,CPU將推遲對外部中斷請求的響應?課本77頁,典型時間最短3個周期最長8個周期。 推遲響應:剛好開始執(zhí)行RETI 訪問IP IE已經(jīng)在處理同級或更高級中斷。11編寫外部中斷1為跳沿觸發(fā)的中斷初始化程序段。答:SETBIT1SETBEX1SETBEA12中斷響應的條件是什么?1總中斷允許2中斷源
24、發(fā)出中斷請求3該中斷源的中斷允許4無同級或更高級正在服務。13某系統(tǒng)有3個外部中斷源1、2、3,當某一中斷源發(fā)出的中斷請求使引腳變?yōu)榈碗娖綍r(見圖5-10),便要求CPU進行處理,它們的優(yōu)先處理次序由高到低為3、2、1,中斷處理程序的入口地址分別為1000H、1100H、1200H。試編寫主程序及中斷服務子程序(轉(zhuǎn)至相應的中斷處理程序的入口即可)。答:參見電路如圖5-10所示,參考程序如下:ORG0000HLJMPMAINORG0013HLJMPINT_EX1ORG0030HMAIN:CLRIT0;采用電平觸發(fā),低電平有效中斷SETBEX1;允許外部中斷1SETBEAWAIT: LJMPWAI
25、T;用原地跳轉(zhuǎn)代替一段用戶程序;以下為外部中斷1服務子程序INT_EX1:JNBP1.2,NEXT1;P1.2=0,不是3號中斷,跳轉(zhuǎn)NEXT1LJMPINT_IR3 ;是3號中斷,跳轉(zhuǎn)到對應的中斷處理程序NEXT1: JNBP1.1,NEXT2;P1.1=0,不是2號中斷,跳轉(zhuǎn)NEXT2LJMPINT_IR2;跳轉(zhuǎn)到2號中斷處理程序NEXT2: LJMPINT_IR1;跳轉(zhuǎn)到1號中斷處理程序ORG1000HINT_IR3:插入相應中斷處理程序RETI;中斷返回ORG1100HINT_IR2:插入相應中斷處理程序RETI;中斷返回ORG1200HINT_IR1:插入相應中斷處理程序RETI;中
26、斷返回六1下列對錯錯錯項說法是正確的。A特殊功能寄存器SCON,與定時器/計數(shù)器的控制無關(guān)B特殊功能寄存器TCON,與定時器/計數(shù)器的控制無關(guān)C特殊功能寄存器IE,與定時器/計數(shù)器的控制無關(guān)D特殊功能寄存器TMOD,與定時器/計數(shù)器的控制無關(guān)2如果采用的晶振的頻率為3MHz,定時器/計數(shù)器工作在方式0、1、2下,其最大定時時間各為多少?答:因為機器周期所以定時器/計數(shù)器工作方式0下,其最大定時時間為(答案不準確)同樣可以求得,方式1下的最大定時時間為262.144ms;方式2下的最大定時時間為1.024ms。3定時器/計數(shù)器用作定時器模式時,其計數(shù)脈沖由誰提供?定時時間與哪些因素有關(guān)?答:定時
27、器/計數(shù)器用作定時器時,其計數(shù)脈沖由系統(tǒng)振蕩器產(chǎn)生的內(nèi)部時鐘信號12分頻后提供。定時時間與時鐘頻率和定時初值有關(guān)。4定時器/計數(shù)器用作計數(shù)器模式時,對外界計數(shù)頻率有何限制?答:由于確認1次負跳變要花2個機器周期,即24個振蕩周期,因此外部輸入的計數(shù)脈沖的最高頻率為系統(tǒng)振蕩器頻率的1/24。5采用定時器/計數(shù)器T0對外部脈沖進行計數(shù),每計數(shù)100個脈沖后,T0轉(zhuǎn)為定時工作方式。定時1ms后,又轉(zhuǎn)為計數(shù)工作方式,如此循環(huán)不止。假定AT89C51單片機的晶體振蕩器的頻率為6MHz,請使用方式1實現(xiàn),要求編寫程序。答:定時器/計數(shù)器T0在計數(shù)和定時工作完成后,均采用中斷方式工作。除了第一次計數(shù)工作方式
28、設置在主程序完成外,后面的定時或計數(shù)工作方式分別在中斷程序完成,用一標志位識別下一輪定時器/計數(shù)器T0的工作方式。參考程序如下:ORG0000HLJMPMAINORG000BHLJMPIT0PMAIN:MOVTMOD,#06H;定時器/計數(shù)器T0為計數(shù)方式2MOVTL0,#156;計數(shù)100個脈沖的初值賦值MOVTH0,#156SETBGATE;打開計數(shù)門SETBTR0;啟動T0,開始計數(shù)SETBET0;允許T0中斷SETBEA;CPU開中斷CLRF0;設置下一輪定時方式的標志位WAIT:AJMPWAITIT0P:CLREA;CPU關(guān)中斷JBF0,COUNT;F0=1,轉(zhuǎn)計數(shù)方式設置MOVTM
29、OD,#00H;定時器/計數(shù)器T0為定時方式0MOVTH0,#0FEH;定時1ms初值賦值MOVTL0,#0CHSETBEARETICOUNT:MOVTMOD,#06HMOVTL0,#156SETBEARETI6定時器/計數(shù)器的工作方式2有什么特點?適用于哪些應用場合?答:定時器/計數(shù)器的工作方式2具有自動恢復初值的特點,適用于精確定時,如波特率的產(chǎn)生。7編寫程序,要求使用T0,采用方式2定時,在P1.0輸出周期為400µs,占空比為101的矩形脈沖。答:根據(jù)題意,從P1.0輸出的矩形脈沖的高低電平的時間為101,則高低電平的時間分別為363.63µs和36.37µ
30、;s。如果系統(tǒng)采用6MHz晶振,Tcy=2µs,因此高低電平輸出取整,則約為364µs和36µs。參考程序如下:ORG0000HLJMPMAINORG000BHLJMPIT0PMAIN:MOVTMOD,#02H;定時器/計數(shù)器T0為定時方式2MOVTL0,#4AH;定時364ms初值賦值SETBTR0;啟動T0,開始計數(shù)SETBET0;允許T0中斷SETBEA;CPU開中斷SETBP1.0WAIT:AJMPWAITIT0P:CLREACLRP1.0;關(guān)中斷MOVR0,#9DLY:DJNZR0,DLY;延時36msMOVTL0,#4AH;定時364ms初值賦值SET
31、BP1.0SETBEARETI8一個定時器的定時時間有限,如何用兩個定時器的串行定時來實現(xiàn)較長時間的定時?答:方法1,在第一個定時器的中斷程序里關(guān)閉本定時器的中斷程序,設置和打開另一個定時器;在另一個定時器的中斷程序中關(guān)閉本定時中斷,設置和打開另一個定時器。這種方式的定時時間為兩個定時器定時時間的和。方法2,一個作為定時器,在定時中斷后產(chǎn)生一個外部計數(shù)脈沖(比如由P1.0接產(chǎn)生),另一個定時器工作在計數(shù)方式。這樣兩個定時器的定時時間為一個定時器的定時時間乘以另一個定時器的計數(shù)值。9當定時器T0用于方式3時,應該如何控制定時器T1的啟動和關(guān)閉?答:由T1(P3.5)口控制定時器T1的啟動和關(guān)閉。
32、10定時器/計數(shù)器測量某正單脈沖的寬度,采用何種方式可得到最大量程?若時鐘頻率為6MHz,求允許測量的最大脈沖寬度是多少?答:采用方式1定時工作方式。最大脈沖寬度為131.072ms。11編寫一段程序,功能要求:當P1.0引腳的電平正跳變時,對P1.1的輸入脈沖進行計數(shù);當P1.2引腳的電平負跳變時,停止計數(shù),并將計數(shù)值寫入R0、R1(高位存R1,低位存R0)。答:將P1.1的輸入脈沖接入INT0,即使用T0計數(shù)器完成對P1.1口的脈沖計數(shù)。參考程序如下:ORG0000HLJMPMAINORG000BHLJMPIT0PMAIN:JNBP1.0,MAINMOVTMOD,#05H;定時器/計數(shù)器T
33、0為計數(shù)方式1SETBTR0;啟動T0,開始計數(shù)SETBET0;允許T0中斷SETBEA;CPU開中斷WAIT:JBP1.2,WAITCLREACLRTR0MOVR1,TH0MOVR0,TL0AJMP$IT0P:INCR2RETI12THx與TLx(x = 0,1)是普通寄存器還是計數(shù)器?其內(nèi)容可以隨時用指令更改嗎?更改后的新值是立即刷新還是等當前計數(shù)器計滿后才能刷新?答:THx與TLx(x=0,1)是由特殊功能寄存器構(gòu)成的計數(shù)器,其內(nèi)容可以隨時用指令更改,更改后的新值立即刷新。但在讀THx、TLx值時,應該先讀THx值,后讀TLx,再讀THx值。若兩次讀得THx值相同,則
34、可確定讀得的內(nèi)容正確。若前后兩次讀得的THx值有變化,再重復上述過程。七1幀格式為1個起始位,8個數(shù)據(jù)位和1個停止位的異步串行通信方式是方式1。2在串行通信中,收發(fā)雙方對波特率的設定應該是相等的。3下列選項中,對對錯對對是正確的。A串行口通信的第9數(shù)據(jù)位的功能可由用戶定義B發(fā)送數(shù)據(jù)的第9數(shù)據(jù)位的內(nèi)容是在SCON寄存器的TB8位中預先準備好的C串行通信幀發(fā)送時,指令把TB8位的狀態(tài)送入發(fā)送SBUF中D串行通信接收到的第9位數(shù)據(jù)送SCON寄存器的RB8中保存E串行口方式1的波特率是可變的,通過定時器/計數(shù)器T1的溢出率設定4通過串行口發(fā)送或接收數(shù)據(jù)時,在程序中應使用 C。AMOVC指令 BMOVX
35、指令CMOV指令DXCHD指令5串行口工作方式1的波特率是(C)。A固定的,為fosc/32B固定的,為fosc/16C可變的,通過定時器/計數(shù)器T1的溢出率設定D固定的,為fosc/646在異步串行通信中,接收方是如何知道發(fā)送方開始發(fā)送數(shù)據(jù)的?答:當接收方檢測到RXD引腳上的有效的負跳變時,即可知道發(fā)送方開始發(fā)送數(shù)據(jù)。7串行口有幾種工作方式?有幾種幀格式?各種工作方式的波特率如何確定?答:串行口有4種工作方式:方式0、方式1、方式2、方式3。有3種幀格式,方式2和3具有相同的幀格式。方式0的發(fā)送和接收都以fosc/12為固定波特率。方式1的波特率=2SMOD/32×定時器T1的溢出
36、率。方式2的波特率=2SMOD/64×fosc。方式3的波特率=2SMOD/32×定時器T1的溢出率。8假定串行口串行發(fā)送的字符格式為1個起始位、8個數(shù)據(jù)位、1個奇校驗位、1個停止位,請畫出傳送字符“B”(42H)的幀格式。答:傳送的字符“B”的幀格式如圖所示(先低位后高位)。起始位 0 1 0 0 0 0 1 0 校驗位 停止位9 為什么定時器/計數(shù)器T1用作串行口波特率發(fā)生器時,常采用方式2?若已知時鐘頻率、通信波特率,如何計算其初值?答:(1)因為定時器/計數(shù)器在方式2下,初值可以自動重裝,這樣在進行串口波特率發(fā)生器設置時,就避免
37、了重裝參數(shù)的操作,且減少了重裝參數(shù)的誤差。(2)已知時鐘頻率、通信波特率,根據(jù)公式(7-3),即可計算出初值。10 若晶體振蕩器為11.0592MHz,串行口工作于方式1,波特率為4 800bit/s,寫出用T1作為波特率發(fā)生器的方式控制字和計數(shù)初值。答:經(jīng)計算,初值為FAH??刂谱?ANL TMOD,#0F0HORLMOD,#20HMOVTH1,#0FAHMOVTL1,#0FAHMOVSCON,#40H11簡述利用串行口進行多機通信的原理。答:以方式1為例。發(fā)送過程:數(shù)據(jù)位由TXD端輸出,發(fā)送1幀信息為10位,當CPU執(zhí)行1條數(shù)據(jù)寫發(fā)送緩沖器SBUF的指令,就啟動發(fā)送。發(fā)送開始時,內(nèi)部發(fā)送控
38、制信號SEND變?yōu)橛行?,將起始位向TXD輸出,此后,每經(jīng)過1個TX時鐘周期,便產(chǎn)生1個移位脈沖,并由TXD輸出1個數(shù)據(jù)位。8位數(shù)據(jù)位全部輸出完畢后,置1中斷標志位TI,然后SEND信號失效。接收過程:當檢測到起始位的負跳變時,則開始接收。接收時,定時控制信號有2種。其中一種是位檢測器采樣脈沖,它的頻率是RX時鐘的16倍。也就是在1位數(shù)據(jù)期間,有16個采樣脈沖,以波特率的16倍速率采樣RXD引腳狀態(tài),當采樣到RXD端從1到0的跳變時就啟動檢測器,接收的值是3次連續(xù)采樣,取其中2次相同的值,以確認是否是真正的起始位的開始,這樣能較好地消除干擾引起的影響,以保證可靠無誤地開始接收數(shù)據(jù)。12使用AT8
39、9C51的串行口按工作方式1進行串行數(shù)據(jù)通信,假定波特率為2 400bit/s,以中斷方式傳送數(shù)據(jù),請編寫全雙工通信程序。答:請參考教材的P115-P117程序,并作適當改動。13某AT89C51單片機串行口,傳送數(shù)據(jù)的幀格式由1個起始位(0)、7個數(shù)據(jù)位、1個偶校驗和1個停止位(1)組成。當該串行口每分鐘傳送1 800個字符時,試計算出它的波特率。答:串口每秒鐘傳送的字符為1800/60=30個字符/秒,所以波特率為30個字符/秒×10位1個字符=300b/s。14為什么AT89C51單片機串行口的方式0幀格式?jīng)]有起始位(0)和停止位(1)?答:串行口的方式0為同步移位寄
40、存器輸入/輸出方式,常用于外接移位寄存器,以擴展并行I/O口,一般不用于兩個89C51之間的串行通信。該方式以fosc/12的固定波特率從低位到高位發(fā)送或接收數(shù)據(jù)。15直接以TTL電平串行傳輸數(shù)據(jù)的方式有什么缺點?答:優(yōu)點是連線簡單,缺點是抗干擾性能差,傳輸距離短。八1單片機存儲器的主要功能是存儲程序,數(shù)據(jù)。2假設外部數(shù)據(jù)存儲器2000H單元的內(nèi)容為80H,執(zhí)行下列指令后累加器A中的內(nèi)容為80H。MOV P2,#20HMOV R0,#00HMOVX A,R03在存儲器擴展中,無論是線選法還是譯碼法最終都是為擴展芯片的片選端提供 片選 控制信號。4起止范圍為0000H3FFFH的存儲器的容量是1
41、6 KB。5在AT89C51單片機中,PC和DPTR都用于提供地址,但PC是為訪問程序存儲器提供地址,而DPTR是為訪問 數(shù)據(jù)存儲器提供地址。611條地址線可選 2KB個存儲單元,16KB存儲單元需要14條地址線。74KB RAM存儲器的首地址若為0000H,則末地址為0FFFH。8區(qū)分AT89C51單片機片外程序存儲器和片外數(shù)據(jù)存儲器的最可靠方法是 DA看其位于地址范圍的低端還是高端B看其離AT89C51單片機芯片的遠近C看其芯片的型號是ROM還是RAMD看其是與信號連接還是與信號連接9試編寫一個程序(如將05H和06H拼為56H),設原始數(shù)據(jù)放在片外數(shù)據(jù)區(qū)2001H單元和2002H單元中,
42、按順序拼裝后的單字節(jié)數(shù)放入2002H。答:本題主要考察對外部存儲器的讀、寫操作的編程,只要正確使用MOVX指令就可以了。編程思路:首先讀取2001H的值,保存在寄存器A中,將寄存器A的高4位和低4位互換,再屏蔽掉低4位然后將寄存器A的值保存到30H中,然后再讀取2002H的值,保存在寄存器A中,屏蔽掉高4位,然后將寄存器A的值與30H進行“或運算”,將運算后的結(jié)果保存在2002H中。ORG0000HMAIN:MOVDPTR,#2001H;設置數(shù)據(jù)指針的初值MOVXA,DPTR;讀取2001H的值SWAPAANLA,#0F0H;屏蔽掉低4位MOV30H,A;保存AINCDPTR;指針指向下一個片
43、外RAM單元MOVXA,DPTR;讀取2002H的值A(chǔ)NLA,#0FH;屏蔽掉高4位ORLA,30H;進行拼裝MOVXDPTR,A;保存到2002H片外RAM單元END10編寫程序,將外部數(shù)據(jù)存儲器中的4000H40FFH單元全部清“0”。答:本題主要考察對外部數(shù)據(jù)塊的寫操作;編程時只要注意循環(huán)次數(shù)和MOVX指令的使用就可以了。ORG0000HMAIN:MOVA,#0;0給AMOV0,#0FFH;設置循環(huán)次數(shù)MOVDPTR,#4000H;設置數(shù)據(jù)指針的初值LOOP:MOVXDPTR,A;當前單元清“0”INCDPTR;指向下一個單元DJNZR0,LOOP;是否結(jié)束END11在AT89C51單片
44、機系統(tǒng)中,外接程序存儲器和數(shù)據(jù)存儲器共16位地址線和8位數(shù)據(jù)線,為何不會發(fā)生沖突?答:因為控制信號線的不同。 外擴的RAM芯片既能讀出又能寫入,所以通常都有讀、寫控制引腳,記為和,它們分別與89C51的和引腳相連。外擴的EPROM在正常使用中只能讀出,不能寫入,故EPROM芯片沒有寫入控制引腳,只有讀出引腳,記為,該引腳與89C51單片機的相連。12請寫出圖8-14中4片程序存儲器27128各自所占的地址空間。答:圖中采用了譯碼法。4片地址分別為0000H3FFFH、4000H7FFFH、8000HBFFFH、C000HFFFFH。13現(xiàn)有AT89C51單片機、74LS373鎖存器、
45、1片2764 EPROM和兩片6264 RAM,請用它們組成一個單片機應用系統(tǒng),要求如下:(1)畫出硬件電路連線圖,并標注主要引腳;(2)指出該應用系統(tǒng)程序存儲器空間和數(shù)據(jù)存儲器空間各自的地址范圍。答:P135圖8-20,采用線選法P2.5-P2.7分別連片選。14圖8-22(a)所示為AT89C51單片機中存儲器的地址空間分布圖。題圖8-22(b)為存儲器的地址譯碼電路,為使地址譯碼電路按題圖8-22(a)所示的要求進行正確尋址,要求畫出:(1)A組跨接端子的內(nèi)部正確連線圖。(2)B組跨接端子的內(nèi)部正確連線圖。 A B十一 1對于電流輸出的D/A轉(zhuǎn)換器,為了得到電壓的轉(zhuǎn)換結(jié)果,應使用由運算放大器構(gòu)成的I/V轉(zhuǎn)換電路。2使用雙緩沖同步方式的D/A轉(zhuǎn)換器,可實現(xiàn)多路模擬信號的同步輸出。3判斷下列說法是否正確 錯對錯對。(1)“轉(zhuǎn)換速度”這一指標僅適用于A/D轉(zhuǎn)換器,D/A轉(zhuǎn)換器不用考慮“轉(zhuǎn)換速度”問題。(2)ADC0809可以利用“轉(zhuǎn)換結(jié)束”信號EOC向AT89C51單片機發(fā)出中斷請求。(3)輸出模擬量的最小變化量稱為A/D轉(zhuǎn)換器的分辨率。(4)對于周期性的干擾電壓,可使用雙積分型A/D轉(zhuǎn)換器
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版板車運輸與物流設備租賃合同3篇
- 2025年度個人商鋪轉(zhuǎn)讓合同范本4篇
- 二零二五白蟻防治與建筑安全評估與隱患排查服務合同2篇
- 2025版企業(yè)間無利息貸款合同范本3篇
- 二零二五版國防信息安全保密責任書2篇
- 2025年度綠色苗圃場技術(shù)員專項技能聘用協(xié)議4篇
- 二零二五年攪拌站混凝土生產(chǎn)過程監(jiān)控與優(yōu)化合同3篇
- 2025年度網(wǎng)絡安全代理合作保密協(xié)議書3篇
- 2025版信托投資公司教育產(chǎn)業(yè)借款合同3篇
- 2025年度個人現(xiàn)金貸合同模板3篇
- 消防產(chǎn)品目錄(2025年修訂本)
- 地方性分異規(guī)律下的植被演替課件高三地理二輪專題復習
- 光伏項目風險控制與安全方案
- 《行政職業(yè)能力測驗》2023年公務員考試新疆維吾爾新疆生產(chǎn)建設兵團可克達拉市預測試題含解析
- 醫(yī)院投訴案例分析及處理要點
- 練習20連加連減
- 五四制青島版數(shù)學五年級上冊期末測試題及答案(共3套)
- 商法題庫(含答案)
- 鋼結(jié)構(gòu)用高強度大六角頭螺栓連接副 編制說明
- 溝通與談判PPT完整全套教學課件
- 移動商務內(nèi)容運營(吳洪貴)項目四 移動商務運營內(nèi)容的傳播
評論
0/150
提交評論