




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、浙江大學遠程教育學院微機原理與接口技術課程作業姓名:學 號:年級:學習中心: 溫州第二章 P47280C51 單片微機芯片引腳第二功能有哪些? 答: 80C51單片機的 P0、P2和 P3引腳都具有第二功能。第一功能P0 口P2 口P3.0P3.1P3.2第二變異功能地址總線 A0 A7/數據總線 D0D7 地址總線 A8 A15RXD ( 串行輸入口 )TXD (串行輸出口 )INT 0 (外部中斷 0)P3.3INT1 (外部中斷 1)P3.4P3.5T0 (定時器 /計數器 0 的外部輸入 )T1 (定時器 /計數器 0 的外部輸出 )P3.6WR (外部讀寫存儲器或 I/O 的寫選通
2、)P3.7RD (外部讀寫存儲器或 I/O 的讀選通 )4 80C51 存儲器在結構上有何特點?在物理上和邏輯上各有哪幾種地址空間? 訪問片內數據存儲器和片外數據存儲器的指令格式有何區別?答: 80C51 單片機采用哈佛 (Haryard)結構,即是將程序存儲器和數據存儲器截然分開,分 別進行尋址。不僅在片內駐留一定容量的程序存儲器和數據存儲器及眾多的特殊功能寄存 器,而且還具有強的外部存儲器擴展能力, 擴展的程序存儲器和數據存儲器尋址范圍分別可 達 64KB 。在物理上設有 4 個存儲器空間 片內程序存儲器; 片外程序存儲器; 片內數據存儲器; 片外數據存儲器。在邏輯上設有 3 個存儲器地址
3、空間片內、片外統一的 64 KB 程序存儲器地址空間。 片內 256B(80C52為 384 B)數據存儲器地址空間。片內數據存儲器空間,在物理上又包含兩部分:對于 80C51 型單片機, 從 0 127 字節為片內數據存儲器空間; 從 128 255 字節為特殊功能寄存器 (SFR)空間(實際僅占用了 20 多個字節)。片外 64 KB 的數據存儲器地址空間。在訪問三個不同的邏輯空間時, 應采用不同形式的指令, 以產生不同存儲空間的選通信 號。訪問片內 RAM 采用 MOV 指令,訪問片外 RAM 則一定要采用 MOVX 指令,因為 MOVX 指令會產生控制信號 RD 或 WR ,用來訪問片
4、外 RAM 。訪問程序存儲器地址空間, 則應采用 MOVC 指令。680C51片內數據存儲器低 128個存儲單元劃分為哪 4 個主要部分?各部分主 要功能是什么?答:寄存器區:共4組寄存器,每組 8個存儲單元, 各組以 R0 R7作為單元編號。 常用于保存操作數及中間結果等等。 R0R7 也稱為通用寄存器,占用 00H 1FH 共 32 個單元地址。位尋址區: 20H2FH ,既可作為一般 RAM 單元使用,按字節進行操作,也可以 對單元中的每一位進行位操作,稱為位尋址區。尋址區共有 16 個 RAM 單元,共 計 128 位,位地址為 00H7FH 。堆棧區:設置在用戶 RAM 區內。用戶
5、RAM 區:在內部 RAM 低 128 單元中,除去前面 3 個區,剩下的所有單元。第三章 P879MOV 、 MOVC 、MOVX 指令有什么區別,分別用于那些場合,為什么?答: MOV 指令用于對內部 RAM 的訪問。MOVC 指令用于對程序存儲器的訪問,從程序存儲器中讀取數據(如表格、常數等 )。MOVX 指令采用間接尋址方式訪問外部數據存儲器,有 Ri 和 DPTR 兩種間接尋址方式。 MOVX 指令執行時,在 P3.7 引腳上輸出 RD 有效信號或在 P3.6引腳上輸出 WR 有效信號, 可以用作外部數據存儲器或 I/O 的讀或寫選通信號,與單片機擴展電路有關。15已知(R1)=20
6、H,(20H)=AAH ,請寫出執行完下列程序段后 A 的內容。MOVA ,#55HANLA, #0FFHORL20H, AXRLA, R1CPL A 答:各指令執行結果如下:MOV A , #55H; (A)=55HANL A , #0FFH;(A)=55HXRL A , R1; (A)=AAHCPL A; (A) =55H執行完程序段后, A 的內容為 55H 。16 閱讀下列程序,說明其功能MOVR0,#30HMOVA ,R0RL AMOV R1, A RL A RL AADD A ,R1MOV R0,A; (R0)=30H;取數;(A)2;(A)4;(A)8;(A) 10 ;存數答:對
7、程序注釋如下:MOVR0 ,#30HMOVA ,R0RL AMOVR1 ,ARL ARL AADDA ,R1MOV R0, A功能:將 30H 中的數乘以 10 以后再存回 30H 中。條件: 30H中的數不能大于 25,2510=250仍為一個字節。 若 30H中的數大于 25,則應考慮進位。17. 已知兩個十進制數分別從內部數據存儲器中的 40H 單元和 50H 單元開始存 放(低位在前),其字節長度存放在內部數據存儲器的 30H 單元中。編程實現兩 個十進制數求和,并把和的結果存放在內部數據存儲器 40H 開始的單元中。【答】程序如下:ORG 0000HSJMPMAINORG 0030H
8、MAIN:MOVR0 ,#40H;被加數首址又作兩個十進制數和的首址MOVR1 ,#50H;加數首址MOVR2 ,30H;字節長度CLRCPP :MOVA ,R1 ;取加數ADDCA ,R0;帶進位加DA A;二一十進制數調整MOVR0,A;存和DJNZR2,PP;多字節循環加AJMP$ENDINC R0INC R1;修正地址21讀程序,請畫出 P1.0 P1.3引腳上的波形圖, 并標出電壓 V時間 T 坐標 ; 加以注釋。ORGSTART: MOVMOVMOV MLP0:ACALLMOVCJNEMOVMOVMLP2MOVMOVCMOVSJMPMLP1: INCSJMPITAB: DB 0,D
9、B 8 , D50ms:RET0000H SP,#20H 30H,#01H P1,#01D50msA, 30HA, #08H, MLP1A, #01H DPTR,#ITAB 30H, A A,A+DPTR P1, A MLP0AMLP2 1,2,4,8 4,2,1; 軟件延時 50mS; 延時 50ms子程序 (略)答: 序功能: P1.0 P1.3 引腳上的波形圖如圖 3-2 所示。注釋見源程序右邊所述。ORG0000HSTART:MOVSP, #20HMOV30H , #01HMOVP1, #01H;P1.0P1.3引腳輸出波形MLP0:ACALLD50ms;軟件延時 50msMOVA,
10、30HCJNEA, #08H , MLP1;判表格中數據是否取完?MOVA, #01H;取完,從表頭開始取MOVDPTR,#ITAB;表格首地址MLP2MOV 30H, AMOVCA,A+DPTR;取表格中數據MOVP1, ASJMPMLP0MLP1:INCA;表格中數據未取完,準備取下一個SJMPMLP2ITAB:DB 0,1,2,4,8;表DB 8,4,2,1D50ms:;軟件延時 50ms子程序RET第四章 P1236 根據運算結果給出的數據到指定的數據表中查找對應的數據字。運算結果給出的數據在片內數據存儲器的 40H 單元中,給出的數據大小在 000FH 之間,數據表存放在 20H 開
11、始的片內程序存儲器中。查表所得數據字 (為雙字節、高位字節在后)高位字節存于42H、低位字節存于 41H單元。其對應關系為:給出數據; 00 01020DH0EH0FH對應數據: 00A0H 7DC2H FF09H3456H 89ABH 5678H請編制查表程序段,加上必要的偽指令,并加以注釋。答: 程序如下:ORG 0000HAJMP MAIN ,0RG 0020HTAB :DB OAOH,OOH,0C2H,7DH,09H,OFFH,.,56H ,34H,0ABH,89H,DB 78H, 56H;數據字表ORG 0050HMAIN : MOV A ,40H ;運算結果給出的數據放在 40H中
12、MOV DPTR ,#TAB ;指向數據字表首地址RL A ;由于是雙字節,所以 A左移 1位(乘 2)MOV 40H ,A ;結果放在 40H MOVC A ,A+DPTR ;查表,找出對應的值MOV 41H ,A ;查找出的數據值低字節放入 41HMOV A 40HADD A , #01H ;查找數據的高位字節MOV DPTR , #TABMOVC A , A+DPTRMOV 42H , A 。 ;查找出的數據值高字節放入 42HSJMP$ 注意:數據表存放在 20 H 開始的片內存儲器中,該存儲器應為內部程序存儲器,因為 查表指令 MOVC的功能是從程序存儲器中讀數據。10. 把長度為
13、10H 的字符串從內部數據存儲器的輸入緩沖區 INBUF 向設在外部 數據存儲器的輸出緩沖區 OUTBUF 進行傳送,一直進行到遇見回車字符 “CR”結 束傳送或整個字符串傳送完畢。加上必要的偽指令,并對源程序加以注釋。答:程序如下:ORGAJMPORG0000HMAIN0030HMAIN:MOVR7,#10H;數據長度MOVR0,#INBUF;源數據首地址MOVDPTR ,#OUTBUF ;目的數據首地址LOOP:MOVA,R0;把源數據的值賦給 ACJNEA ,#0DH , LOOP1;是 “ CR”(ASCII 碼值為 0DH) ?SJMPEND1;是 “ CR”,則結束傳送LOOP1:
14、MOVXDPTR,A;把 A 的值賦給目的數據INCR0 ;源數據下一個地址值INCDPTR;目的數據下一個地址值DJNZR7, LOOP;判數據傳送是否完畢?END1:SJMPEND112比較兩個 ASCII 碼字符串是否相等。 字符串的長度在內部數據存儲器的 20H 單元,第一個字符串的首地址在內部數據存儲器的 30H 中,第二個字符串的首 地址在內部數據存儲器的 50H 中。如果兩個字符串相等, 則置用戶標志 F0為 0; 否則置用戶標志 F0 為 1。 加上必要的偽指令,并加以注釋。 (注:每個 ASCII 碼字符為一個字節,如 ASCII 碼“ A”表示為 41H)答 : 字符串中每
15、一個字符都可以用一個 ASCII 碼表示。只要有一個字符不相同,就可以 判斷字符串不相等。ORG 0000H AJMP MAIN ORG 0030HMAIN : MOV R0 , #30H 第一個字符串的首地址MOV R1 , #5 0H 第二個字符串的首地址LOOP : MOV A , R0 第一個字符串的字符值賦給 AMOV B , R1 ;第二個字符串的字符值賦給 BCJNE A , B,NEXT ;兩個字符值比較INC R0 字符值相等,則繼續比較DJNZ 20H , LOOP ; 判斷字符串是否比較完CLR F0 字符串相等,則 F0 位清 0SJMP $NEXT : SETB F0
16、 字符串不等,則 F0 位置 1SJMP $END例如: (2OH)=03H,(3OH)=41H,(31H)=42H,(32H)=43H,(5OH)=41H, (51H)= 42H ,(52H)=43H 。兩個字符串均為“ ABC。執行結果: F0=0答:分析:帶符號數以字節最高位14. 80C51單片機從內部數據存儲器的 31H 單元開始存放一組 8位帶符號數,字 節個數在 30H 中。請編寫程序統計出其中正數、零和負數的數目,并把統計結 果分別存入 20H、21H 和 22H 三個單元中。加上必要的偽指令,并對源程序加 以注釋。D7 的值來區分是正數 (包括零 )和負數。 D7=1 ,則該
17、帶符號數為負數。 程序如下:POS_NUMEQU20HZERO_NUMEQU21HNEG_NUMEQU22HMAIN: MOVPOS_NUM , #0MOVZERO_NUM , #0MOVNEG_NUM , #0MOVR1,30H;MOVR0,#31H;LOOP: MOVA,R0JB ACC.7, INC_NEGCJNEA,#0, INC_POSINCZERO_NUMAJMPLOOP1INC_NEG: INCNEG_NUMAJMPLOOP1INC_POS: INCPOS_NUMLOOP1: INCR0DJNZR1,LOOP;正數個數;零個數;負數個數;計數單位初始化為 0數據長度數據首地址;符
18、號位為,該數為負數,跳轉加 1;該數為 0, 0 個數加 1;負數個數加 1;該數為正數,正數個數加 1;判斷統計是否結束END例如:已知 (30H)=08H ,31H 單元起存放數據為: 00H,80H,7EH ,6DH , 2FH ,34H ,EDH ,FFH。 執行結果:(20H)=04H ,(21H)=01H , (22H)=03H 。16將外部數據存儲器的 2040H 單元中的一個字節拆成 2 個 ASCII 碼,分別存 入內部數據存儲器 40H和 41H單元中, 試編寫以子程序形式給出的轉換程序 說明調用該子程序的入口條件和出口功能。 加上必要的偽指令, 并加以注釋。 答: 子程序
19、的入口條件、出口功能及源代碼如下:子程序人口條件:準備拆為 2 個 ASCII 碼的數存入外部 RAM的 40 H 單元中。 子程序出口功能: 完成外部 RAM單元一個字節拆成 2 個 ASCII 碼,分別存入內部數據存儲器 40 H 和 41 H 單元中。ORG 1 000HB_TO_A :MOV DPT,R #40H;外部RAM40H單元MOV R0,#40HMOVX A, DPTR ;取數PUSH AANL A,#0FH;低 4 位轉換為ASCII 碼LCALL CHANGEMOV RO , AINC R0POP A SWAP AANL A ,#0FH;高 4 位轉換為 ASCII 碼L
20、CALL CHANGEMOV R0 , ARETCHANGE: CJNE A ,#0AH,NEXT ;轉換子程序NEXT :JNC NEXT2; 0AH,轉移ADD A,#3 0H;9,數字 0-9 轉化為 ASCII 碼RETNEXT2 :ADD A ,#37H;字母 A F 轉化為 ASCII 碼RETEND設外部 (40 H)=12 H 。執行程序 B_TO_A后:內部 (40 H)=31 H ,(41 H)=32 H 設外部 RAM(40 H)=ABH。執行程序 B_TO_A后, 內部(40 H)=41 H ,(41 H)=42 H17根據 8100H 單元中的值2XP1= 80HX,
21、決定 P1 口引腳輸出為:X0X=0(128DX 63D)X 變反 X0 答: 程序如下:ORG 0000HSJMP BEGINORG 0030HBEGIN :MOV DPTR , #8100HMOVX A,DPTRMOV R2,AJB ACC.7,SMALLE;R 有符號數 0SJMP UNSIGNED ;無符號數 0SMALLER : DEC A; X0,輸出 -X( 先減 1,再取反 )CPL AMOV P1 , ASJMP OKUNSIGNED :CJNE A ,#00H, BIGGER ;不等于 0 即大于 0MOV P1 ,#80H;X 等于 0,輸出 80HSJMPOKBIGGE
22、R : CLR C;X 大于 0,輸出 A2RLCA;A 2MOVP1 , AOK :SJMP $END例如:輸入 55 H,P1口引腳輸出 AAH;輸入 00 H , P1口引腳輸出 80 H;輸入 F1(一 1 5 的補碼 ),P1 口引腳輸出 0FH。22. 編寫求一組無符號數中最小值的子程序, 入口條件為:內部數據存儲器的 20H 和 21H 中存數據塊的起始地址, 22H 中存數據塊的長度, 求得的最小值存入 30H 中。答: 程序如下:;求無符號數最小值的子程序 CMPIORG 2000HCMPI : MOV DPL , 20HMOV DPHMOV 30HLOOP : MOVX A
23、MOVX ACJNE ASJMP LOOP1CHK : JNC LOOP1MOV 30H LOOP1 : INC DPTR,21H, #0FFH ;最小值單元初始值設為最大值 ,DPTR, DPTR ,3 0H ,CHK ;比較兩個數大小;兩個數相等,不交換; A 較大,不交換,A ;A 較小,交換DJNZ 22H LOOPRET注意: 30 H 中始終存放兩個數比較后的較小值,比較結束后存放的即是最小值。例如: (20 H)=00 H ,(21 H)=80 H (22 H)=0 5 H 。從 8000 H 開始存放下列數: 02 H, 04 H,01 H,FFH,03 H。調用子程序 CMP
24、l后的結果: (30 H)=01 H第五章 p1411什么是中斷?在單片微機中中斷能實現哪些功能?答 : 單片機在程序執行過程中,允許外部或內部“事件 通過硬件打斷程序的執行 使其轉向執行處理外部或內部 “事件的中斷服務子程序; 而在完成中斷服務子程序以后, 繼續執行原來被打斷的程序,這種情況稱為“中斷 ,這樣的過程稱為“中斷響應過程 780C51共有哪些中斷源?對其中斷請求如何進行控制?答 : 中斷響應是有條件的,即:中斷源申請中斷; 該中斷源已被允許中斷,且 CPU也已允許中斷; 沒有同級或高優先級中斷在執行中斷服務程序。在接受中斷申請時,如遇下列情況之一,硬件生成的長調用指令LCALL將
25、被封鎖: CPU正在執行同級或高一級的中斷服務程序。因為當一個中斷被響應時, 其對應的中斷優先級觸發器被置 1,封鎖了同級和低級中斷。 查詢中斷請求的機器周期不是執行當前指令的最后一個周期。目的在于使當前指令 執行完畢后,才能進行中斷響應,以確保當前指令的完整執行。 當前正在執行 RETI 指令或執行對 IE、IP 的讀寫操作指令。 80C51中斷系統的特性規 定,在執行完這些指令之后,必須再繼續執行一條指令,然后才能響應中斷。12 80C51的中斷與子程序調用有哪些異同點,請各舉兩點加以說明。 相同點: 都是中斷當前正在執行的程序,都要通過執行返回指令,返回到原來的程序。 都是由硬件自動地把
26、斷點地址壓入堆棧; 當執行到返回指令時, 自動彈出斷點地址 以便返回原來的程序。都要通過軟件完成現場保護和現場恢復。 都可以實現嵌套。 不同點: 中斷請求信號可以由外部設備發出, 是隨機的; 子程序調用子程序卻是由軟件編排 好的。 中斷響應后由固定的矢量地址轉入中斷服務程序,而子程序地址由軟件設定。 中斷響應是受控的,其響應時間會受一些因素影響素;子程序響應時間是固定的。第六章 P1611. 80C51 單片微機內部設有幾個定時器計數器?簡述各種工作方式的功能特 點?答:80C51 單片機內部設有 2 個 16 位定時器計數器 TO 和 T1 。定時 器計數器有 4 種工作方式,其特點如下:
27、方式 O 是 13 位定時器計數器。 由 THxT 高 8 位(作計數器)和 TLx的 低 5 位(32 分頻的定標器)構成。 TLx的低 5 位溢出時,向 THxT進位; THxT 溢 出時,硬件置位件 TFx(可用于軟件查詢 ) ,并可以申請定時器中斷定時器。 方式 1 是 16 位定時器計數器。 TLxT 的低 8 位溢出時向 THx進位 (可用于軟件查詢 ) ,并可以申請定時器中斷。 方式 2 是定時常數是定時自動重裝載的 8 位定時器計數器。 TLx作為 8 位計數寄存器, THx 作為 8 位計數常數寄存器數。當 TLx 計數溢出時,一方 面將 TFx 置位,并申請中斷;另一方面將
28、 THx 的內容的自動重新裝入 TLxT 中, 繼續計數。由于重新裝重入不影響 THx 的內容,所以可以多次連續再裝入。方 式 2 對定時控制特別有用。 方式 3 只適用于 TO,T0被拆成兩個獨立的 8位計數器位計 TLO和 THO 。 TLO做 8 位計數器,它占用了 T0 的 GATE、INTO 、啟動停止控制位 TRO、TO 引腳( P3.4)以及計數溢出標志位 TF0和 TO的中斷矢量 (地址為 000BH)等 TH0 只能做 8 位定時器用,因為此時的外部引腳 TO已為定時器計數器 TLO 所占用。 這時它占用了定時器計數器 T1 的啟動停止控制位 TRl 、計數溢出標志位 TFl
29、及 T1中斷矢量(地址為 001BH)。T0 設為方式 3 后,定時器計數器 T1 只可選方式 O、1 或 2 。由于此時 計數溢出標志位 TFI 及 T1 中斷矢量 ( 地址為 001BH)已被 TH0T 所占用,所以 T1 僅能作為波特率發生器或其他不用中斷的地方。5在 80C51單片微機系統中, 已知時鐘頻率為 6MHz,選用定時器 T0 方式 3,請 編程使 P10和 P1l 引腳上分別輸出周期為 2ms和 400s 的方波。加上必要 的偽指令,并對源程序加以注釋。答:機器周期為 2 s,定時分別為定時分2ms和 400 s。8計算: 4004 s 定時, 400 s=(2 8-TC)
30、T 2s,TC=38 H 。 程序如下:ORG 0000H0000 0130 AJMA MAINORG 000BH ;定時器 TO 中斷矢量。000B 2100 AJMP TIMEMAIN:0030 7805 MOV R0 , #05H;T0 方式 3 ,定時器中斷;TLO 定時 400 s0038D28CSETB TR0T003AC28ECLR,TR1003CD2A9SETBET0E003ED2AFSETBEA004080FESJMP$ORG0100H0TIME:0100758A38MOVTL0 , #38H0103B29B 1CPLP1.10105D804 DJNZ R0,RETURN01
31、077805 MOV R0 ,#05H0109B290 CP.P1.0;40040032 758903MOV TMOD,#03H0035 758A38 MOV TL0 , #38HRETUR:N;開啟定時器定 TL0;開定時器 TLO 中斷;中斷等待;TL0T 定時 400s;4004 s 定時到, P1.1P1 輸出變反s*5=2ms 到, P1.O 輸出變反010B 32 RETIEND14. 監視定時器 T3功能是什么?它與定時器 /計數器 T0、T1有哪些區別? T3 俗稱“看門狗 ,它的作用是強迫單片機進入復位狀態,使之從硬件或軟件故障 中解脫出來。在實際應用中, 由于現場的各種的干
32、擾或者程序設計程序錯誤, 可能使單片機的程序進 入了“死循環 或程序區 ( 如表格數據區 )之后,在一段設定的時間內的,假如用戶程序沒有重裝監視重裝定時器 T3 ,則監視電路將產生一個電路將產生系統復位信號位 ,強迫單片機單退出“死循環 或“非程序區程” ,重新進行“冷啟動”或“熱啟動” 。在程序正常運行時,需要不斷地對 T3 進行“喂狗” ,當由于干擾而沒能及時能“喂狗 ,則強迫單片機進入復位狀態,從而退出非正常運行狀態。“喂狗”的時間間隔就是允許的失控時間。 T3 的定時溢出表示出現非正常狀態, 而 TO 和 T1 的定時溢出是正 常狀態。第七章 P186 簡述串行通信接口芯片 UART的
33、主要功能?答: 它是用于控制計算機與串行設備的芯片。將由計算機內部傳送過傳來的并行數據行轉換為輸出的串行數據流。 將計算機外部來的串行數據串轉換為字節,供計算機內部并行數據的器件使用。 在輸出的串行數據串流中加入奇偶校驗位, 并對從外部接收的數據流進行奇偶校驗奇 偶。 在輸出數據流中加入啟停標記,并從接收數據流中刪除啟停標記啟停 。 處理由鍵盤或鼠標發鼠 出的中斷信號(鍵盤和鼠標也是串行設備也是串行) 。 可以處理計算機與外部串行設備的同步管理問題。 80C51 單片微機串行口共有哪幾種工作方式?各有什么特點和功能?答: 80C51 單片微機串行口共有 4 種工作方式: 移位寄存器方式,波特率
34、為晶振的 1/12 8 位 UART,波特率可變 9 位 UART ,波特率為晶振的 1/32 或 1/64 9 位 UART ,波特率可變它們都是串口通信。12. 80C51 單片微機串行口共有 4 種工作方式,它們的波特率分別為 晶振 的 1/12 , 波特率可變 , 波特率為晶振的 1/32 或 1/64 , 波特率可變 。第八章 P2591. 簡述單片微機系統擴展的基本原則和實現方法。系統擴展是指單片機內部答:系統擴展是單片機應用系統硬件設計中最常遇到的問題。各功能部件不能滿足應用系統要求時,在片外連接相應的外圍芯片以滿足應用系統要求。80C51 系列單片機有很強的外部擴展能力, 外圍
35、擴展電路芯片大多是一些常規芯片, 擴展電 路及擴展方法較為典型、 規范。 用戶很容易通過標準擴展電路來構準擴展電路電構成較大規 模的應用系統。對于單片機系統擴展的基本方法有并行擴展法和串行擴展法兩種。 并行擴展法是指利用 單片機的三組總線 (地址總線 AB 、數據總線 DB 和控制總線 CB)進行的系統擴展;串行 擴展法是指利用 SPIS 三線總線和 12C 線總線的串行系統擴展。 外部并行擴展行單片機是通過芯片的引腳進行 系統擴展的。為了滿足系統擴展要統擴求,80C51 系列單片機芯片引腳可以構成圖 8-1 所示的三總線結構,即地址總線 AB 、數據總線 DB 和 控制總線 CB 。單片機所
36、有的外部芯片都通過這三組總線進行擴展。 外部串行擴展80C51系列單片機的串行擴展包括: SPI(Serial Peripheral Interface) 三線總線和 12C 雙總線 兩種。在單片機內部不具有串行總線時,可利用單片機的兩根或三根I O 引腳甩軟件來虛擬串行總線的功能 。2. 如何構造 80C51 單片機并行擴展的系統總線?答: 80C51 并行擴展的系統總線有三組。地址總線 (A0 A15) :由 P0口提供低 8 位地址 A0A7,P0口輸出的低 8位地址 A0 A7 必須用鎖存器鎖存,鎖存器的鎖存控制信號為單片機引腳 ALE 輸出的控制信號。由 P2 口提供高 8 位地址
37、A8A15。數據總線 (D0D7):由 P0口提供,其寬度為 8 位,數據總線要連到多個外圍芯片上, 而在同一時間里只能夠有一個是有效的數據傳送通道。 哪個芯片的數據通道有效, 則由地址 線控制各個芯片的片選線來選擇。 控制總線( CB ):包括片外系統擴展用控制線和片外信號對單片機的控制線。系統擴 展用控制線有 ALE 、PSEN、EA 、WR 。14. 已知可編程 I/O 接口芯片 8255A 的控制寄存器的地址為 BFFFH,要求設定 A 口為基本輸入, B 口為基本輸出, C 口為輸入方式。請編寫從 C 口讀入數據后, 再從 B 口輸出的程序段。并根據要求畫出 80C51與 8255A
38、 連接的邏輯原理圖。 加上必要的偽指令,并對源程序加以注釋。答:已知 8255A 的控制寄存器地址為 BFFFH ,若地址線 A0 、A1 被用做 8255A 端口選 擇信號,則 8255A 的 C 口地址為 BFFEH ,B 口地址為 BFFDH ,A 口地址為 BFFCH 。可以 選用地址線 P2.6(A14) 作 8255A 的片選線。8255A 與 80C51 連接圖如圖 8-7 所示。程序如下:ORG 0000HMOVDPTR ,#0BFFFH ;8255A 控制寄存器地址MOV A, #99HMOVX DPTR,A;控制字 (PA 輸入、 PB 輸出、 PC輸入 )MOVDPTR,
39、#0BFFEH ;C 口地址MOVX A,DPTR;PC輸入MOVDPTR,#0BFFDH ;B 口地址MOVX DPTR,A;PB 輸出19.D/A轉換器是將 數字信號數字 轉換為模擬信號 ,DAC0832具有 直通方式 單緩沖方式 , 雙緩沖方式 三種工作方式,其主要技 術性能有 分辨率 , 轉換精度 , 轉換速率 /建立時間。22. 利用 ADC0809芯片設計以 80C51為控制器的巡回檢測系統。 (8 路輸入的 采樣周期為 1秒,)其它末列條件可自定。請畫出電路連接圖,并進行程序設計。【答】巡回檢測系統如圖 8-11 所示。分析: 8 路模擬輸入通道圖 8-11 巡回檢測系統IN0-
40、IN7 的地址為 DFF8H DFFFH(P2.5=0) 。ORG 0000HAJMP MAINORG 0030H;延時 128s子程序MAIN:MOVDPTR ,#0DFF8H;通道 0 地址MOVR0,#40H;存儲單元首址LOOP : MOVXDPTR , A;啟動 A/D 轉換LCALLD128s;延時等待完成MOVXA ,DPTR;讀入轉換值MOVR0,A;存入內存D128s:RETEND23. 請舉例說明獨立式按鍵的設計原理。 答:獨立式按鍵就是各按鍵相互獨立, 每個按鍵分別與單片微機的輸入 引腳或系統外擴 I/O 芯片的一根輸入線相連。 每根輸入線上的按鍵, 它的工作狀 態不會影
41、響其他輸入線的工作狀態。 因此,通過檢測輸入線的電平狀態, 可以很 容易地判斷哪個按鍵被按下了。 獨立式按鍵電路配置靈活,軟件結構簡單,但每個按鍵需占用一根輸入引腳。例如,單片微機的 P1.0 引腳上接一個按鍵,無鍵按下時 P1.0 由上拉電阻決 定為高電平,當按鍵按下 P1.0 通過按鍵與地線短路而為低電平。 可見,查詢 P1.0 引腳的電平即可判斷該按鍵是否被按下。25 如何用靜態方式實現多位 LED顯示,請畫出接口電路圖,并編寫 LED顯示 程序答: 靜態顯示 LEDL 接口( 1)連接方法 各數碼管的公共極固定接有效電定接有平, 各數碼管的字形控制的字形 端分別由各自的控制信號控制信
42、。( 2)優點 LEDL 顯示亮度溫度,容易調節,編程容編易,工作時占用作時 CPU( 3)缺點 若直接用單片機輸出各位數接用單片機輸出各出碼管的字形信號時,占用單片機的 I/O 口線較多。一般僅適用于 顯示位數示 較少的應用的場合。26 如何用動態方式實現多位 LED顯示,請畫出接口電路圖,并編寫 LED顯 示程序。答:動態顯示 LEDL 接口 (1)連接方法 各位數各碼管的字形控制端對應地并在 一起,由一組由 I/O 端口進行控制,各位的公共極相互獨 立,分別由不同的分別由不 I/O 控制信號控制。 ( 2)優點 節省 I/O 端口線 (3)缺點 顯示亮度不夠穩定,影響因素較 多;編程較復
43、雜,占用 CPUC 時間較多。29簡述系統擴展時的可靠性設計。答:應用系統擴展時,可靠性設計是單片微機應用系統軟件、硬件設計的重要組成 部分, 按照國家標準規定,可靠性的定義是“產品在規定條件下和規定時間內,完成規定功 能的能力”,離開這個三個“規定” ,就失去了衡量可靠性高低的前提。可靠性設計貫徹在單片微機應用系統設計的全過程,硬件系統設計、 PCB 設計及電源 系統設計主要是本質可靠性設計。 而在軟件設計及總體設計中, 則除了本質可靠性外, 還必 須考慮可靠性控制設計。30簡述系統擴展時的低功耗設計。答: 應用系統擴展時,低能耗設計除了降低功效、節省能源、滿足綠色電子的基本要求之外,還能提
44、高系統的可靠性,滿足便攜式、電池供電等特殊場合產品的要求。應用系統低功耗設計的意義如下:實現“綠色”電子,節省能源。 低功耗的實現, 能明顯地降低應用系統所消耗的功率。 消耗功率的降低,可以使溫升降低,改善應用系統的工作環境。提高了電磁兼容性和工作可靠性。目前單片微機正全盤 CMOS 化, CMOS 電路有較 大的噪聲容限;單片微機的低功耗常采用的待機、掉電及關閉電源等方式,在這些方式下, 系統對外界噪聲失敏,大大減少了因噪聲干擾產生的出錯概率。 促進便攜化發展。最少功耗設計技術有利于電子系統向便攜化發展。如便攜式儀器儀表, 可以在野外環境使用,僅靠電池供電就能正常工作。微機原理與接口技術實驗
45、作業 第一部分 簡答題 (必做題)1. 80C51單片微機內部有哪幾個常用的地址指針,它們各有什么用處。80C51 單片微機內部有三個常用的指針,即 PC-程序計數器,存放下一條將要從程序存儲器取出的指令的地址。 SP-堆棧指示器,指向堆棧棧頂。DPTR數- 據指針,作為外部數據存儲器或 I/O 的地址指針。2. 簡述 80C51的程序狀態字 PSW的主要功能。PSW 的主要部分是算數邏輯運算單元 ALU 的輸出。有些位根據指令運算結 果,由硬件自動生成。如 OV為溢出標志位,用于指示 8 位帶符號數運算后 有否超出 8位帶符號數允許范圍。 C標志為進位 /借位標志位。 多倍精度的加 減法運算。3. 80C51訪問片內外不同存儲空間時采用哪 3 類傳送指令。MOV 傳送指令用于訪問片內數據存儲器。MOVC 傳送指令用于對程序存儲器內的表格進行查表操作。MOVX 傳送指令用于訪問片外數據存儲器或 I/O, 因為執行 MOVX指令時會 產生控制信號 RD 或WR4. 簡述 80C51單片微機內部 RAM低 128字節 4 個主要區域的特點。 寄存器區:共4組寄存器,每組 8個存儲單元,以R0-
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版小學數學四年級上冊教學計劃分析
- 2025幼兒園教師線上教學效果監測計劃
- 工業污水管線地下管線及地面設施加固措施
- 六下數學課時安排計劃
- 汽車維修保養風險防范措施
- 小學一年級數學情景教學計劃
- 蘇教版小學科學五年級下冊教學輔導計劃
- 兒童心理行為觀察與記錄心得體會
- 護學崗職責整合及團隊協作他
- 化工項目負責人安全生產管理職責詳解
- 黨課課件含講稿:《關于加強黨的作風建設論述摘編》輔導報告
- 國家開放大學行管專科《監督學》期末紙質考試總題庫2025春期版
- GB/T 3280-2015不銹鋼冷軋鋼板和鋼帶
- CNC數控車床操作指導書
- 管道施工主要質量保證措施及通病防治措施
- 失火罪消防責任事故罪消防刑事案件移送移交報告
- 斯巴達勇士賽
- 住院醫師規范化培訓臨床小講課指南(2021年版)
- T∕CQAP 2002-2022 基于水泡性口炎病毒載體的新型冠狀病毒核酸檢測用陽性假病毒質控品
- 1#球磨機襯板更換及方案
- 俄羅斯、中國、歐美電子管型號替代表
評論
0/150
提交評論