版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、單片機考試復(fù)習(xí)大綱-(有答案)填空題MCS-51 的P0口作為輸出端口時,每位能夠驅(qū)動8個LSTTL負(fù)載。MCS-51有四個并行I/O口,其中p1p3是準(zhǔn)雙向口,所以由輸出轉(zhuǎn)輸入時必須寫入1。MCS-51有四組工作存放器,他們的地址范圍是00H1FHMCS-51 片內(nèi)20H2FH范圍內(nèi)的數(shù)據(jù)存儲器,既可以字節(jié)尋址又可以位尋址。假設(shè)用傳送指令訪問MCS-51的程序存儲器,它的指令是MOVC.假設(shè)用傳送指令訪問MCS-51的片內(nèi)數(shù)據(jù)存儲器,它的指令是MOV.指令是通知計算機完成某種操作的命令匯編語言中可以使用偽指令,它不是真正的指令,只是用來對匯編過程進行某種控制.MCS-51串行接口有四種工作方
2、式,可以在初始化程序中用軟件填寫SCON特殊功能存放器加以設(shè)定。MCS-51有5個中斷源,有兩個中斷優(yōu)先級,優(yōu)先級由軟件填寫特殊功能存放器IP加以設(shè)定。累加器A=80H,執(zhí)行完指令A(yù)DD A,#83后,進位位C1_.執(zhí)行完指令 ANL A,#0FH后,累加器的高四位0000. 累加器A=7EH,(20H)=#04H,執(zhí)行完ADD A,20H后 PSW.0_0.ORL A,#0F0H是將A的高四位置1,而低四位不變.設(shè)DPTR= 2000H, (A)= 80H,那么MOVC A,A + DPTR的操作數(shù)的實際地址為2080H_一個十進制數(shù)一47用8位二進制補碼表示為11010001B_單片機中最
3、常用的字符信息編碼是ASC碼要串口為10位UART,工作方式應(yīng)選為方式1用串口擴并口時,串行接口的工作方式應(yīng)選為方式方式0在串行通信中有數(shù)據(jù)傳送方向單工,_半雙工,全雙工三種方式。一個機器周期=12節(jié)拍、一個機器周期=l2個振蕩周期,一個振蕩周期=1節(jié)拍。8051在物理上有4個獨立的存儲器空間。外部中斷INT1的入口地址為0013H8051含4 KB掩膜ROM, 8751是EPROM型,內(nèi)含4 KB EPROM, 8031是無型號 MCS一51中,TO中斷效勞程序入口地址為000BH.執(zhí)行當(dāng)前指令后PC內(nèi)容為下一條將要讀取的指令碼首地址MOV C,20H源尋址方式為位尋址INC不影響CY位。指
4、令LCALL 37B0H,首地址在2000H,所完成的操作是2023H_入棧,37B0HPCMOVX A, DPTR的源操作數(shù)尋址方式為存放器間接尋址8051的中斷有_2_個優(yōu)先級。8051中斷嵌套最多2級。外中斷請求標(biāo)志位是IE0和IE1。MCS - 51單片機片內(nèi)RAM的存放器區(qū)共有個32單元,分為_4_組存放器,每組_8_個單元,以_R7R0_作為存放器名稱。單片機系統(tǒng)復(fù)位后,PSW =00H,因此片內(nèi)RAM存放區(qū)的當(dāng)前存放器是第_0_組,8個存放器的單元地址為_00H_-_07H_.在MCS - 51中PC和DPTR都用于提供地址,但PC是為訪問程序_存儲器提供地址,而DPTR是為訪問
5、_數(shù)據(jù) 存儲器提供地址。在位操作中,能起到與字節(jié)操作中累加器作用的是 CY 累加器A中存放著一個其值小于或等于127的8位無符號數(shù),CY清“0后執(zhí)行RLC A指令,那么A中數(shù)變?yōu)樵瓉淼?2 倍。計算機的數(shù)據(jù)傳送有兩種方式,即并行方式和串行方式,其中具有本錢低特點的是串行數(shù)據(jù)傳送。異步串行數(shù)據(jù)通信的幀格式由_起始_位、數(shù)據(jù)_位、_奇偶校驗位_和停止位位組成。異步串行數(shù)據(jù)通信有單工、全雙工、和半雙工共三種傳送方向形式。使用定時器T1設(shè)置串行通信的波特率時,應(yīng)把定時器TI設(shè)定為自動重裝載工作模式。假定A56,R567。執(zhí)行指令: ADD A,R5 DA A 后,累加器A的內(nèi)容為00100011B ,
6、 CY的內(nèi)容為144. 假定A=0FH,R7=19H,30H=00HR1=40H,40H=0FFH。執(zhí)行指令: DEC A DEC R7 DEC 30H EEC R1后,累加器A的內(nèi)容為0EH_,R7的內(nèi)容為18H_30H的內(nèi)容為0FFH,40H的內(nèi)容為0FEH45.假定A=50H,B=0A0H。執(zhí)行指令: MULAB后,存放器B的內(nèi)容為32H,累加器A 00H的內(nèi)容為,CY的內(nèi)容為 0 ,OV的內(nèi)容為_1 46.假定A=0FBH,B=12H。執(zhí)行指令: DIV AB后累加器A的內(nèi)容為0DH ,存放器B的內(nèi)容為11H ,CY的內(nèi)容為0 ,OV的內(nèi)容為0 47.假定A =0C5H。執(zhí)行指令: S
7、WAP A后累加器A的內(nèi)容為5CH 48. DITR是MCS-51中惟一個16位存放器,在程序中常用來作為MOVC指令訪問程序存儲器的_基址存放器_使用。49堆棧設(shè)在片內(nèi)數(shù)據(jù)_存儲區(qū)、程序存放在_程序_存儲區(qū),外部I/O接口設(shè)在片外數(shù)據(jù) 存儲區(qū),中斷效勞程序存放在程序存儲區(qū)。50. 假設(shè)單片機使用頻率為6 MHz的晶振,那么狀態(tài)周期為1/3s、機器周期2s、指令周期為2s8s。51.復(fù)位時A0,PSW=0,SP=07H,P0P3=FFH 單項選擇題1在中斷效勞程序中,至少應(yīng)有一條D傳送指令,(B)轉(zhuǎn)移指令,C加法指令, (D)中斷返回指令2當(dāng)MCS一51復(fù)位時,下面說法正確的選項是A。 APC
8、0000 H,BSP00H,CSBUF00HD30H00H3要用傳送指令訪問MCS一51片外RAM,它的指令操作碼助記符應(yīng)是B AMOV,B MOVX , (C)MOVC (D)以上都行下面哪一種傳送方式適用于電路簡單且時序的外設(shè)B。 (A)條件傳送 (B)無條件傳送 (C)DMA (D)中斷5MCS一51在響應(yīng)中斷時,以下哪種操作不會發(fā)生D。 A保護現(xiàn)場, (B)保護PC (C)找到中斷入口,D保護PC轉(zhuǎn)入中斷入口6用MCS-51串行接口擴展并行IO口時,串行接口工作方式應(yīng)選擇A。 A方式0 ,B方式1,C方式2,D方式37. JNZ e指令的尋址方式是C。 (A)立即尋址,(B)存放器尋址
9、,(C)相對尋址,(D)位尋址8執(zhí)行LCALL 4000H指令時,MCS一51所完成的操作是D。 (A)保護PC, B 4000H-PC (C)保護現(xiàn)場 (D) PC+3入棧,4000 HPC9. MCS一51有中斷源A。 A 5個B 2個C 3個D 6個10. MCS - 51上電復(fù)位后,SP的內(nèi)容應(yīng)是B。 A00H B 07H C60H D 70H11下面哪一個部件不是CPU的指令部件C。 APC B IRC PSW D ID12ORG 0003H LJMP 2000H ORG 000BHLJMP 3000H當(dāng)CPU響應(yīng)外部中斷0后,PC的值是B 。 A0003H B2000H C0000
10、BH D 3000H13. 控制串行接口工作方式的存放器是C。 ATCON B PCON C SCON D TMOD14MCS一51響應(yīng)中斷時,下面哪一個條件不是必須的 D 。 (A)當(dāng)前指令執(zhí)行完畢 (B)中斷是開放的 (C)沒有同級或高級中斷效勞 (D)必須有RETI指令15.使用定時器T1時,有幾種工作模式 C 。 Al種 B 2種 C 3種 D4種15執(zhí)行PUSH ACC指令,MCS一51完成的操作是A。 ASP1=SP ,ACC=SP BACC=SP SP一1=SP CSP一1=SP, ACC=SP DACC=SP SP1=SP16P1口的每一位能驅(qū)動 B 。 (A) 2個TTL低電
11、平負(fù)載 (B) 4個TTL低電平負(fù)載 (C) 8個TTL低電平負(fù)載 (D) 10個TTL低電平負(fù)載17. PC中存放的是 A 。 A下一條指令的地址, B當(dāng)前正在執(zhí)行的指令 (C) 當(dāng)前正在執(zhí)行指令的地址D下一條要執(zhí)行的指令188031是C。 (A) CPU (B) 微處理器 (C) 單片微機 (D) 控制器19.所謂CPU是指 A 。 (A) 運算器與控制器 (B) 運算器與存儲器 (C) 輸入輸出設(shè)備 (D)控制器與存儲器20LCALL指令操作碼地址是2000H,執(zhí)行完相應(yīng)子程序返回指令后PC= D 。 A2000HB2001 HC2023HD2023H21MCS一51執(zhí)行完MOVA,#
12、08H后, PSW的哪一位被置位D 。 AC BFO COV DP22.計算機在使用中斷方式與外界交換信息時,保護現(xiàn)場的工作應(yīng)該是C。 (A)由CPU自動完成(B)在中斷響應(yīng)中完成(C)應(yīng)由中斷效勞程序完成(D)在主程序中完成23要訪問MCS - 51的特殊功能存放器應(yīng)使用的尋址方式是 C 。(A)存放器間接尋址 (B)變址尋址 (C)直接尋址 (D)相對尋址24下面哪條指令將MCS一51的工作存放器置成3區(qū)B。 A MOV PSW,13H BMOV PSW,井18H C SETB PSW.4 CLR PSW.3 D SETB PSW. 3 CLR PSW.425 假設(shè)MCS - 51中斷源都
13、編程為同級,當(dāng)它們同時申請中斷時CPU首先響應(yīng) B AINTl BINTO CT1 D T026當(dāng)MCS - 51進行多機通信時,串行接口的工作方式應(yīng)選擇 C 。方式0。B方式1 C方式2 D方式0或方式227.MCS-51的相對轉(zhuǎn)移指令的最大負(fù)跳轉(zhuǎn)距離為 B A2 KBB128 BC127 BD256 B28.指令存放器的功能是B。 (A)存放指令地址 (B)存放當(dāng)前正在執(zhí)行的指令 (C)存放指令與操作數(shù) (D)存放指令地址及操作數(shù)29. MOV C,00H的尋址方式是 A 。 (A)位尋址 (B)直接尋址 (C) 立即尋址 (D)存放器尋址30. ORG OOOOH ALMP 0040H
14、ORG 0040HMOV SP,#00H當(dāng)執(zhí)行完左邊的程序后,PC的值是 C A0040H B0041 H C0042H D0043H31.當(dāng)CPU響應(yīng)串行接口中斷時,程序應(yīng)轉(zhuǎn)移到 C 。 A0003HB0013HC0023HD0033H32. 當(dāng)ALE信號有效時,表示 B 。 (A) 從ROM中讀取數(shù)據(jù) (B)從P0口可靠地送出地址低8位 C從PO口送出數(shù)據(jù) D從RAM中讀取數(shù)據(jù)33MCS一51復(fù)位時,下述說法正確的選項是 D 。 A20H=00H BSP00HCSBUF=00HDTH0=00H34. MCS一51的中斷源全部編程為同級時,優(yōu)先級最高的是 D 。 (A) INT1 BTI (
15、C) 串行接口 (D) INTO35. 外部中斷1固定對應(yīng)的中斷人口地址為 C 。0003H B0003H C0013H D001BH36MCS - 51單片機可分為兩個中斷優(yōu)先級別。各中斷源的優(yōu)先級別設(shè)定是利用存放器 B 。 AIF BIP CTCON D SCON37. MCS一51的并行I/O口信息有兩種讀取方法:一種是讀引腳,還有一種是 A 。 (A)讀鎖存器 (B) 讀數(shù)據(jù) (C)讀A累加器 (D)讀CPU38. C 并非單片機系統(tǒng)響應(yīng)中斷的必要條件。 (A) TCON或SOON存放器內(nèi)的有關(guān)中斷標(biāo)志位為1 (B) IF中斷允許存放器內(nèi)的有關(guān)中斷允許位置1 (C) IP中斷優(yōu)先級存放
16、器內(nèi)的有關(guān)位置1 D 當(dāng)前一條指令執(zhí)行完39. 指令A(yù)JMP的跳轉(zhuǎn)范圍是C。 A256 B B 1 KB C2 KB D 64 KB40MCS一51響應(yīng)中斷的不必要條件是C。 (A) TCON或SCON存放器內(nèi)的有關(guān)中斷標(biāo)志位為1 (B) IE中斷允許存放器內(nèi)的有關(guān)中斷允許位置1 (C) IP中斷優(yōu)先級存放器內(nèi)的有關(guān)位置1 (D)當(dāng)前一條指令執(zhí)行完41. 以下運算中對溢出標(biāo)志OV沒有影響或不受OV影響的運算是 A 。 A邏輯運算 (B)有符號數(shù)加減法運算 (C) 乘法運算 ( D) 除法運算42.在算術(shù)運算中,與輔助進位位AC有關(guān)的是C。 (A)二進制數(shù) B八進制數(shù)C 十進制數(shù)(D) 十六進制
17、數(shù)43. PC的值是 C 。 A當(dāng)前指令前一條指令的地址 (B) 當(dāng)前正在執(zhí)行指令的地址 C下一條指令的地址 D控制器中指令存放器的地址44.假定設(shè)置堆棧指針SP的值為37H,在進行子程序調(diào)用時把斷點地址進棧保護后,SP的值為 D 。 A 36H B37H C 38H D 39H45. 在相對尋址方式中,“相對兩字是指相對于C。 (A)地址偏移量rel (B)當(dāng)前指令的首地址 (C)當(dāng)前指令的末地址, (D) DPTR值46.在存放器間接尋址方式中,指定存放器中存放的是 B 。A操作數(shù)B操作數(shù)地址C轉(zhuǎn)移地址D地址偏移量47. 對程序存儲器的讀操作,只能使用 D 。 A MOV指令 B PUSH
18、指令 (C) MOVX指令 D MOVC指令48. 必須進行十進制調(diào)整的十進制運算 C 。 (A)有加法和減法 (B)有乘法和除法 (C)只有加法 D只有減法49 .執(zhí)行返回指令時,返回的斷點是 C 。 (A)調(diào)用指令的首地址 (B)調(diào)用指令的末地址 C調(diào)用指令下一條指令的首地址D返回指令的末地址50. 可以為訪問程序存儲器提供或構(gòu)成地址的有 C 。 (A)只有程序計數(shù)器PC (B)只有PC和累加器A(C)只有PC,A和數(shù)據(jù)指針DPTR (D) PC,A,DPTR和堆棧指針SP簡答題什么是指令系統(tǒng)? 答:計算機所能執(zhí)行的全部HYPERLINK /view/178461.htm指令的集合什么是指
19、令? 答:是指示計算機執(zhí)行某些操作的命令什么是匯編語言? 答:采用助記符表示的指令什么是尋址方式? 答:就是找到存放操作數(shù)的地址,并把操作數(shù)提取出 來的方法,即尋找操作數(shù)或者是操作 數(shù)地址的方法什么是堆棧? 答:是一種執(zhí)行“后進先出算法的數(shù)據(jù)結(jié)構(gòu) 什么是指令周期? 答:取出并執(zhí)行一條指令的時間串行數(shù)據(jù)傳送的主要優(yōu)點和用途是什么? 答:串行數(shù)據(jù)傳送是將數(shù)據(jù)按位進行傳送的方式。其主要優(yōu)點是所需的傳送線根數(shù)少(單向傳送只需一根數(shù)據(jù)線、雙向僅需兩根),對于遠(yuǎn)距離數(shù)據(jù)傳送的情況,采用串行方式是比擬經(jīng)擠的。所以串行方式主要用于計算機與遠(yuǎn)程終端之間的數(shù)據(jù)傳送。MC S一51指令集中有無“程序結(jié)束指令?怎樣實
20、現(xiàn)“程序結(jié)束功能? 答:沒有這樣的指令。但實現(xiàn)程序結(jié)束至少可以借助4種方法: = 1 * GB3 用原地踏步指令SJMP $死循環(huán); = 2 * GB3 在最后一條指令后面設(shè)斷點,用斷點執(zhí)行方式運行程序; = 3 * GB3 用單步方式執(zhí)行程序; = 4 * GB3 在末條指令之后附加一條LJMP 0000H,由軟件返回監(jiān)控狀態(tài)。中斷效勞子程序與普通子程序有哪些異同之處? 答:相同點:都是讓CPU從主程序轉(zhuǎn)去執(zhí)行子程序,執(zhí)行完畢后又返回主程序。不同點:中斷效勞子程序是隨機執(zhí)行的,而普通子程序是預(yù)先安排好的;中斷效勞子程序以RETI結(jié)束,而一般子程序以RET結(jié)束。RETI除了將斷點彈回PC動作之
21、外,還要去除對應(yīng)的中斷優(yōu)先標(biāo)志位(片內(nèi)不可尋址的觸發(fā)器),以便新的中斷請求能被響應(yīng)。說明DA A指令的用法 答:DA A為十進制調(diào)整指令。在進行BCD數(shù)加法運算時,該指令要跟在加法指令后面,對A的內(nèi)容進行十進制調(diào)整。8051有幾種尋址方式?各涉及哪些存儲器空間? 答:立即尋址程序存放器;直接尋址內(nèi)部RAM和特殊功能存放器;存放器尋址;存放器間接尋址內(nèi)部RAM;相對尋址程序存放器;變址尋址程序、數(shù)據(jù)存放器;位尋址內(nèi)部RAM和特殊功能存放器的位地址空間8051響應(yīng)中斷的條件是什么?CPU響應(yīng)中斷后,CPU要進行哪些操作?不同的中 斷源的中斷入口地址是多少? 答:(l)CPU響應(yīng)中斷的條件如下: =
22、 1 * GB3 首先要有中斷源發(fā)出有效的中斷申請; = 2 * GB3 CPU中斷是開放的,即中斷總允許位EA=l,CPU允許所有中斷源申請中斷; = 3 * GB3 申請中斷的中斷源的中斷允許位為1,即此中斷源可以向CPU申請中斷。 以上是CPU響應(yīng)中斷的根本條件。如果上述條件滿足,那么CPU一般會響應(yīng)中斷。但是,假設(shè)有以下任何一種情況存在,那么中斷響應(yīng)會被阻止。 = 1 * GB3 CPU正處在為一個同級或高級的中斷效勞中。 = 2 * GB3 現(xiàn)行機器周期不是所執(zhí)行的指令的最后一個機器周期。作此限制的目的在于便當(dāng)前 指令執(zhí)行完畢后,才能進行中斷響應(yīng),以確保當(dāng)前指令的完整執(zhí)行。 = 3
23、* GB3 當(dāng)前指令是返回指令(RET、RETI)或訪問IE、IP的指令。因為按MCS-51中斷系統(tǒng) 的特性規(guī)定,在執(zhí)行完這些指令之后,還應(yīng)再繼續(xù)執(zhí)行一條指令,然后才能響應(yīng)中斷。 假設(shè)存在上述任何一種情況,CPU將丟棄中斷查詢結(jié)果;否那么,將在緊接著的下一個機器周期內(nèi)執(zhí)行中斷查詢結(jié)果,響應(yīng)中斷。 (2)CPU響應(yīng)中斷后,保護斷點,硬件自動將(PC)堆棧,尋找申斷源,中斷矢量PC,程序轉(zhuǎn)向中斷效勞程序入口地址。(3)INT0=0003H,T0=000BH,INT1=0013H,Tl=00lBH,串行接口=0023H。單片機對中斷優(yōu)先級的處理原那么是什么? 答:(1)低級不能打斷高級,高級能夠打斷
24、低級; (2)一個中斷已被響應(yīng),同級的被禁止; (3)同級,按查詢順序,INT0T0INT1Tl串行接口。80C51的外部中斷有哪兩種觸發(fā)方式?它們對觸發(fā)脈沖或電平有什么要求? 答:(1)有電平觸發(fā)和脈沖觸發(fā)。 (2)電平方式是低電平有效。只要單片機在中斷請求引入端INT0和INT1上采樣到低電平時,就激活外部中斷。 脈沖方式那么是脈沖的下跳G有效。這種方式下,在兩個相鄰機器周期對中斷請求引入端進行采樣中,如前一次為高,后一次為低,即為有效中斷請求。因此在這種中斷請求信號方式下,中斷請求信號的高電平狀態(tài)和低電平狀態(tài)都應(yīng)至少維持一個周期以確保電平變化能被單片機采樣到。單片機怎樣管理中斷?怎樣開放
25、和禁止中斷?怎樣設(shè)置優(yōu)先級? 答:(1)由中斷源提出中斷,再由中斷控制端決定是否中斷,再按設(shè)定好的優(yōu)先級的順序響應(yīng)中斷。如同一級優(yōu)先級的中斷按:外部中斷0,定時中斷0,外部中斷1,定時中斷1,串行中斷。 中斷后如果是:脈沖觸發(fā),TEl(0)被清0;電平觸發(fā),IEl(0)不被清零,要用軟件清0。 (2)它由中斷允許存放器IE控制:如開放中斷EA必須為1,再使要求中斷的申斷源的中斷允許位為1:要禁止中斷,EA=0即可。 (3)由IP控制,1為高級,0為低級,PS為串行中斷優(yōu)先級,PTl(0)為定時中斷1(0)優(yōu)先級,PXl(0)外部中斷1(0)優(yōu)先級。使哪個中斷源為優(yōu)先級,就置哪個優(yōu)先設(shè)定位為1。
26、8051單片機定時器一計數(shù)器作定時和計算用時,其計數(shù)脈沖分別由誰提供? 答:作定時器時:計數(shù)脈沖來自單片機內(nèi)部,其頻率為振蕩頻率的1/12。 作計數(shù)器時:計數(shù)脈沖來自單片機的外部,即P3.4(T0)和P3.5(Tl)兩個引腳的輸入脈沖。8051單片機定時器/計數(shù)器的門控信號GATE設(shè)置為1時,定時器如何啟動? 答:80C51單片機定時器/計數(shù)器的門控信號GATE設(shè)置為1時,定時器的啟動受外部INT0(INTl)引腳的輸人電平控制:當(dāng)INT0(INTl)引腳為高電平時,置TR0(TRl)為1時啟動定時器/計數(shù)器0(1)工作。8051單片機片內(nèi)設(shè)有幾個定時器計數(shù)器?它們是由哪些特殊功能存放器組成?
27、 答:80C51單片機片內(nèi)設(shè)有2個定時器/計數(shù)器:定時器/計數(shù)器0和定時器/計數(shù)器1,由TH0、TL0、THl、TLl、TMOD、TCON特殊功能存放器組成。什么是單片機的機器周期、狀態(tài)周期、振蕩周期和指令周期. 答:某條指令的執(zhí)行周期由假設(shè)干個機器周期(簡稱M周期)構(gòu)成,一個機器周期包含6個狀態(tài)周期(又稱時鐘周期,簡稱S周期),而一個狀態(tài)周期又包含兩個振蕩周期(P1和P2,簡稱p周期)。也就是說,指令執(zhí)行周期有長有短,但一個機器周期恒等于6個狀態(tài)周期或12個振蕩周期,即lM=6S=l2P。 請見?教材?P28圖。當(dāng)定時器T0工作于模式3時,如何使運行中的定時器T1停止下來?答:TRl為定時器
28、Tl的運行控制位,通常將該位置1就可啟動定時器Tl使之運行起來;把TRl清0便停止定時器Tl的運行。但在定時器T0被設(shè)定為模式3運行時,就不能再用這種方法來控制定時器Tl的啟停了。因為在這種情況下,如?教材?Pl06圖6-11所示,TRl借給定時器T0作為8位定時器TH0的運行控制位了。 當(dāng)定時器T0在模式3下運行時,假設(shè)把定時器1設(shè)定為模式3,即將TMOD存放器的位5 (Ml)和位4(M0)寫成ll B,那么定時器Tl便停止運行;假設(shè)此后將其從模式3中切換出來,例如,把這兩位再次寫成0lB,那么定時器Tl將按模式1運行起來。波特率、比特率和數(shù)據(jù)傳送速率的含意各是什么?答:在數(shù)據(jù)通信申,描述數(shù)
29、據(jù)傳送速度的方式有3種: = 1 * GB3 波特率:每秒傳送多少個信號碼元(或每秒信號碼元變換的總個數(shù)),單位是波特(Bd)。 = 2 * GB3 比特率:每秒傳送多少個二進制位(或每秒傳送二進制碼元的個數(shù)),單位是b/s。 = 3 * GB3 數(shù)據(jù)傳送速率(或字符傳送速率):每秒傳送多少個字符(或單位時間內(nèi)平均數(shù)據(jù)傳移速率),單位是字符/秒。 當(dāng)傳輸?shù)男盘柺嵌M制數(shù)位時,波特率和比特率就變成了一回事,尤其是計算機通信中,信號碼元常與二進制碼元相同,此時可以統(tǒng)一起來。例如,甲乙雙方傳送二進制數(shù)據(jù)的速度是每秒傳送300個字符,每個字符附加了起始、停止和校驗各一位,此時描述該速度有3種方式: =
30、 1 * GB3 數(shù)據(jù)字符傳送速率是300字符/秒。 = 2 * GB3 忍比特率300(8+1+1+l)b/s=300ll b/s=3300b/s。 = 3 * GB3 波特率與比特率相同,亦為300ll Rd=3300 Bd。開機復(fù)位后,CPU使用的是哪組工作存放器?它們的地址是什么?CPU如何確定和改變改變當(dāng)前工作存放器組?答:系統(tǒng)復(fù)位后,CPU選用第0組工作存放器即地址分別為00H07H。如需改變當(dāng)前工作存放器,可設(shè)置PSW狀態(tài)字中的RSl、RS0。如RSl、RS0為00那么指向第0組;為01那么指向第1組;為10那么指向第2組;為ll那么指向第3組。程序狀態(tài)存放器PSW的作用是什么?
31、常用狀態(tài)有哪些位?作用是什么?答:程序狀態(tài)字存放器PSW主要用于保存程序運行中的各種狀態(tài)信息。各位功能如下: CY(PSW7)為進位標(biāo)志。在進行加或減運算中,表示有無進位或借位。位操作時,又可認(rèn)為是位累加器。 AC(PSW6)為輔助進位標(biāo)志。加或減操作中,表示低4位數(shù)向高4位有無進位或借位,以用作BCD碼調(diào)整的判斷位。 F0(PSW5)為用戶標(biāo)志位。用戶可自行定義的一個狀態(tài)標(biāo)記。 RSl、RS0(PSW4 PSW3)為工作存放器組指針。用以選擇CPU當(dāng)前工作存放器組。 OV(PSW2)為溢出標(biāo)志。算術(shù)運算時,表示是否溢出。 Fl(PSWl)為用戶標(biāo)志位。同F(xiàn)0。 P(PSW0)為奇偶標(biāo)志位。表
32、示累加器A中1的位數(shù)的奇偶數(shù)。該位多用作串行通信中的奇偶檢驗。位地址7CH與字節(jié)地址7CH如何區(qū)別?位地址7CH具體在片內(nèi)RAM的位置?答:字節(jié)地址是片內(nèi)RAM的單元地址,而位地址是片內(nèi)RAM單元申的某一位。7CH字節(jié)地址為RAM的7CH單元,而7CH位地址是RAM 2FH單元中的D4位。MCS一51單片機的時鐘周期與振蕩周期之間有什么關(guān)系?一個機器周期如何劃分?答:時鐘周期為最根本的時間單位。機器周期那么是完成某一個規(guī)定操作所需的時間。一個機器周期為6個時鐘周期,共12個振蕩周期,依次可表示為SlPl、SlP2、S6Pl、S6P2,即一個時鐘周期包含有二個振蕩周期。MCS一51單片機有幾種復(fù)
33、位方法?應(yīng)注意什么事項?答:單片機的復(fù)位有上電自動復(fù)位和按鈕手動復(fù)位兩種。使用時應(yīng)注意:上電復(fù)位的最短時間應(yīng)保證為振蕩周期建立時間加上兩個機器周期的時間。當(dāng)單片機運行程序出錯或進入死循環(huán)時,可用按鈕復(fù)位來重新啟動。MCS一51單片機內(nèi)部包含哪些主要邏輯功能部件?答:89C51單片機主要由以下部件組成:一個8位CPU、一個片內(nèi)振蕩器及時鐘電路、4KB Flash ROM程序存儲器、256B的RAM、2個16位的定時/計數(shù)器、可尋址64KB片外數(shù)據(jù)存儲器和64KB片外程序存儲器空間的控制電路、4個8位并行I/O端口及一個可編程全雙工串行接口。MCS一51單片機的存儲器從物理結(jié)構(gòu)上和邏輯上分別可劃分
34、幾個空間?答:MCS-51系列單片機的存儲器配置從物理結(jié)構(gòu)上可分為:片內(nèi)程序存儲器、片外程序存儲器、片內(nèi)數(shù)據(jù)存儲器、片外數(shù)據(jù)存儲器。從邏輯上可分為:片內(nèi)外統(tǒng)一編址的64KB的程序存儲器、片內(nèi)256B的數(shù)據(jù)存儲器以及片外64KB的數(shù)據(jù)存儲器。存儲器中有幾個具有特殊功能的單元?分別作什么用?答:MCS-51系列單片機的存儲器中有6個保存特殊功能單元,其中0000H為復(fù)位入)0003H為外部中斷0矢量入口、000BH為T0溢出中斷人口、0013H為外部中斷1矢量入口、00lBH為Tl溢出中斷入口、0023H為串行接口中斷入口。MCS一51單片機片內(nèi)256 B的數(shù)據(jù)存儲器可分為幾個區(qū)?分別作什么用?答
35、:MCS-51單片機片內(nèi)數(shù)據(jù)存儲器可分為二個區(qū):00H7FH單元組成的低128B的片內(nèi)RAM區(qū)、80HFFH單元組成的高128B的專用存放器區(qū)。其中低128B的RAM區(qū)又分為:00HlFH單元為工作存放器區(qū)、20H2FH單元為位尋址區(qū)以及30H7FH單元為用戶RAM區(qū)。工作存放器區(qū)可作通用存放器用,用戶RAM區(qū)可作堆棧和數(shù)據(jù)緩沖用。專用存放器區(qū)又稱特殊功能存放器。什么是單片機的機器周期、狀態(tài)周期、振蕩周期和指令周期?它們之間是什么關(guān)系?答:某條指令的執(zhí)行周期由假設(shè)干個機器周期(簡稱M周期)構(gòu)成,一個機器周期包含6個狀態(tài)周期(又稱時鐘周期,簡稱S周期),而一個狀態(tài)周期又包含兩個振蕩周期(P1和P
36、2,簡稱p周期)。也就是說,指令執(zhí)行周期有長有短,但一個機器周期恒等于6個狀態(tài)周期或12個振蕩周期,即lM=6S=l2P。 請見?教材?P28圖。MCS - 51單片機的PO-P3四個I/O端口在結(jié)構(gòu)上有何異同?使用時應(yīng)注意什么事項?答:MCS-51單片機的四個端口在結(jié)構(gòu)上相同之處,P0P3都是準(zhǔn)雙向I/O口,作輸入時,必須先向相應(yīng)端口的鎖存器寫入1。不同之處:P0口的輸出級與PlP3口不相同,它無內(nèi)部上拉電阻,不能提供拉電流輸出,而PlP3那么帶內(nèi)部上拉電阻,可以提供拉電流輸出。 當(dāng)P0口作通用I/O口輸出使用時,需外接上拉電阻才可輸出高電平;但作地址/數(shù)據(jù)總線時,不需要外接上拉電阻。PlP
37、3 作I/O輸出時,均不需外接上拉電阻。MCS一51單片機有幾種低功耗方式?如何實現(xiàn)?答:MCS-51單片機有兩種低功耗方式,分別為待機(休閑)方式和掉電方式。 置PCON中的D0位即IDL為1,單片機即迸人待機方式;置Dl位即PD為1,那么進入掉電方式。33.試說明指令 CJNE R1,7AH,10H的作用。假設(shè)本指令地址為8100H,其轉(zhuǎn)移地址是多少?答:CJNE Rl,#7AH,l0H指令是進行以Rl間址單元的內(nèi)容與一個立即數(shù)進行比擬。 當(dāng)(Rl)=7AH時:(PC)+3PC,0CY 當(dāng)(Rl)7AH時:(PC)+3+10HPC,0CY 當(dāng)(Rl)7AH時:(PC)+3+10HPC,lC
38、Y 假設(shè)本指令地址為8100H,其轉(zhuǎn)移地址為:目的地址=8100H十3十10H=8113H。如何將8051當(dāng)8031使用?答:把80C51的EA引腳接地,片外擴接EPROM芯片,就等于宣布片內(nèi)ROM作廢,完全執(zhí)行片外EPROM中的程序。這樣,80C51就可當(dāng)80C31使用。35.設(shè)R0 = 7 EH , DPTR= 10FEH ,片內(nèi)RAM 7EH和7FH兩單元的內(nèi)容分別是FFH和38H,請寫出以下程序段的每條指令的執(zhí)行結(jié)果。 INC Ro INC RO INCRO INC DPTR INC DPTRINCDPTR 答:(1) (7EH)=00H(2) R0=7FH(3) (7FH)=39H(
39、4) DPTR=10FFH (5)DPTR=l100H (6)DPTR=l10lH36設(shè)片內(nèi)RAM中(59H)=-50H,執(zhí)行以下程序段。 MOVA,59H MOV R0,A MOV A,#0HMOVR0,AMOVA, #25H MOV 51H,A MOV 52H,#70H問 A25H,50H=0,51H25H,52H70H編程題編一個子程序,將存放器R0中的內(nèi)容乘10(積256)。1 解 STRAT: MOV A,R0 MOV B,#10 MUL ABMOV R0,A RET2.編程將片內(nèi)RAM 30H單元開始的15 B的數(shù)據(jù)傳送到片外RAM 3000H開始的單元中去。2解 STRAT: M
40、OV R0,#30H MOV R7,#0FH MOV DPTR,#3000H LOOP: MOV A,R0 MOVX DPTR,A INC R0 INC DPTR DJNZ R7,L RET用查表法編一子程序,將40H單元中的BCD碼轉(zhuǎn)換成ASCII碼。3 START: MOV A,40H MOV DPTR,#TAR MOVC A,A十DPTR MOV 40H.A RET TAB DB 30H,31H,32H,33H,34H DB 35H,36H,37H,38H,39H4片內(nèi)RAM 50H,51 H單元中有一個2B的二進制數(shù),高位在前,低位在后,請編程將其求補,存回原單元中去。4解 START
41、: CLR C MOV A,5lH CPL A ADD A,#03H MOV 5lH,A MOV A,50H CPL A ADDC A,#00H MOV 50H,A RET片內(nèi)RAM 30H開始的單元中有10 B的二進制數(shù),請編程求它們之和和256。5解 ADDIO: MOV R0,30H MOV R7,#9 MOV A,R0 LOOP: INC R0 ADD A,R0 DJNZ R7,LOOP MOV 30H,A RETR1中存有一BCD碼,請編程將它轉(zhuǎn)換成ASCII碼,存人外RAM IO00H單元中去。6解 RIB-AI: MOV A,Rl ORL A,#30H (也可以 ADD A,#3
42、0H) MOV DPTR,#1000H MOVX DPTR,A RET編一個程序,將累加器中的一個字符從串行接口發(fā)送出去。7解 SOUT: MOV SCON,#40H ;設(shè)置串行接為工作方式 1 MOV TMOD,#20H ;定時器 Tl工作于模式 2 MOV TLl,#0E8H; 設(shè)置波特率為 1200b/s MOV THl,#0E8H SETB TRl MOV SBUF,A NB TI,$ CLR TI RET片外RAM 2000H開始的單元中有5B的數(shù)據(jù),編程將它們傳送到片內(nèi)RAM 20H開始的單元中去。8解 CARY: MOV DPTR,#2000H MOV R0,#20H MOV R
43、3,#05H NEXT: MOVX A,DPTR MOV R0,A INC DPTR INC R0 DJNZ R3,NEXT RET用查表法編一子程序,將R3中的BCD碼轉(zhuǎn)換成ASCII碼。9解 MAIN: MOV A,R3 ;待轉(zhuǎn)換的數(shù)送A MOV DPTR,#TAB ;表首地址送DPTR MOVC A,A+DPTR ;查ASCII碼表 MOV R3,A ;查表結(jié)果送R3 RET TAB DB 30H ,31H ,32H ,33H ,34H DB 35H ,36H ,37H ,38H ,39H片內(nèi)RAM 40H開始的單元內(nèi)有10 B二進制數(shù),編程找出其中最大值并存于50H單元中。10 解ST
44、ART: MOV R0,#40H ;數(shù)據(jù)塊首地址送R0 MOV R7,#09H ;比擬次數(shù)送R7 MOV A,R0 ;取數(shù)送A LOOP: INC R0 MOV 30H,R0 ;取數(shù)送30H CJNE A,30H,NEXT ;(A)與(30H)相比 NEXT: JNC BIEl ;(A)(30H)轉(zhuǎn)BIEl MOV A,30H ;(A)(30H),大數(shù)送A BIE1: DJNZ R7,LOOP ;比擬次數(shù)減1,不為0,繼續(xù)比擬 MOV 50H,A ;比擬結(jié)束,大數(shù)送50H RET編程將片外RAM 3000H開始的20 B的數(shù)據(jù)傳送到片內(nèi)RAM 30H開始的單元中去。11解 START: MOV
45、 DPTR,#3000H MOV R7,#20 MOV R0,#30H LOOP: MOVX A,DPTR MOV R0,A INC DPTR INC R0 DJNZ R7,LOOP RET編程將R1,R2中的16位二進制數(shù)增1后送回原單元高位在R1中。12解 START: MOV A,R2 ADD A,#0lH MOV R2,A MOV A,Rl ADDC A,#00HMOV Rl,A RET編程將片內(nèi)RAM 40H開始的單元存放的10B的二進制數(shù)傳送到片外RAM 4000H開始的單元中去。13解 START: MOV R0,#40H MOV R7,#0AH MOV DPTR,#4000H
46、LOOP: MOV A,R0 MOVX DPTR,A INC R0 INC DPTR DJNZ R7,LOOP RET編一子程序,從串行接口接受一個字符。14解 START: MOV TMOD,#2OH ;定時器Tl工作于模式2 MOV THl,#0E8H ;設(shè)置波特率為12OOb/s MOV TLl,#0E8H SETB TRl ;啟動Tl MOV SCON,#50H ;串行接口工作于方式1,允許接收 Ll: JNB RI,Ll ;等待接收數(shù)據(jù),未接收到數(shù)據(jù),繼續(xù)等待 CLR RI ;接收到數(shù)據(jù),清RI MOV A,SBUF ;接收到的數(shù)據(jù)送A RET編寫將30H和31H單元中2 B二進制數(shù)
47、乘2的子程序積65536。15解 START: CLR C MOV A,31H RLC A MOV 3lH,A MOV A,30H RLC A MOV 30H,A RET16片外RAM 2000H單元中有一BCD碼,編程將其轉(zhuǎn)換成ASCII碼。16解 START: MOV DPTR,#2000H MOVX A,DPTR ADD A,#30H MOVX DPTR,A RET試編制單字節(jié)BCD碼數(shù)的減法程序。17解 :要實現(xiàn)單字節(jié)BCD數(shù)的減法,應(yīng)當(dāng)設(shè)法將減法變?yōu)榧臃ê螅偈褂肈A A指令調(diào)整。具體操作是:先用模(99十l)H即9AH減去減數(shù),得到其補數(shù),再與被減數(shù)進行加法操作,然后再用DA A調(diào)
48、整。假設(shè)被減數(shù)放在片內(nèi)RAM的60H單元,減數(shù)放在61H單元,差值放入62H單元。程序如下:CLR CMOV A,#9AHSUBB A,61H ;對(61H)內(nèi)的BCD碼求十進制補數(shù)ADD A,60HDA A ;對和數(shù)(其實是差值)進行調(diào)整MOV 62H,ARET例如,當(dāng)初值為(60H)=61,(61H)=23時,運行結(jié)果將是:(62H)=38.利用調(diào)子程序的方法,進行兩個4 B無符號數(shù)相加。請編主程序及子程序。18解:用R0和Rl作數(shù)據(jù)指針,R0指向第一個加數(shù),并兼作和的指針,Rl指向另一個加數(shù),字節(jié)數(shù)存放到R2中作計數(shù)初值。主程序:JAFA: MOV R0,#20H ;指向加數(shù)最低字節(jié)MO
49、V Rl,#29H ;指向另一加數(shù)最低字節(jié)MOV R2,#04H ;字節(jié)數(shù)作計數(shù)值A(chǔ)CALL JASUB ;調(diào)用加法子程序AJMP $RET多字節(jié)加法子程序:JASUB: CLR CJASUB1: MOV A,R0 ;取出加數(shù)的一個字節(jié)(4B無符號數(shù)加法)ADDC A,Rl ;加上另一數(shù)的一個字節(jié)MOV R0,A ;保存和數(shù)INC R0 ;指向加數(shù)的高位INC R1 ;指向另一加數(shù)的高位DJNZ R2,JASUBl ;全部加完了嗎?RET 將片外RAM空間2000H-200AH中的數(shù)據(jù)的高4位變零,低4位不變,原址存放。23解 ORG 1000H START: MOV DPTR,#2000H
50、;設(shè)置數(shù)據(jù)指針 MOV 10H,#0BH ;設(shè)置計數(shù)單元 設(shè)置初值 LOOP: MOVX A,DPTR ;讀數(shù)據(jù) ANL A,#0FH ;屏蔽高4位,低4位不變 MOVX DPTR,A ;回傳至原單元 循環(huán)體 INC DPTR ;指針加1 DJNZ 10H,LOOP ;沒處理完,轉(zhuǎn)移(修改控制變量,循環(huán)終止控制)將累加器A和狀態(tài)存放器內(nèi)容壓入堆棧保護,然后再恢復(fù)A和狀態(tài)存放器內(nèi)容。24 解 ORG 1000H START: PUSH A ;A+堆棧 PUSH PSW ;PSW堆棧 ; POP PSW ;堆棧PSW POP A ;堆棧A RET求片外RAM 3000H,3001H單元數(shù)據(jù)的平均值
51、,并傳送給3002H單元。25 解 MOV DPTR,#3000H ;設(shè)置第一個數(shù)據(jù)地址指針 MOVX A,QDPTR ;取第一個數(shù)據(jù) MOV R0,A ;將第一個數(shù)據(jù)送R0 INC DPTR ;設(shè)置第二個數(shù)據(jù)地址指針MOVX A,DPTR ;取第二個數(shù)據(jù)ADD A,R0 ;兩個數(shù)據(jù)相加RRC A ;帶進位C右移一位,相當(dāng)除以2INC DPTR ;設(shè)置結(jié)果單元地址指針MOVX DPTR, A ;存平均值RET22.分別寫出實現(xiàn)如下功能的程序段。26 (1) 將片內(nèi)RAM 30H的中間4位,31H的低2位,32H的高2位按序拼成一個新字節(jié),存人33H單元。 (2)將DPTR中間8位取反,其余位不
52、變。解 (l) MOV A,30H ANL A,#3CH ;30H的中間4位送A RL A ;將中間4位移至高4位 RL A MOV 33H,A ANL 3lH,#3 ;取31H的低2位,高6位為0 ANL 32H,#0C0H ;取32H的高2位,低6位為0 MOV A,31H ;31H的低2位送A ORL A,32H ;32H的高2位放人A的高2位,A的申間4位為0 RL A ;將31H的低2位、32H的高2位移至A的低4位 RL A ORL 33H,A ;將31H的低2位、32H的高2位拼入33H中 (2) XRL DPH,#0FH XRL DPL,#0F0H23.寫出到達(dá)以下要求的指令不
53、能改變各未涉及位的內(nèi)容。27 (1)使A的最低位置1。 (2)去除A的高4位。 (3)使ACC. 2和ACC. 3置1。去除A的中間4位。 解; (l) SETB ACC.0或ORL A,#1 (2)ANL A,#0FH (3)ORL A,#0CH(4)ANL A,#0C3H24.編程將一個按上下字節(jié)存放在21H、20H中的雙字節(jié)數(shù)乘2后,再按上下次序?qū)⒔Y(jié)果存放到22H, 21H、20H單元。32解 ORG 0030H MOV A,20H CLR C RLC A MOV 20H,A MOV A,2lH RLC A MOV 2lH,A JNC NEXT MOV 22H,#01 NEXT: SJM
54、P $編程將存放在片外RAM 1000H,1001H中的兩個數(shù),按大小次序存放到片內(nèi)RAM的30H、31H單元。33解 ORG 0030H MOV DPTR,l000H MOVX A,DPTR MOV B,A INC DPTR MOVX A,DPTR CJNE A,B,00H JNC NEXTl MOV 30H,B MOV 3lH,A SJMP NEXT2 NEXTl.: MOV 30H,A MOV 3lH,B NEXT2: SJMP NEXT2將片內(nèi)RAM 30 H 3FH中的數(shù)據(jù)按順序傳送到片外RAM 2000 H200FH,請編程。38解 MOV R0,#30H MOV DPTR,#20
55、00H MOV Rl,#l0H LOOP: MOV A, R0 MOVX DPTR,A INC R0 INC DPTR DJNZ Rl,LOOP RET列舉4條能使累加器A清0的指令。39解 : (l) MOV A ,# 00H (2) XRL A ,ACC (3) ANL A ,# 00H (4) CLR A編程將片外RAM 10001010H內(nèi)容傳人片內(nèi)RAM 30H開始的單元。41解 ORG 0800H MOV DPTR,#1000H MOV R0,#30H MOV R7,#llH LOOP: MOVX A,DPTR MOV R0,A INC R0 INC DPTR DJNZ R7,LO
56、OP RET編寫一個軟件延時1s、和1 min的子程序。設(shè)fosc=6 MHz,那么1個機器周期=2 us。45解 (1) l s=2 us5105 5105=500000=2502000=250200l0所以:要編寫三重循環(huán)。ORG 1000HTIME: MOV R7,#10T3: MOV R6,#200T2: MOV R5,#250Tl: DJNZ R5,T1DJNZ R6,T2DJNZ R7,T3RET(2) l min=60 s,調(diào)用上面1 s子程序60次。ORG 0030 HMOV R0,#60LOOP: LCALL TIMEDJNZ R0,LOOPRET請編制串行通信的數(shù)據(jù)發(fā)送程序
57、發(fā)送片內(nèi)RAM 50H-5FH的16B數(shù)據(jù),串行接口設(shè)定為方式2,采用偶校驗方式。設(shè)晶振頻率為6 MHz 48解 查詢方式發(fā)送程序如下:MOV SCON,#80H ;設(shè)定為方式2發(fā)送MOV PCON,#80H ;波特率固定,選用fOSC/32(高達(dá)187500 Bd)MOV R0,#50H ;給待發(fā)送數(shù)據(jù)塊地址指針R0置初值MOV R7,#16 ;數(shù)據(jù)塊長度計數(shù)器R7置初值LOOP: MOV A,R0 ;取一字節(jié)數(shù)據(jù)AMOV C,PMOV TB8,C ;P隨A變,P借助位累加器C傳給TB8MOV SBUF,A ;啟動發(fā)送JNB TI,$ ;查詢發(fā)送標(biāo)志,等待一字節(jié)數(shù)據(jù)發(fā)送完CLR TI ;TI
58、標(biāo)志位清0INC R0 ;待發(fā)送數(shù)據(jù)塊地址指針加1DJNZ R7,LOOP ;數(shù)據(jù)塊長度減1,未發(fā)送完那么返回繼續(xù)發(fā)送下一字節(jié)RET請編制串行通信數(shù)據(jù)接收程序,將接收的16 B數(shù)據(jù)送入片內(nèi)RAM 58H-5FH單元中,串行接口設(shè)定為工作方式3, 波特率為1200,fosc=6 MHZ. 49解 2SMOD 2SMOD fOSC波特率(Bd)= Tl (溢出率) = 32 32 12(256-x) 2SMOD fOSC 6106初值x=256 - =256 - =256-13.02243=F3H 3212波特率 32121200查詢接收程序如下: MOV TMOD,#20H ;設(shè)定Tl為模式2定
59、時 MOV THl,#0F3H ;置8位計數(shù)初值,同時送入高8位 MOV TL1,#0F3H SETB TR1 ;啟動Tl MOV SCON,#0D0H ;設(shè)定串行接口為方式3,并允許接收 MOV R0,#50H ;給數(shù)據(jù)塊地址指針R0置初值 MOV R7,#16 ;給數(shù)據(jù)塊長度計數(shù)器R7置初值CONT: JBC RI,PRI ;查詢等待接收,假設(shè)RI=1那么結(jié)束等待,并清0RI SJMP CONT ;假設(shè)一字節(jié)尚未收完,那么繼續(xù)等待PRI: MOV A,SBUF ;一字節(jié)收完,從串行接口中讀取數(shù)據(jù) JNB P,PNP ;對該字節(jié)進行查錯處理,假設(shè)P=RB8無錯,否那么有錯 JNB RB8,
60、PER ;假設(shè)P=l,RB8=0,有錯,轉(zhuǎn)出錯處理 AJMP RIGHT ;假設(shè)P=l,RB8=1,無錯,轉(zhuǎn)保存數(shù)據(jù)PNP: JB RB8, PER ;假設(shè)P=0,RB8=1,有錯,轉(zhuǎn)出錯處理RIGHT: MOV R0,A ;假設(shè)P=0,RB8=0,無錯,保存接收的數(shù)據(jù) INC R0 ;數(shù)據(jù)塊地址指針加1 DJNZ R7,CONT ;數(shù)據(jù)塊字節(jié)數(shù)減1,16B未接收完那么繼續(xù) CLR Fl ;正確接收完16B數(shù)據(jù),清0出錯標(biāo)志位Fl SJMP $ ;正常結(jié)束,停止運行程序PER: SETB Fl ;因PRB8,校驗為錯,置位出錯標(biāo)志Fl SJMP $ ;一旦發(fā)現(xiàn)有錯那么立即停止執(zhí)行程序在8051
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 全國教育大會解讀
- 中班安全教育教案40篇冬季
- 煤礦應(yīng)急救援應(yīng)知應(yīng)會100題課件
- 高考調(diào)研高考數(shù)學(xué)一輪復(fù)習(xí)第十章第課時
- 2024至2030年中國感光涂膠布生產(chǎn)線數(shù)據(jù)監(jiān)測研究報告
- 2024至2030年中國布飾發(fā)圈行業(yè)投資前景及策略咨詢研究報告
- 2024年四川省瀘州市中考語文試題含解析
- 2024年中國緊急轉(zhuǎn)動式蘑菇鈕市場調(diào)查研究報告
- 2024年中國短滴狀塑料片自動鎖市場調(diào)查研究報告
- 2024年中國凍兔肉排市場調(diào)查研究報告
- 2024精麻藥品培訓(xùn)知識試題庫及答案(完整版)
- 電影賞析綠皮書課件(內(nèi)容詳細(xì))
- 2024年山東濟南軌道交通集團運營有限公司招聘筆試參考題庫含答案解析
- 一般固廢處理協(xié)議合同書
- 蘇教版五年級數(shù)學(xué)上冊期中試卷(含答案)
- 《能力陷阱》讀書分享
- 《線性代數(shù)》 課件 2.5初等變換
- 貴州省高中信息技術(shù)會考復(fù)習(xí)
- Cpk 計算標(biāo)準(zhǔn)模板
- 典型截面材料重量及抗彎截面系數(shù)計算表
- 衛(wèi)生院先診療、后付費自查報告
評論
0/150
提交評論