版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、模塊3 數(shù)碼管接口控制,課題1 5位數(shù)碼管的串行靜態(tài)顯示控制接口控制,任務(wù)1 數(shù)碼管的編碼控制,任務(wù)2 1個數(shù)碼管顯示控制,任務(wù)3 串行靜態(tài)顯示“89C52”,任務(wù)1 動態(tài)掃描顯示“bj2008”,任務(wù)2 動態(tài)顯示,課題2 6位數(shù)碼管的動態(tài)掃描顯示接口控制,任務(wù)4 串行靜態(tài)跳變顯示“000~255”,數(shù)碼管顯示,任務(wù)1,一、數(shù)碼管的識別與測量,1、數(shù)碼管的識別,7段數(shù)碼管由7個長形發(fā)光二極管和1個圓形發(fā)光二極管構(gòu)成
2、,它們的陽極(或陰極)接在一起作為公共端(COM),陰極(或陽極)各自引出作為控制端引腳dp、g、f、e、d、c、b、a(按二進制的位權(quán)左高右低的順序排列)。,(1)結(jié)構(gòu):,任務(wù)1,1、數(shù)碼管的識別,(2)分類:,公共端是陽極的數(shù)碼管稱為共陽極數(shù)碼管,公共端是陰極的數(shù)碼管稱為共陰極數(shù)碼管。,共陰極數(shù)碼管,共陽極數(shù)碼管,數(shù)碼管顯示,任務(wù)1,2、數(shù)碼管的測量,使用數(shù)字萬用表的PN結(jié)測試檔對數(shù)碼管中的8個發(fā)光二極管加上正向電壓,正常情
3、況下8個發(fā)光二極管都會發(fā)光,以此可以判斷該數(shù)碼管是共陽極還是共陰極。,數(shù)碼管顯示,任務(wù)1,二、數(shù)碼管的編碼,1、數(shù)碼管的編碼方法,將數(shù)碼管的公共端接上直流電源的正極(共陽極)或負極(共陰極),并通過控制各控制端高低電平可顯示如圖3-1-3所示的字符。,例1:讓共陰極數(shù)碼管顯示“2”,0 1 0 1 1 0 0 0,數(shù)碼管顯示,5BH,★共陽極7段數(shù)碼管各段的數(shù)字
4、排列表,0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H, 0 1 2 3 4 5 6 7 8 90H,88H, 83H ,0C6H,0A1H,86H,8FH 9 A B C D E F,★共陰極7段數(shù)碼管各段的數(shù)字排列表,03FH,
5、06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH 0 1 2 3 4 5 6 7 8 977H,7CH, 39H,5EH ,79H,71HA B C D E F,任務(wù)1,數(shù)碼管顯示,任務(wù)1,三、數(shù)碼管的控制參數(shù)及控制電路設(shè)計,數(shù)碼管中每個發(fā)光二極管的額定參數(shù)與普通
6、發(fā)光二極管一樣:額定電壓為3V,額定電流為10mA。,1、控制參數(shù),數(shù)碼管顯示,任務(wù)1,單片機電源為5V,因此輸?shù)綌?shù)碼管時要進行分壓:即在公共端(COM)接20歐電阻。 一個數(shù)碼管由8個發(fā)光二極管,正好構(gòu)成一個字節(jié)的控制字,1個數(shù)碼管可由1個I/O端口(如P1口)的位來控制,但是單片機的I/O口的驅(qū)動能力很小,不能用來直接驅(qū)動額定電流為10mA的發(fā)光二極管,因此,需要采用具有電流放大能力的元件(如鎖存器74LS
7、245、74LS373、74LS164、達林頓管或三極管)來驅(qū)動。,三、數(shù)碼管的控制參數(shù)及控制電路設(shè)計,2、控制電路設(shè)計,數(shù)碼管顯示,任務(wù)1,數(shù)碼管顯示,1、讓一個共陰極數(shù)碼管顯示數(shù)字“8”。,四、數(shù)碼管顯示例子,任務(wù)1,ORG 0000H LJMP START ORG 0030HSTART: MOV P0,#80H
8、 SETB P2.0 LJMP $ END,參考程序,數(shù)碼管顯示,任務(wù)1,數(shù)碼管顯示,2、讓一個共陰極數(shù)碼管循環(huán)顯示字符“0~F”。,四、數(shù)碼管顯示例子,任務(wù)1,數(shù)碼管顯示,格式: 段碼表頭標號: DB data,data,data DB data,da
9、ta,data,☆新指令剖析,1、制表指令DB,功能:將程序?qū)懭雴纹瑱C的程序存儲器(ROM)時, 在ROM中開辟一空間存儲一些程序運行時所需 要的數(shù)據(jù)。這些常數(shù)都是單字節(jié)常數(shù)。,⊙段碼表一般放在結(jié)束指令的前面。,例1:將共陰極數(shù)碼管顯示“0-F”的斷碼存入單片機的 ROM中。,任務(wù)1,數(shù)碼管顯示,☆新指令剖析,SEGTAB: ;段碼表
10、 DB 03FH,06H,5BH,4FH,66H,6DH ;0,1,2,3,4,5 DB 7DH,07H,7FH,6FH ,77H,7CH ;6,7,8,9,A,B DB 39H,5EH ,79H,71H ;C,D,E,F(xiàn),任務(wù)1,數(shù)碼管顯示,☆新指令剖析,格式: MOV A,# data MOV DP
11、TR, # 段碼表頭標號 MOVC A,@A+DPTR,2、查表指令MOVC,功能:將以上制表指令在ROM中產(chǎn)生的常數(shù)取出, 需借用此指令和數(shù)據(jù)指針寄存器“DPTR”,⊙查出表格中第“data+1”個數(shù)據(jù)。,例2:用查表指令查出段碼表SEGTAB中數(shù)據(jù)“6FH”, 并傳送到寄存器R0中。,SEGTAB: ;段碼表
12、 DB 03FH,06H,5BH,4FH,66H,6DH ;0,1,2,3,4,5 DB 7DH,07H,7FH,6FH ,77H,7CH ;6,7,8,9,A,B DB 39H,5EH ,79H,71H ;C,D,E,F(xiàn),任務(wù)1,數(shù)碼管顯示,☆新指令剖析,參考答案: MOV A,# 9
13、 MOV DPTR, # SEGTAB MOVC A,@A+DPTR MOV R0,A,MOV A,#3 MOV DPTR,#TABLE MOVC A,@A+DPTRTABLE: DB 08H, 0C5H, 0B0H, 45H, 60H, 4FH
14、 DB 6FH, 03CH END問:執(zhí)行完此程序后,A= ( ),任務(wù)1,數(shù)碼管顯示,☆練習,任務(wù)1,數(shù)碼管顯示,☆新指令剖析,3、比較不相等轉(zhuǎn)移指令CJNE,格式: CJNE A, #data,rel CJNE A, direct,rel CJNE @Ri, #data,rel C
15、JNE Rn,#data,rel,功能:比較兩個字節(jié)中的值,若兩個字節(jié)中的值不 相等,則轉(zhuǎn)移。,3、比較不相等轉(zhuǎn)移指令CJNE,⊙注意:具有比較和判斷雙重功能,可產(chǎn)生3個分支 程序,即相等分支、大于分支、小于分支,任務(wù)1,數(shù)碼管顯示,☆新指令剖析,不相等情況下,若第一操作數(shù)內(nèi)容小于第二操作數(shù)內(nèi)容,則(CY)=1,否則(CY)=0.,例4:若(R2)=60H, 問執(zhí)行完指令CJNE R2,
16、 #68H, DL0后,(CY)=( )。,任務(wù)1,數(shù)碼管顯示,☆新指令剖析,例3:試寫出以下指令的執(zhí)行結(jié)果: MOV R0,#0DL0: INC R0 CJNE R0,#6,DL0 LJMP $結(jié)果:(R0)=( ),例2:讓一個共陰極數(shù)碼管循環(huán)顯示字符“0~F”。,任務(wù)1,數(shù)碼管顯示,1、制段碼表,SEGTAB:
17、 ;段碼表 DB 03FH,06H,5BH,4FH,66H,6DH DB 7DH,07H,7FH,6FH ,77H,7CH DB 39H,5EH ,79H,71H,任務(wù)1,數(shù)碼管顯示,MOV R1,#0MOV DPTR,#SEGTABMOV A,R1MOVC A,@A+DPTRMOV P0,ASETB P2.0INC R1LCALL DE
18、LAYCJNE R1,#16,DISPLJMP START,2、程序流程圖,DISP,START,ORG 0000HLJMP STARTORG 0030H,,,,,,,,,,,ORG 0000H LJMP START ORG 0030H START:
19、 MOV R1,#0 MOV DPTR,#SEGTABDISP: MOV A,R1 MOVC A,@A+DPTR MOV P0,A SETB P2.0 INC R1
20、 LCALL DELAY CJNE R1,#16,DISP LJMP STARTDELAY: ... ...(略)SEGTAB: ;段碼表 DB 03FH,06H,5
21、BH,4FH,66H,6DH,7DH,07H, DB 7FH,6FH ,77H,7CH, 39H,5EH ,79H,71H END,格式: 段碼表頭標號: DB data,data,data DB data,data,data,1、制表指
22、令DB,數(shù)碼管顯示,課前復習,格式: MOV A,# data MOV DPTR, # 段碼表頭標號 MOVC A,@A+DPTR,2、查表指令MOVC,⊙查出表格中第“data+1”個數(shù)據(jù)。,3、比較不相等轉(zhuǎn)移指令CJNE,格式: CJNE A, #data,rel CJNE A, direct
23、,rel CJNE @Ri, #data,rel CJNE Rn,#data,rel,數(shù)碼管顯示,課前復習,任務(wù)1,數(shù)碼管顯示,課堂練習,1、將以下數(shù)據(jù):03FH,06H,5BH,4FH,66H,6DH,7DH, 07H,7FH,6FH ,77H,7CH,39H,5EH ,79H,71H存入 單片機的ROM中(即編制成程序表格,要求表頭為 TABLE)。,2、編寫
24、程序,查出以上表格中的第8個數(shù)據(jù),并傳送到 寄存器B中。,3、試寫出以下指令的執(zhí)行結(jié)果: MOV R0,#12DL0: DEC R0 CJNE R0,#6,DL0 LJMP $結(jié)果:(R0)=( ),任務(wù)1,數(shù)碼管顯示,課堂練習,數(shù)碼管顯示,課堂練習,4、讓一個共陰極數(shù)碼管循環(huán)顯示字符“1-9”,試在例題程序的基礎(chǔ)上做修改,完成此功
25、能。,5、讓一個共陰極數(shù)碼管循環(huán)顯示字符“F-1”,試在例題程序的基礎(chǔ)上做修改,完成此功能。,任務(wù)2,例1:采用AT89C51單片機的2位I/O口來控制下圖所示的串行靜態(tài)顯示電路,將5位“89C52”的斷碼通過串行方式輸出到5片移位寄存器的輸出端鎖存,并由5位數(shù)碼管顯示。,數(shù)碼管顯示,應(yīng)用舉例,任務(wù)2,數(shù)碼管顯示,一、硬件電路,由單片機最小應(yīng)用系統(tǒng)、5個由串行輸入并行輸出的74LS164鎖存器驅(qū)動的共陰極數(shù)碼管組成。數(shù)據(jù)輸入
26、口為“Din”,并將它接到單片機的P3.0口,移位脈沖輸入“CLK”接到單片機的P3.1口。,1、硬件電路的組成,任務(wù)2,數(shù)碼管顯示,☆8位串行輸入并行輸出移位鎖存器74LS164,●1、2腳為與門輸入端“Din”,并一 起作為輸入引腳;● 3-6腳、10-13腳(QA-QH)為并行 輸出端;●8腳“CLK”為移位脈沖輸入端,上 升沿時移入一位;●9腳為清零端,低電平時并行輸出 清零,一般常接高電
27、平。,(1)74LS164芯片的引腳功能,●電路中的“CLK”出現(xiàn)一個移位脈沖時(即由低電平變?yōu)楦唠娖剑?,“Din”端 的狀態(tài)移入到Q0,而原來Q0的狀態(tài)將 移到Q1,從“Din”端輸入的狀態(tài)就逐位 從Q0到Q7,這樣移位8次后74LS164 芯片的Q0-Q7的狀態(tài)與單片機輸出端的 數(shù)據(jù)狀態(tài)是一致的。,任務(wù)2,數(shù)碼管顯示,☆8位串行輸入并行輸出移位鎖存器74LS164,(2)74LS164芯片的數(shù)據(jù)傳送原理,●多個74LS1
28、64進行連接時,前一個寄 存器的第13腳(Q7)連接到下一個寄 存器的“Din”腳。這樣再移位8次后前一 個74LS164芯片的Q0-Q7的狀態(tài)則移位 到下一個74LS164芯片的Q0-Q7中,而 前一個74LS164芯片的Q0-Q7的狀態(tài)則 與當前單片機輸出端的數(shù)據(jù)狀態(tài)是一致 的。,☆8位串行輸入并行輸出移位鎖存器74LS164,(2)74LS164芯片的數(shù)據(jù)傳送原理,任務(wù)2,數(shù)碼管顯示,●若要使這5位數(shù)碼管從左至
29、右顯示5位 段碼字符,先將要顯示的“89C52”編成 共陰極段碼“5BH、6DH、58H、6FH、 7FH”,然后將這5個段碼數(shù)據(jù)按逆序逐 個分8位傳送即可。如此如此移位5*8 次即可將5位段碼完整地輸出到5位數(shù)碼 管顯示。,☆8位串行輸入并行輸出移位鎖存器74LS164,(2)74LS164芯片的數(shù)據(jù)傳送原理,任務(wù)2,數(shù)碼管顯示,☆8位串行輸入并行輸出移位鎖存器74LS164,(3)74LS164的數(shù)據(jù)傳送的實現(xiàn),任務(wù)2,
30、數(shù)碼管顯示,●74LS164串行輸入端數(shù)據(jù)的傳送: MOV P3.0,C●移位脈沖實現(xiàn)指令: CLR P3.1 SETB P3.1,任務(wù)2,數(shù)碼管顯示,☆新指令剖析,格式: 名字 BIT 內(nèi)部數(shù)據(jù)存儲器的位存儲單元地址,●BIT偽指令,功能:用來給單片機的內(nèi)部數(shù)據(jù)存儲器的位存儲單元 定義一個名字
31、,例: DIN BIT P3.0 CLK BIT P3.1,任務(wù)2,數(shù)碼管顯示,一、程序設(shè)計,1、程序流程圖,主程序,顯示子程序,ORG 0000H LJMP START ORG 0030HSTART: MOV 40H,#5BH ;“2”的段碼 MOV 41H,#6DH ;“5”的段碼
32、 MOV 42H,#58H ;“C”的段碼 MOV 43H,#6FH ;“9”的段碼 MOV 44H,#7FH ;“8”的段碼 LCALL DISP LJMP $,任務(wù)2,數(shù)碼管顯示,一、程序設(shè)計,2、源程序設(shè)計,DISP: MOV R0,#40H M
33、OV R1,#5DP0: MOV R2,#8 MOV A,@R0 DP1: RLC A MOV P3.0,C CLR P3.1 SETB P3.1 DJNZ R2,DP1 INC R0 DJNZ R1,DP0
34、 RET,,DP0,DP1,,,,,,,,,,,,ORG 0000H LJMP START ORG 0030HSTART: MOV 40H,#5BH ;“2”的段碼 MOV 41H,#6DH ;“5”的段碼 MOV 42H,#58H ;“C”的段碼 MOV 43H,#6FH ;“9”的段碼 M
35、OV 44H,#7FH ;“8”的段碼 LCALL DISP LJMP $,DISP: MOV R0,#40H MOV R1,#5DP0: MOV R2,#8 MOV A,@R0 DP1: RLC A MOV P3.0,C CLR P3.1
36、 SETB P3.1 DJNZ R2,DP1 INC R0 DJNZ R1,DP0 RET END,任務(wù)2,數(shù)碼管顯示,DBUF EQU 30H TEMP EQU 40H DIN BIT P3.0 CLK BIT P
37、3.1 ORG 0000H LJMP START ORG 0030H START: LCALL CRSJ LCALL QDM LCALL DISP SJMP $,DBUF EQU 30H TEMP EQU 40H
38、 DIN BIT P3.0 CLK BIT P3.1 ORG 0000H LJMP START ORG 0030H START: LCALL CRSJ LCALL QDM LCALL DISP SJMP $,DBUF EQ
39、U 30H TEMP EQU 40H DIN BIT P3.0 CLK BIT P3.1 ORG 0000H LJMP START ORG 0030H START: LCALL CRSJ LCALL QDM LCALL DI
40、SP SJMP $CRSJ: MOV 30H,#2H MOV 31H,#5H MOV 32H,#0CH MOV 33H,#9H MOV 34H,#8H RET,QDM: MOV R0,#DBUF MOV R1,#TEMP
41、 MOV R2,#5 QDM1: MOV DPTR,#SEGTAB MOV A,@R0 MOVC A,@A+DPTR MOV @R1,A INC R1 INC R0 DJNZ R2,QDM1 RET,DISP: MOV R0,#40H MOV R
42、1,#5DP0: MOV R2,#8H MOV A,@R0 DP1: RLC A MOV DIN,C CLR CLK SETB CLK DJNZ R2,DP1 INC R0 DJNZ R1,DP0 RET,SEGTAB:
43、 ;段碼表 DB 03FH,06H,5BH,4FH,66H,6DH DB 7DH,07H,7FH,6FH ,77H,7CH DB 39H,5EH ,79H,71H END,,,用工作于最小應(yīng)用系統(tǒng)的AT89C51單片機的P1口來控制動態(tài)掃描電路中的段碼借口,P0口來控制動態(tài)掃描顯示電路中的位碼接口,讓6位數(shù)碼管顯示“
44、bj2008”字符。,動態(tài)掃描應(yīng)用舉例,顯示數(shù)據(jù)段碼表SEGTAB: DB 03FH,06H,5BH,4FH,66H,6DH ;0,1,2,3,4,5 DB 7DH,07H,7FH,6FH ,77H,7CH ;6,7,8,9,A,B DB 39H,5EH ,79H,71H,00H,40H ;C,D,E,F(xiàn),空,- DB 1EH ;J,;主程序
45、 DBUF EQU 30H TEMP EQU 40H ORG 0000H LJMP START ORG 0030H START: LCALL CRSJ ;調(diào)用存入數(shù)據(jù)子程序
46、 LCALL QDM ;調(diào)用取段碼子程序LOOP: LCALL DISP ;調(diào)用動態(tài)顯示子程序 SJMP LOOP,(1)存入數(shù)據(jù)子程序CRSJ: MOV 30H,#8 MOV 31H,#0 MOV 32H,#0 MOV 33H,#2 MOV 34H,#18
47、 MOV 35H,#11 RET,(2)取段碼子程序QDM: MOV R0,#DBUF MOV R1,#TEMP MOV R2,#06 MOV DPTR,#SEGTABDP00: MOV A,@R0 MOVC A,@A+DPTR MOV
48、 @R1,A INC R0 INC R1 DJNZ R2,DP00 RET,動態(tài)顯示子程序DISP: MOV R0,#TEMP MOV R1,#6 MOV R2,#01H DP01: MOV A,@R0 MO
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- led數(shù)碼管顯示控制
- 數(shù)碼管按鍵顯示
- led數(shù)碼管顯示
- 單片機控制數(shù)碼管顯示程序
- 單片機控制數(shù)碼管顯示數(shù)字
- 任務(wù)一--數(shù)碼管顯示器數(shù)字顯示
- 智能風扇程序,數(shù)碼管顯示溫度
- 數(shù)碼管時鐘顯示按鍵調(diào)時間
- 數(shù)碼管顯示課程設(shè)計報告
- plc數(shù)碼管顯示課程設(shè)計
- 頻率計數(shù)碼管顯示程序
- 兩個數(shù)碼管動態(tài)顯示
- 用led數(shù)碼管顯示的秒表設(shè)計
- 項目二數(shù)碼管時鐘顯示器
- 超聲波測距數(shù)碼管顯示.rar
- 超聲波測距數(shù)碼管顯示.rar
- 8位數(shù)碼管秒表計時顯示
- 數(shù)碼管學號滾動顯示課程設(shè)計
- 八段數(shù)碼管顯示實驗
- 帶數(shù)碼管顯示的交通燈
評論
0/150
提交評論