




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、單片機原理及應(yīng)用作業(yè)參考答案12 單片機的結(jié)構(gòu)特點表現(xiàn)在哪些主要方面?答:(1)在存儲器結(jié)構(gòu)上,嚴格將程序存儲器和數(shù)據(jù)存儲器在空間上分開,并使用不同的尋址方式,使用兩個不同的地址指針; (2)在內(nèi)部有一個全雙工的串行接口; (3)有一個獨立進行操作的位處理器。14 通用單片機的供應(yīng)狀態(tài)主要取決于什么?供應(yīng)狀態(tài)有哪幾種?用戶選用單片機的供應(yīng)狀態(tài)的原則是什么?答:通用單片機的供應(yīng)狀態(tài)主要取決于片內(nèi)ROM的配置狀態(tài)。(1)片內(nèi)ROM的配置狀態(tài)掩膜ROM,適合于低成本。大批量產(chǎn)品的場合(2)片內(nèi)EPROM配置狀態(tài)可通過高壓脈沖寫入應(yīng)用程序到EPROM,適合于開發(fā)樣機,小批量生產(chǎn)。(3)片內(nèi)無ROM配置
2、狀態(tài)必須外擴EPROM,價格低,使用靈活,適合于需要外接能在現(xiàn)場進行修改和更新程序存儲器的應(yīng)用場合。23 單片機的端有何功用?8031的端應(yīng)如何處理,為什么?答:端是訪問外部程序存儲器的控制信號:當無效時,訪問內(nèi)部ROM,當為有效時,訪問外部ROM。由于8031沒有內(nèi)部ROM,所以端必須接低電平。24 MCS51引腳中有多少I/O線?它們與單片機對外的地址總線、數(shù)據(jù)總線和控制總線有什么關(guān)系?地址總線和數(shù)據(jù)總線各是幾位?2 / 27答:MCS-51引腳中有32根I/O線,一般由P0口提供單片機對外的數(shù)據(jù)總線,同時作為分時復(fù)用的地址總線的低8位,由P2口作為地址總線的高8位,控制總線由第二功能的狀
3、態(tài)下的P3口以及RST、ALE和提供。25 8051單片機的內(nèi)部數(shù)據(jù)存儲器可以分為哪幾個不同的區(qū)域?各有什么特點?答:數(shù)據(jù)存儲器主要分為兩個區(qū)域:00H7FH是真正的RAM區(qū),80HFFH專門用作特殊功能寄存器的區(qū)域。其中00H7FH可分為三個區(qū)域:00H1FH為四組工作寄存器;20H2FH為128位位尋址區(qū),30H7FH為一般RAM區(qū)。26 單片機對外有幾條專用控制線?其功能是怎樣的?答:單片機對外的專用控制線有4條,分別是:(1): 外部取指操作,在訪問外部ROM時,信號自動產(chǎn)生;(2)ALE/:ALE為地址鎖存允許信號,在訪問外部ROM或RAM時,用來鎖存P0口的低8位地址。第二功能是對
4、8751的EPROM編程時,編程脈沖輸入。(3)/VPP:是訪問外部程序存儲器的控制信號,無效時,訪問內(nèi)部ROM,有效時,訪問外部ROM,第二功能VPP為對8751EPROM的21V編程電源輸入。(4)RST/VPD:RST是復(fù)位信號輸入端,第二功能VPD是備用電源輸入端。28 有哪幾種方法使單片機復(fù)位?復(fù)位后各寄存器、RAM中的狀態(tài)如何?答:單片機的復(fù)位方式有兩種,上電自動復(fù)位和按鈕復(fù)位。復(fù)位后各寄存器狀態(tài)為:PC0000HACC00HPSW00HSP07HDPTR0000HP0P3FFHIPXX000000B IE 0X000000BTMOD00HTCON 00H TL000HTH000H
5、TL100HTH100HSCON 00HSBUFXXHPCON0XXX0000B29 在8051擴展系統(tǒng)中,片外程序存儲器和片外數(shù)據(jù)存儲器使用相同的地址編址,是否會在數(shù)據(jù)總線上出現(xiàn)爭總線的現(xiàn)象?為什么?答:不會發(fā)生爭總線的現(xiàn)象,因為從外部ROM取指令需要用ALE和信號控制讀取操作,由P2和P0提供地址;而片外數(shù)據(jù)存儲器的讀寫除了地址之外還要、控制,所以不會爭總線。210 如果8051端口P0P3作為通用I/O口使用,則在輸入引腳數(shù)據(jù)時應(yīng)注意什么?答:8051的P1、P2和作為一般輸入I/O口的P以及第一功能的P3口均為準雙向口,在輸入數(shù)據(jù)時應(yīng)先向端口寫1,然后方可作為高阻輸入。以使其場效應(yīng)管T
6、2截止,才不會影響輸入電平。32 若要完成以下的數(shù)據(jù)傳送,應(yīng)如何用MCS-51的指令實現(xiàn)?(1)R1的內(nèi)容傳送到R0 MOV A,R1 MOV R0,A (2)外部RAM20H單元的內(nèi)容傳送到R0MOV R0,#20HMOVX A,R0MOV R0,A(3)外部RAM20H單元的內(nèi)容傳送到內(nèi)部RAM20H單元MOV R0,#20HMOVX A,R0MOV 20H,A(4)外部RAM1000H單元內(nèi)容傳送到內(nèi)部RAM20H單元MOV DPTR,#1000HMOVX A,DPTRMOV 20H,A(5)ROM2000H單元的內(nèi)容傳送到R0MOV DPTR,#2000HCLR AMOVC A,A+D
7、PTRMOVR0,A(6)ROM2000H單元的內(nèi)容傳送到內(nèi)部RAM20H單元MOV DPTR,#2000HCLR AMOVC A,A+DPTRMOV 20H,A(7)ROM2000H單元的內(nèi)容傳送到外部RAM20H單元MOV DPTR,#2000HCLR AMOVC A,A+DPTRMOV R0,#20HMOVX R0,A33 間接轉(zhuǎn)移指令JMP A+DPTR有何優(yōu)點?為什么它能代替眾多的判跳指令?試舉例說明。答:該間接轉(zhuǎn)移指令的轉(zhuǎn)移地址由A的內(nèi)容和數(shù)據(jù)指針DPTR的內(nèi)容之和決定,且兩者都是無符號數(shù),由DPTR決定多分支轉(zhuǎn)移程序的首地址,由A的不同值實現(xiàn)多分支轉(zhuǎn)移。因為可以根據(jù)A的內(nèi)容進行分
8、支轉(zhuǎn)移,所以可以替代眾多判跳指令。如:根據(jù)A的內(nèi)容調(diào)用相應(yīng)的程序,如A為0調(diào)用OP0,A為1調(diào)用OP1,這里A的值小于128。MOVDPTR,#OPTABRLAJMPA+DPTROPTAB:ACALL OP0ACALL OP1ACALL OP2 34 設(shè)內(nèi)部RAM的30H單元的內(nèi)容為40H,即(30H)40H,還知(40H)10H,(10H)00H,端口P10CAH。問執(zhí)行以下指令后,各有關(guān)存儲器單元、寄存器以及端口的內(nèi)容(即R0、R1、A、B、P1以及40H、30H、10H單元的內(nèi)容)。MOV R0,#30H ;(R0)30HMOV A,R0 ;(A)(30H)40HMOV R1,A ;(R
9、1)40HMOV B,R1 ;(B)(40H)10HMOV R1,P1 ;(40H)0CAHMOV P2,P1 ;(P2)0CAHMOV 10H,#20H ;(10H)20HMOV 30H,10H ;(30H)20H35 已知8751單片機的P1口為輸出,經(jīng)驅(qū)動電路接有8只發(fā)光二極管。當輸出位是1時,發(fā)光二極管點亮;輸出位是0時發(fā)光二極管熄滅。試分析下述程序的執(zhí)行過程及發(fā)光二極管的發(fā)光情況。LP:MOVP1,#81H;1000 0001BLCALLDELAYMOV P1,#42H;0100 0010BLCALLDELAYMOV P1,#24H;0010 0100BLCALLDELAYMOV P
10、1,#18H;0001 1000BLCALLDELAYMOV P1,#24H;0010 0100BLCALLDELAYMOV P1,#42H;0100 0010BLCALLDELAYSJMPLP答:程序執(zhí)行MOV P1,#DATA后,根據(jù)DATA的每位的值點亮相應(yīng)的LED,調(diào)用延時程序使點亮的LED保持一段時間。LED發(fā)光的情況為:每次同時點亮兩個LED并從兩邊向中間移動,然后再向兩邊移動,并一直循環(huán)。36 在上題中,若系統(tǒng)的晶體振蕩器頻率為6MHz,求子程序DELAY的延時時間。DELAY: MOV R2,#0FAH ;2SL1: MOV R3,#0FAH ;2SL2: DJNZ R3,L2
11、 ;4S DJNZ R2,L1 ;4S RET ;4S0FAH250D其中執(zhí)行250次,執(zhí)行時間為250×4S其中循環(huán)250次,該循環(huán)執(zhí)行時間為(2250×44)×250S加上和的執(zhí)行時間,DELAY的延時時間為2(2250×44)×2504251.506ms延時程序的設(shè)計:首先設(shè)計內(nèi)循環(huán):MOVR3,#data1;2sNOP;2sDJNZR3,$;4s×data1延時時間t1224×data14×(data11)1000s1ms,則data1249若需要大于1ms時間,則先增加一層循環(huán) MOVR2,#data2;
12、2sL1:MOVR3,#data1;2sNOP;2sDJNZR3,$;4s×data1DJNZR2,L2;(4st1)×data2延時時間為:2(4st1)×data224s4×(data11)×data224×(data12)×data2250ms,這里將data1修正為248,得24×(2482)×data221000×data2250ms則data225037 根據(jù)圖3-3線路,試設(shè)計燈亮移位程序,使8只發(fā)光二極管每次亮一個,循環(huán)右移或左移,一個一個地亮,循環(huán)不止。MOV A,#80H D
13、IS:MOV P1,AACALL DELAYRR AAJMP DIS38 設(shè)邏輯運算表達式為: 其中變量A,B,C分別為P1.0、P1.4、定時器1溢出標志TF1,D,E,F(xiàn)分別為22H.0、22H.3、外中斷方式標志IE1;輸出變量為P1.5。試編寫實現(xiàn)上述邏輯功能的程序段。MOV C,P1.4ORL C,/TF1 ;ANL C,P1.0 ;MOV F0,A ;用戶自定義標志位,暫存數(shù)據(jù)MOV C,22H.3ORL C,/IE1 ;ANL C,22H.0 ;CPL C ;ORL C,/F0 ;MOV P1.5,C41 試設(shè)計數(shù)據(jù)塊傳送程序,將起始地址為0400H的100個連續(xù)單元中的內(nèi)容送到
14、以4000H為首址的區(qū)域中去解:分析:地址為16位,且進行數(shù)據(jù)傳送,所以連續(xù)單元應(yīng)為外部的存儲器,只能使用外部數(shù)據(jù)傳送指令,由于源和目的地址都為16位,所以要保存DPTR的值,但源低8位和目的低8位相同,可以用一個寄存器保存。MOV R0,#00NEXT: MOV DPH,#04HMOV DPL,R0MOVX A,DPTRMOV DPH,#40HMOVX DPTR,AINC R0 CJNE R0,#100,NEXT42 試編寫程序,計算片內(nèi)RAM區(qū)40H47H8個單元中數(shù)的算術(shù)平均值,結(jié)果存放在4AH中。解:分析:8個數(shù)總和最大值為FFH×87F8H,所以求和時必須用兩字節(jié)加法,設(shè)R
15、7保存和高8位,R6保存低8位,求和后再除以8即得算術(shù)平均值,這里需使用16/8除法,但因為除數(shù)為23,所以可以直接通過算術(shù)右移3位實現(xiàn)除以8,前提存儲的數(shù)據(jù)為無符號數(shù)。MOVR0,#40HMOVR6,#00H;和低字節(jié)清零MOVR7,#00H;和高字節(jié)清零NEXT : MOVA,R0;取出一個字節(jié)INCR0;地址指針下移ADDA,R6;低字節(jié)求和MOVR6,A;保存和的低字節(jié)CLRAADDCA,R7;如果低字節(jié)求和有進位,則加至高字節(jié)MOVR7,A;保存和的高字節(jié)CJNER0,#48H,NEXTMOVR1,#03H;循環(huán)移位3次,實現(xiàn)除以8DIV8: CLRCMOVA,R7RRCA;高字節(jié)先
16、移位,將D0移至CMOVR7,AMOVA,R6RRCA;將C移入低字節(jié)的D7,從而實現(xiàn)16位數(shù)據(jù)的移位MOVR6,ADJNZR3,DIV816位除以8位除法子程序:被除數(shù)R6R5,除數(shù)R4,商R3R2,余數(shù)R1DIV168: MOV R3,#00H MOV R1,#00HNEXT2: CLR C MOV A,R5 SUBB A,R4 MOV R5,A MOVA,R6 SUBB A,#00H MOV R6,A JC NEXT MOV A,R2 ADD A,#01H MOV R2,A JNC NEXT2 INC R3 AJMP NEXT2NEXT: MOV A,R5 ADD A,R4 MOV R1
17、,ARET43 設(shè)有兩個長度為15的數(shù)組,分別存放在0200H和0500H為首地址的存儲區(qū)域中,試編寫程序求其對應(yīng)項之和,結(jié)果存放在以0300H為首地址的存儲區(qū)域中。解:分析:0200H和0500H都是片外地址,必須利用MOVX指令獲取數(shù)據(jù),這將導(dǎo)致DPTR使用不方便,解決辦法:(1)0200H,0500H和0300H低字節(jié)地址相同,可以共用DPL,DPH單獨處理;(2)可以考慮先將兩個存儲區(qū)的數(shù)據(jù)先轉(zhuǎn)移到內(nèi)部RAM中,然后再進行運算。這里只是求對應(yīng)項之和,并不是多位數(shù)求和,兩數(shù)相加,可能產(chǎn)生進位,這里應(yīng)該只考慮沒有進位的情況。這里采用第一種方法 MOVR0,#15MOV DPL,#00HNE
18、XT: MOVDPH,#02HMOVXA,DPTRMOVB,AMOVDPH,#05HMOVX A,DPTRADDA,BMOV DPH,#03HMOVXDPTR,AINCDPTRDJNZR0,NEXT44 在起始地址為2100H,長度為64的數(shù)表中找F的ASCII碼,并將其地址送到1000H和1001H單元中去。解:都為RAM單元,只要找到“F”,則停止查找。利用寄存器R7保存高8位地址,R6保存低8位地址。SF: MOV DPTR,#2100HMOV R0,#64NEXT1:MOVX A,DPTRCJNE A,#4FH,NEXT2MOVR7,DPHMOVR6,DPLMOV DPTR,#1000
19、HMOVA,R6MOVX DPTR,AINC DPTRMOVA,R7MOVX DPTR,AAJMP SFENDNEXT2:INCDPTRDJNZ R0,NEXT1SFEND: RET45 設(shè)計一個多字節(jié)無符號數(shù)加法子程序和減法子程序。解:(1)多字節(jié)無符號數(shù)加法設(shè)R0為加數(shù)首地址,R1為被加數(shù)首地址,R2為字節(jié)數(shù)JIAFA: CLR CNEXT: MOV A,R0ADDC A,R1MOV R0,AINC R0INC R1DJNZ R2,NEXTRET(2)多字節(jié)無符號數(shù)減法設(shè)R0為被減數(shù)首地址,R1為減數(shù)首地址,R2為字節(jié)數(shù)JIANFA: CLR CNEXT: MOV A,R0SUBB A,R
20、1MOV R0,AINC R0INC R1DJNZ R2,NEXTRET46 試設(shè)計一個雙字節(jié)無符號數(shù)乘法子程序和除法子程序。解:設(shè)被乘數(shù)為R7R6,乘數(shù)為R5R4,結(jié)果存于R3R2R1R0設(shè)被除數(shù)為R7R6,除數(shù)為R5R4,商存于R3R2,余數(shù)存于R1R0將被除數(shù)減除數(shù),夠減商加1,然后將差作為被減數(shù),繼續(xù)前面的減法操作,直到不夠減為止,這時需要恢復(fù)余數(shù)。MUL1616:MOVA,R6MOVB,R4MULABMOVR0,AMOVR1,BMOVA,R7MOVB,R4MUL ABADDA,R1MOVR1,AMOVA,BADCA,#0MOVR2,AMOVA,R6MOV B,R5MULABADDA,
21、R1MOVR1,AMOVA,BADCA,R2MOVR2,AMOVA,R7MOVB,R5MULABADDA,R2MOVR2,AMOVA,BADCA,#0MOVR3,ARETDIV1616:MOVDPTR,#0LOOP:CLRCMOVA,R6SUBBA,R4MOVR4,AMOVA,R7SUBBA,R5MOVR7,AJCNEXTINCDPTRJMPLOOPNEXT:MOVA,R6ADD A,R4MOVR0,AMOVA,R7ADCA,R5MOVR1,AMOVA,DPHMOVR3,AMOVA,DPLMOV R2,ARET47 在3000H為首的存儲器區(qū)域中,存放著14個由ASCII碼表示的09之間的數(shù),
22、試編寫程序?qū)⑺鼈冝D(zhuǎn)換成BCD碼,并以壓縮BCD碼的形式存放在2000H2006H單元中。解:09的ASCII碼為30H39H,首先必須去掉其中的3,可以通過減去30H實現(xiàn),也可通過ANL實現(xiàn)。另外還得將兩個BCD碼壓縮成一個BCD碼,注意低地址對應(yīng)低字節(jié),比如3000H為31H(低字節(jié)),3001H為38H(高字節(jié)),合并后應(yīng)為81H,存于2000H單元,可利用ORL或ADD進行合并。由于涉及到源和目的地址都為16位,為了方便操作,現(xiàn)將轉(zhuǎn)換結(jié)果存于內(nèi)部RAM。MOV R0,#30HMOVR1,#14MOV DPTR,#3000HNEXT: MOVX A,DPTR ;取出低字節(jié)INC DPTR
23、;源區(qū)地址指針下移ANL A,#0FH ;低字節(jié)轉(zhuǎn)換為BCD碼MOV R4,A ;暫存數(shù)據(jù)MOVX A,DPTR ;取出高字節(jié)INCDPTRANL A,#0FH ;高字節(jié)轉(zhuǎn)換為BCD碼SWAP A ;高低四位互換ORL A,R4 ;將兩個BCD碼合并MOVR0,AINCR0CJNER1,#37H,NEXTMOVR0,#30HMOVDPTR,#2000HNEXT2:MOVA,R0INCR0MOVXDPTR,AINCDPTRCJNER0,#37H,NEXT248 編寫一段程序,模擬如圖所示的邏輯電路的邏輯功能,要求將四個輸入與非門的邏輯模擬先寫成一個子程序,然后以多次調(diào)用得到整個電路的功能模擬。設(shè)
24、X、Y、Z和W都已定義為位地址,若程序中還需要其他地址標號,也可以另行定義。解:方法一:設(shè)計四輸入與非門子程序,利用子程序必定要傳遞參數(shù),但位操作的傳送指令必須由C完成,所以調(diào)用子程序時參數(shù)傳遞較復(fù)雜。MOVC,WMOV 00H,CMOVC,ZCPL CMOV01H,CMOVC,YMOV 02H,CMOVC,XMOV 03H,CACALLNAND4MOV04H,CSETB00HMOVC,XMOV 01H,CMOVC,YMOV 02H,CMOVC,ZMOV 03H,CACALLNAND4MOV05H,CSETB00HMOVC,XMOV 01H,CCPL01HMOVC,YCPL CMOV 02H,
25、CMOVC,WMOV 03H,CACALLNAND4SETB00HMOV01H,CMOVC,04HMOV02H,CMOVC,05HMOV03H,CACALLNAND4MOVF,CAJMP $NAND4:MOV C,00HANLC,01HANLC,02HANLC,03HCPLCRETEND方法二:利用宏實現(xiàn)MACRO,宏可以帶參數(shù),所以參數(shù)傳遞將很方便NAND4 MACRO A1,A2,A3,A4MOV C,A1ANLC,A2ANLC,A3ANLC,A4CPLCENDMORG 0000HAJMP MAINORG 0030HMAIN: MOV C,Z CPL C MOV ONE,C NAND4 X
26、,Y,ONE,W MOV 04H,C SETB ONE NAND4 X,Y,ONE,W MOV 05H,C CPL Y SETB ONE NAND4 X,Y,ONE,W MOV 06H,C SETB ONE NAND4 04H,05H,06H,ONE MOV F,C53已知8051單片機系統(tǒng)時鐘頻率為6MHz,試利用定時器T0和P1口輸出矩形脈沖,其波形如圖所示(建議用方式2)。解:定時器T0的工作方式:方式2,定時方式,所以TMOD為:0000010(02H) 定時初值:(28TH0初值)×時鐘周期×12(28X)×(1/6M)×1240s X2360
27、ECH,360s則為9次定時中斷MOV TMOD,#02HMOV TH0,#0ECHMOV TL0,#0ECHCLR P1.0SETB TR0NEXT3: MOV R0,#09HSETB P1.0JNB TF0,$CLRTF0NEXT1: CLR P1.0WAIT2: JNB TF0,$CLRTF0DJNZ R0,WAIT2AJMP NEXT354 要求8051單片機定時器的定時值以內(nèi)部RAM的20H單元的內(nèi)容為條件而改變;當(20H)00H時,定時值為10ms;當(20H)01H時,定時值為20ms。請根據(jù)以上要求編寫相應(yīng)程序。解:采用定時器T0,工作方式:方式1,定時方式,所以TMOD為:
28、0000001(01H) 定時初值:(216T0初值)×時鐘周期×12(216X)×(1/6M)×12(216X)2s10(20H)+11000s (這里20H單元的內(nèi)容最大為12,否則超出16為定時器的范圍)TIMER:MOV A,20HMOV B,#88HMUL AB ;88H×(20H)MOV R0,A ;R0保存低字節(jié)MOV R1,B ;R1保存高字節(jié)MOV A,20HMOV B,#13HMUL AB ;13H×(20H)ADD A,R1MOV R1,A ;只要限制20H單元內(nèi)容小于13,1388H×(20H)即為兩
29、字節(jié)CLR CMOV A,78HSUBB A,R0 ;78H減去1388H×(20H)的低字節(jié)MOV TL0,AMOV A,#0ECHSUBB A,R1 ;ECH減去1388H×(20H)的高字節(jié)MOV TH0,AMOV TMOD,#01HSETB TR0WAIT: JNB TF0,WAIT RET ;定時時間到上述定時初值的設(shè)置適合(20H)為00H12H,即可以實現(xiàn)10ms190ms的定時。若僅僅是10ms和20ms兩種情況,初值設(shè)置將更簡單 TIMER:MOVA,20HCJNEA,#00H,NEXT1MOVTH0,#0ECHMOVTL0,#78HAJMPNEXT2NE
30、XT1:CJNEA,#01H,NEXT2MOVTH0,#0D8HMOVTL0,#0F0HNEXT2:MOV TMOD,#01H;T0工作方式SETB TR0WAIT: JNB TF0,WAIT RET ;定時時間到55 試用定時器T1設(shè)計外部事件計數(shù)器。要求每計數(shù)1萬個脈沖,就將T1轉(zhuǎn)為10ms定時方式,當定時到后,又轉(zhuǎn)為計數(shù)方式,如此反復(fù)循環(huán)不止。設(shè)系統(tǒng)的時鐘頻率為6MHz,建議選用方式1編寫相應(yīng)程序。解:T1工作方式為方式1,計數(shù)方式:TMOD:01010000(50H),定時方式:TMOD:00010000(10H) 計數(shù)初值XM計數(shù)模值655361000055536D8F0H 定時初值
31、(65536X)×210000,X60536EC78HMAIN: MOV TMOD,#50HMOV TL1,#0F0HMOV TH1,#0D8HSETB TR1WAIT1: JBC TF1,NEXT1 AJMP WAIT1NEXT1:MOV TMOD,#10HMOV TL1,#78H MOV TH1,#0ECHWAIT2: JBC TF1,MAIN AJMP WAIT257 利用8051單片機定時器測量某正脈沖寬度寬度,采用何種工作方式可以獲得最大的量程?若時鐘頻率為6MHz,則允許測量的最大脈寬是多少?解:要獲得最大量程,那么定時/計數(shù)器的計數(shù)值必須達到最大,只有方式1是工作在16
32、位計數(shù)模式。因為測脈寬,所以定時/計數(shù)器工作于定時方式,且由外部中斷引腳電平啟動定時。最大定時時間為:(MX)×T(655360)×12×1/6MHz131.072ms73 某異步通訊接口,其幀格式由一個起始位,7個數(shù)據(jù)位,1個奇偶校驗位和一個停止位組成。當該接口每分鐘傳送1800個字符時,計算其傳送波特率。解:由幀格式可知:一個字符由171110位組成,波特率1800×10/60300波特。76 為什么定時器T1用作串行口波特率發(fā)生器時常采用工作方式2?若已知T1設(shè)置成方式2,用作波特率發(fā)生器,系統(tǒng)時鐘頻率為11.0592MHz,求可能產(chǎn)生的最高和最低
33、的波特率各是多少?答:因為定時器T1的方式2為自動重裝定時初值,這樣操作方便,也避免了因重裝定時初值引起的定時誤差。由波特率當初值為0,SMOD0時,得到最低波特率112.5當初值為255,SMOD1時,得到最低波特率57.6K77在8051應(yīng)用系統(tǒng)中,時鐘頻率為6MHz。現(xiàn)需利用定時器T1方式2產(chǎn)生1200波特的波特率。試計算定時器的初值,并指出實際得到的波特率與所要求的波特率是否有誤差。解:根據(jù)波特率計算公式當SMOD0時,初值為243,此時實際的波特率為:1201.92當SMOD1時,初值為230,此時實際的波特率為:1201.92所以實際波特率與要求的波特率有誤差。78 試設(shè)計一個80
34、51單片機的雙機通訊系統(tǒng),并編寫程序?qū)機片內(nèi)RAM40H5FH的數(shù)據(jù)塊通過串行口傳送B機的片內(nèi)RAM 60H7FH中去。解:該雙機通訊系統(tǒng),是將A機數(shù)據(jù)發(fā)送到B機,所以可以采用單工工作方式串行口采用方式1 10位異步收發(fā),采用查詢方式A機:發(fā)送MOVTMOD,#20HMOVTL1,#0F3HMOVTH1,#0F3HSETBTR1MOVSCON,#40HMOVR0,#40HCLRTINEXT:MOVA,R0INC R0MOVSBUF,AJNBTI,$CJNE R0,#60H,NEXTAJMP$B機:接收MOVTMOD,#20HMOVTL1,#0F3HMOVTH1,#0F3HSETBTR1MOV
35、SCON,#50HMOVR0,#60HNEXT:CLRRIJNBRI,$MOVA,SBUFMOVR0,AINC R0CJNE R0,#80H,NEXTAJMP$81 8051有幾個中斷源,各中斷標志是如何產(chǎn)生的,又是如何復(fù)位的?CPU響應(yīng)中斷時其中斷入口地址各是多少?答:8051有5個中斷源,分別是外部中斷0,定時器T0中斷,外部中斷1,定時器T1中斷,串行口中斷。中斷入口地址分別為0003H,000BH,0013H,001BH,0023H。定時器中斷標志TF1和TF0是當計數(shù)器溢出時產(chǎn)生的,CPU響應(yīng)中斷時能自動清除;外部中斷IE1和IE0則是根據(jù)外部INT1和INT0的變化產(chǎn)生的,只有邊沿方式的IE1和IE0能在響應(yīng)中斷是自動清除,電平方式的只能軟件清除;串行口中斷標志RI,TI是在串行口接收和發(fā)送是產(chǎn)生的,它們只能利用軟件清除。83 如何區(qū)分串行通訊中的發(fā)送中斷和接收中斷?答:串行通訊中,發(fā)送和接收中斷共用一個中斷入口地址,但可以通過RI和TI標志判斷是哪種
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 山東省濟南市萊蕪區(qū)市級名校2024-2025學(xué)年初三下學(xué)期第五次模擬考試語文試題含解析
- 臨床免疫學(xué)檢驗課件 第17章 補體的檢測及應(yīng)用學(xué)習(xí)資料
- 山東菏澤市曹縣重點中學(xué)2024-2025學(xué)年初三復(fù)習(xí)統(tǒng)一檢測試題數(shù)學(xué)試題含解析
- 廊坊師范學(xué)院《材料電化學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 遼寧省沈陽市實驗北重點名校2025年第二次高中畢業(yè)生復(fù)習(xí)統(tǒng)一檢測試題生物試題含解析
- 陜西西安市愛知中學(xué)2025年初三第二次診斷性考試數(shù)學(xué)試題含解析
- 二零二五應(yīng)聘護士勞動的合同
- 年薪合同書協(xié)議書二零二五年
- 二零二五產(chǎn)品設(shè)計合同書范例
- 二零二五版正式正規(guī)離婚協(xié)議書
- 江南美術(shù)遺產(chǎn)融入美育的數(shù)智化路徑探索
- 診所醫(yī)療質(zhì)量相關(guān)管理制度
- 西雅圖駕駛證考題及答案
- 綜合執(zhí)法考試試題及答案
- 軟式內(nèi)鏡消毒管理與質(zhì)量標準
- (高清版)DB11∕T2324-2024腳手架鋼板立網(wǎng)防護應(yīng)用技術(shù)規(guī)程
- DBJ50T-284-2018 工程勘察信息模型設(shè)計標準
- 無人機吊裝作業(yè)安全措施
- 2012年7月國家開放大學(xué)專本科《法律文書》期末紙質(zhì)考試試題及答案
- 《永輝超市營運能力現(xiàn)狀、問題及優(yōu)化建議探析》10000字【論文】
- 統(tǒng)編版語文六年級下冊第一單元“民風(fēng)民俗”作業(yè)設(shè)計
評論
0/150
提交評論