版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
模塊3數(shù)碼管接口控制課題15位數(shù)碼管的串行靜態(tài)顯示控制接口控制任務(wù)1數(shù)碼管的編碼控制任務(wù)21個數(shù)碼管顯示控制任務(wù)3串行靜態(tài)顯示“89C52”任務(wù)1動態(tài)掃描顯示“bj2008”任務(wù)2動態(tài)顯示課題26位數(shù)碼管的動態(tài)掃描顯示接口控制任務(wù)4串行靜態(tài)跳變顯示“000~255”數(shù)碼管顯示任務(wù)1一、數(shù)碼管的識別與測量1、數(shù)碼管的識別7段數(shù)碼管由7個長形發(fā)光二極管和1個圓形發(fā)光二極管構(gòu)成,它們的陽極(或陰極)接在一起作為公共端(COM),陰極(或陽極)各自引出作為控制端引腳dp、g、f、e、d、c、b、a(按二進(jìn)制的位權(quán)左高右低的順序排列)。(1)結(jié)構(gòu):任務(wù)11、數(shù)碼管的識別(2)分類:公共端是陽極的數(shù)碼管稱為共陽極數(shù)碼管,公共端是陰極的數(shù)碼管稱為共陰極數(shù)碼管。共陰極數(shù)碼管共陽極數(shù)碼管數(shù)碼管顯示任務(wù)12、數(shù)碼管的測量使用數(shù)字萬用表的PN結(jié)測試檔對數(shù)碼管中的8個發(fā)光二極管加上正向電壓,正常情況下8個發(fā)光二極管都會發(fā)光,以此可以判斷該數(shù)碼管是共陽極還是共陰極。數(shù)碼管顯示任務(wù)1二、數(shù)碼管的編碼1、數(shù)碼管的編碼方法將數(shù)碼管的公共端接上直流電源的正極(共陽極)或負(fù)極(共陰極),并通過控制各控制端高低電平可顯示如圖3-1-3所示的字符。例1:讓共陰極數(shù)碼管顯示“2”顯示字符二進(jìn)制碼HEX碼2DpgfedcbaP0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.001011000數(shù)碼管顯示5BH★共陽極7段數(shù)碼管各段的數(shù)字排列表0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,
01234
567890H,88H,83H
,0C6H,0A1H,86H,8FH9ABCDEF★共陰極7段數(shù)碼管各段的數(shù)字排列表03FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
01234
5678977H,7CH,39H,5EH
,79H,71HABCDEF任務(wù)1數(shù)碼管顯示任務(wù)1三、數(shù)碼管的控制參數(shù)及控制電路設(shè)計數(shù)碼管中每個發(fā)光二極管的額定參數(shù)與普通發(fā)光二極管一樣:額定電壓為3V,額定電流為10mA。1、控制參數(shù)數(shù)碼管顯示任務(wù)1單片機(jī)電源為5V,因此輸?shù)綌?shù)碼管時要進(jìn)行分壓:即在公共端(COM)接20歐電阻。一個數(shù)碼管由8個發(fā)光二極管,正好構(gòu)成一個字節(jié)的控制字,1個數(shù)碼管可由1個I/O端口(如P1口)的位來控制,但是單片機(jī)的I/O口的驅(qū)動能力很小,不能用來直接驅(qū)動額定電流為10mA的發(fā)光二極管,因此,需要采用具有電流放大能力的元件(如鎖存器74LS245、74LS373、74LS164、達(dá)林頓管或三極管)來驅(qū)動。三、數(shù)碼管的控制參數(shù)及控制電路設(shè)計2、控制電路設(shè)計數(shù)碼管顯示任務(wù)1數(shù)碼管顯示1、讓一個共陰極數(shù)碼管顯示數(shù)字“8”。ABGECDF四、數(shù)碼管顯示例子任務(wù)1
ORG0000HLJMPSTARTORG0030HSTART:MOVP0,#80HSETBP2.0LJMP$END參考程序數(shù)碼管顯示任務(wù)1數(shù)碼管顯示2、讓一個共陰極數(shù)碼管循環(huán)顯示字符“0~F”。四、數(shù)碼管顯示例子ABGECDF任務(wù)1數(shù)碼管顯示格式:
段碼表頭標(biāo)號:DBdata,data,dataDBdata,data,data☆新指令剖析1、制表指令DB功能:將程序?qū)懭雴纹瑱C(jī)的程序存儲器(ROM)時,在ROM中開辟一空間存儲一些程序運(yùn)行時所需要的數(shù)據(jù)。這些常數(shù)都是單字節(jié)常數(shù)?!讯未a表一般放在結(jié)束指令的前面。例1:將共陰極數(shù)碼管顯示“0-F”的斷碼存入單片機(jī)的ROM中。任務(wù)1數(shù)碼管顯示☆新指令剖析SEGTAB:;段碼表
DB03FH,06H,5BH,4FH,66H,6DH;0,1,2,3,4,5DB7DH,07H,7FH,6FH,77H,7CH;6,7,8,9,A,BDB39H,5EH,79H,71H;C,D,E,F(xiàn)ROM地址SEGTAB+0SEGTAB+1SEGTAB+2SEGTAB+3SEGTAB+4SEGTAB+5所存數(shù)據(jù)03FH06H5BH4FH66H6DHROM地址SEGTAB+6SEGTAB+7SEGTAB+8SEGTAB+9SEGTAB+10SEGTAB+11所存數(shù)據(jù)7DH07H7FH6FH77H7CHROM地址SEGTAB+12SEGTAB+13SEGTAB+14SEGTAB+15所存數(shù)據(jù)39H5EH79H71H任務(wù)1數(shù)碼管顯示☆新指令剖析格式:
MOVA,#data
MOVDPTR,#段碼表頭標(biāo)號MOVCA,@A+DPTR2、查表指令MOVC功能:將以上制表指令在ROM中產(chǎn)生的常數(shù)取出,需借用此指令和數(shù)據(jù)指針寄存器“DPTR”⊙查出表格中第“data+1”個數(shù)據(jù)。例2:用查表指令查出段碼表SEGTAB中數(shù)據(jù)“6FH”,并傳送到寄存器R0中。SEGTAB:;段碼表
DB03FH,06H,5BH,4FH,66H,6DH;0,1,2,3,4,5DB7DH,07H,7FH,6FH,77H,7CH;6,7,8,9,A,BDB39H,5EH,79H,71H;C,D,E,F(xiàn)任務(wù)1數(shù)碼管顯示☆新指令剖析參考答案:
MOVA,#9
MOVDPTR,#SEGTABMOVCA,@A+DPTRMOVR0,A
MOVA,#3MOVDPTR,#TABLEMOVCA,@A+DPTRTABLE:DB08H,0C5H,0B0H,45H,60H,4FHDB6FH,03CHEND問:執(zhí)行完此程序后,A=()任務(wù)1數(shù)碼管顯示☆練習(xí)任務(wù)1數(shù)碼管顯示☆新指令剖析3、比較不相等轉(zhuǎn)移指令CJNE格式:
CJNEA,#data,relCJNEA,direct,relCJNE@Ri,#data,relCJNERn,#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í)行完指令CJNER2,#68H,DL0后,(CY)=()。任務(wù)1數(shù)碼管顯示☆新指令剖析例3:試寫出以下指令的執(zhí)行結(jié)果:
MOVR0,#0DL0:INCR0CJNER0,#6,DL0LJMP$結(jié)果:(R0)=()例2:讓一個共陰極數(shù)碼管循環(huán)顯示字符“0~F”。任務(wù)1數(shù)碼管顯示1、制段碼表SEGTAB:;段碼表
DB03FH,06H,5BH,4FH,66H,6DHDB7DH,07H,7FH,6FH,77H,7CHDB39H,5EH,79H,71H任務(wù)1數(shù)碼管顯示MOVR1,#0MOVDPTR,#SEGTABMOVA,R1MOVCA,@A+DPTRMOVP0,ASETBP2.0INCR1LCALLDELAYCJNER1,#16,DISPLJMPSTART2、程序流程圖DISPSTARTORG0000HLJMPSTARTORG0030HORG0000HLJMPSTARTORG0030H
START:MOVR1,#0MOVDPTR,#SEGTABDISP:MOVA,R1MOVCA,@A+DPTRMOVP0,ASETBP2.0INCR1LCALLDELAYCJNER1,#16,DISPLJMPSTARTDELAY:......(略)SEGTAB:;段碼表
DB03FH,06H,5BH,4FH,66H,6DH,7DH,07H,
DB7FH,6FH,77H,7CH,39H,5EH,79H,71HEND格式:
段碼表頭標(biāo)號:DBdata,data,dataDBdata,data,data1、制表指令DB數(shù)碼管顯示課前復(fù)習(xí)格式:
MOVA,#data
MOVDPTR,#段碼表頭標(biāo)號MOVCA,@A+DPTR2、查表指令MOVC⊙查出表格中第“data+1”個數(shù)據(jù)。3、比較不相等轉(zhuǎn)移指令CJNE格式:
CJNEA,#data,relCJNEA,direct,relCJNE@Ri,#data,relCJNERn,#data,rel數(shù)碼管顯示課前復(fù)習(xí)任務(wù)1數(shù)碼管顯示課堂練習(xí)1、將以下數(shù)據(jù):03FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H存入單片機(jī)的ROM中(即編制成程序表格,要求表頭為TABLE)。2、編寫程序,查出以上表格中的第8個數(shù)據(jù),并傳送到寄存器B中。3、試寫出以下指令的執(zhí)行結(jié)果:
MOVR0,#12DL0:DECR0CJNER0,#6,DL0LJMP$結(jié)果:(R0)=()任務(wù)1數(shù)碼管顯示課堂練習(xí)數(shù)碼管顯示課堂練習(xí)4、讓一個共陰極數(shù)碼管循環(huán)顯示字符“1-9”,試在例題程序的基礎(chǔ)上做修改,完成此功能。5、讓一個共陰極數(shù)碼管循環(huán)顯示字符“F-1”,試在例題程序的基礎(chǔ)上做修改,完成此功能。任務(wù)2例1:采用AT89C51單片機(jī)的2位I/O口來控制下圖所示的串行靜態(tài)顯示電路,將5位“89C52”的斷碼通過串行方式輸出到5片移位寄存器的輸出端鎖存,并由5位數(shù)碼管顯示。數(shù)碼管顯示應(yīng)用舉例任務(wù)2數(shù)碼管顯示一、硬件電路由單片機(jī)最小應(yīng)用系統(tǒng)、5個由串行輸入并行輸出的74LS164鎖存器驅(qū)動的共陰極數(shù)碼管組成。數(shù)據(jù)輸入口為“Din”,并將它接到單片機(jī)的P3.0口,移位脈沖輸入“CLK”接到單片機(jī)的P3.1口。1、硬件電路的組成任務(wù)2數(shù)碼管顯示☆8位串行輸入并行輸出移位鎖存器74LS164●1、2腳為與門輸入端“Din”,并一起作為輸入引腳;●3-6腳、10-13腳(QA-QH)為并行輸出端;●8腳“CLK”為移位脈沖輸入端,上升沿時移入一位;●9腳為清零端,低電平時并行輸出清零,一般常接高電平。(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)與單片機(jī)輸出端的數(shù)據(jù)狀態(tài)是一致的。任務(wù)2數(shù)碼管顯示☆8位串行輸入并行輸出移位鎖存器74LS164(2)74LS164芯片的數(shù)據(jù)傳送原理●多個74LS164進(jìn)行連接時,前一個寄存器的第13腳(Q7)連接到下一個寄存器的“Din”腳。這樣再移位8次后前一個74LS164芯片的Q0-Q7的狀態(tài)則移位到下一個74LS164芯片的Q0-Q7中,而前一個74LS164芯片的Q0-Q7的狀態(tài)則與當(dāng)前單片機(jī)輸出端的數(shù)據(jù)狀態(tài)是一致的?!?位串行輸入并行輸出移位鎖存器74LS164(2)74LS164芯片的數(shù)據(jù)傳送原理任務(wù)2數(shù)碼管顯示●若要使這5位數(shù)碼管從左至右顯示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ù)傳送的實(shí)現(xiàn)任務(wù)2數(shù)碼管顯示●74LS164串行輸入端數(shù)據(jù)的傳送:MOVP3.0,C●移位脈沖實(shí)現(xiàn)指令:CLRP3.1SETBP3.1任務(wù)2數(shù)碼管顯示☆新指令剖析格式:名字BIT內(nèi)部數(shù)據(jù)存儲器的位存儲單元地址●BIT偽指令功能:用來給單片機(jī)的內(nèi)部數(shù)據(jù)存儲器的位存儲單元定義一個名字例:DINBITP3.0CLKBITP3.1任務(wù)2數(shù)碼管顯示一、程序設(shè)計1、程序流程圖主程序顯示子程序
ORG0000HLJMPSTARTORG0030HSTART:MOV40H,#5BH;“2”的段碼MOV41H,#6DH;“5”的段碼
MOV42H,#58H;“C”的段碼MOV43H,#6FH;“9”的段碼MOV44H,#7FH;“8”的段碼LCALLDISPLJMP$任務(wù)2數(shù)碼管顯示一、程序設(shè)計2、源程序設(shè)計DISP:MOVR0,#40HMOVR1,#5DP0:MOVR2,#8MOVA,@R0DP1:RLCAMOVP3.0,CCLRP3.1SETBP3.1DJNZR2,DP1INCR0DJNZR1,DP0RETDP0DP1ORG0000HLJMPSTARTORG0030HSTART:MOV40H,#5BH;“2”的段碼MOV41H,#6DH;“5”的段碼
MOV42H,#58H;“C”的段碼MOV43H,#6FH;“9”的段碼MOV44H,#7FH;“8”的段碼LCALLDISPLJMP$DISP:MOVR0,#40HMOVR1,#5DP0:MOVR2,#8MOVA,@R0DP1:RLCAMOVP3.0,CCLRP3.1SETBP3.1DJNZR2,DP1INCR0DJNZR1,DP0RETEND任務(wù)2數(shù)碼管顯示DBUFEQU30HTEMPEQU40HDINBITP3.0CLKBITP3.1
ORG0000HLJMPSTARTORG0030H
START:LCALLCRSJLCALLQDMLCALLDISPSJMP$DBUFEQU30HTEMPEQU40HDINBITP3.0CLKBITP3.1
ORG0000HLJMPSTARTORG0030H
START:LCALLCRSJLCALLQDMLCALLDISPSJMP$CRSJ:MOV30H,#2HMOV31H,#5HMOV32H,#0CHMOV33H,#9HMOV34H,#8HRETQDM:MOVR0,#DBUFMOVR1,#TEMPMOVR2,#5QDM1:MOVDPTR,#SEGTABMOVA,@R0MOVCA,@A+DPTRMOV@R1,AINCR1INCR0DJNZR2,QDM1RETDISP:MOVR0,#40HMOVR1,#5DP0:MOVR2,#8HMOVA,@R0DP1:RLCAMOVDIN,CCLRCLKSETBCLKDJNZR2,DP1INCR0DJNZR1,DP0RET
DBUFEQU30HTEMPEQU40HDINBITP3.0CLKBITP3.1ORG0000HLJMPSTARTORG0030H
START:LCALLCRSJLCALLQDMLCALLDISPSJMP$CRSJ:MOV30H,#2HMOV31H,#5HMOV32H,#0CHMOV33H,#9HMOV34H,#8HRETQDM:MOVR0,#DBUFMOVR1,#TEMPMOVR2,#5QDM1:MOVDPTR,#SEGTABMOVA,@R0MOVCA,@A+DPTRMOV@R1,AINCR1INCR0DJNZR2,QDM1RETDISP:MOVR0,#40HMOVR1,#5DP0:MOVR2,#8HMOVA,@R0DP1:RLCAMOVDIN,CCLRCLKSETBCLKDJNZR2,DP1INCR0DJNZR1,DP0RETSEGTAB:;段碼表DB03FH,06H,5BH,4FH,66H,6DHDB7DH,07H,7FH,6FH,77H,7CHDB39H,5EH,79H,71HEND用工作于最小應(yīng)用系統(tǒng)的AT89C51單片機(jī)的P1口來控制動態(tài)掃描電路中的段碼借口,P0口來控制動態(tài)掃描顯示電路中的位碼接口,讓6位數(shù)碼管顯示“bj2008”字符。動態(tài)掃描應(yīng)用舉例顯示數(shù)據(jù)段碼表SEGTAB:DB03FH,06H,5BH,4FH,66H,6DH
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 第四單元學(xué)情評估(含答案)2024-2025學(xué)年統(tǒng)編版七年級語文下冊
- 《認(rèn)清國情》課件
- 子宮角妊娠的健康宣教
- 頭皮毛囊炎的臨床護(hù)理
- 《教你門窗工程預(yù)算》課件
- 《機(jī)械設(shè)計基礎(chǔ)》課件-第6章
- 《Java程序設(shè)計及移動APP開發(fā)》課件-第09章
- 粉刺的臨床護(hù)理
- 痱子的臨床護(hù)理
- JJF(陜) 092-2022 醫(yī)用電動頸腰椎牽引治療儀校準(zhǔn)規(guī)范
- 專項(xiàng)訓(xùn)練:坐標(biāo)的變化(30題)(原卷版+解析)
- 2024年新人教版一年級數(shù)學(xué)上冊課件 第六單元 復(fù)習(xí)與關(guān)聯(lián) 1.數(shù)與運(yùn)算
- Unit 4 Ready for school(教學(xué)設(shè)計)-2024-2025學(xué)年人教PEP版(一起)(2024)英語一年級上冊
- 2024秋期國家開放大學(xué)《公共政策概論》一平臺在線形考(形考任務(wù)1至4)試題及答案
- 《2024版 CSCO非小細(xì)胞肺癌診療指南》解讀
- GB 44497-2024智能網(wǎng)聯(lián)汽車自動駕駛數(shù)據(jù)記錄系統(tǒng)
- 2023年12月英語四級真題及答案-第2套
- 安全操作規(guī)程匯編(服裝廠)
- 家具售后合同協(xié)議書
- 空氣動力學(xué)數(shù)值方法:有限體積法(FVM):離散化技術(shù)與數(shù)值通量
- 下肢靜脈曲張的靜脈內(nèi)射頻消融術(shù)
評論
0/150
提交評論