下載本文檔
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第2章 MCS51單片機(jī)內(nèi)部并行口及應(yīng)用,2.1 MCS-51 單片機(jī)并行口結(jié)構(gòu) 2.2 MCS-51 單片機(jī)并行口應(yīng)用 2.3 七段LED顯示器接口 2.4 鍵盤(pán)接口,1.1 MCS-51單片機(jī)并行口結(jié)構(gòu),1.1.1 P0口結(jié)構(gòu) 1.1.2 P1口結(jié)構(gòu) 1.1.3 P2口結(jié)構(gòu) 1.1.4 P3口結(jié)構(gòu),1.1.1 P0口結(jié)構(gòu),返回,D,CP,Q,Q,讀引腳,讀鎖存,寫(xiě)控制信號(hào),DB0.0,地址/數(shù)據(jù)控制線(xiàn),+5V,P0.0,轉(zhuǎn)換開(kāi)關(guān),鎖存器,作用: 1、外擴(kuò)芯片時(shí),P0口不再做I/O口使用,而是先傳送地址,后傳送數(shù)據(jù)。 2、沒(méi)有外擴(kuò)芯片時(shí),P0口可以直接作為輸入口或輸出口使用。,P0口直接做輸
2、出口時(shí),輸出信息的過(guò)程:(將0送到P0.0的過(guò)程),返回,D,CP,Q,Q,讀引腳,讀鎖存,寫(xiě)控制信號(hào),DB0.0,地址/數(shù)據(jù)控制線(xiàn),+5V,P0.0,轉(zhuǎn)換開(kāi)關(guān),鎖存器,0,0,0,1,0,注意: P0口做輸出口時(shí),內(nèi)部數(shù)據(jù)經(jīng)過(guò)鎖存器送到P00-P07上。由于上管始終截止,而當(dāng)下管也截止時(shí),P00P07被架空,沒(méi)有標(biāo)準(zhǔn)的高電平,所以P0口作輸出口使用時(shí),必須外接上拉電阻。,P0口直接做輸入口時(shí),輸入信息的過(guò)程:(將P0.0處的1送入DB0.0的過(guò)程),D,CP,Q,Q,讀引腳,讀鎖存,寫(xiě)控制信號(hào),DB0.0,地址/數(shù)據(jù)控制線(xiàn),+5V,P0.0,轉(zhuǎn)換開(kāi)關(guān),鎖存器,0,0,1,注意: 1、P0口作
3、輸入口時(shí),P00P07上的信號(hào)經(jīng)過(guò)緩沖器送到內(nèi)部數(shù)據(jù)總線(xiàn)上。在讀引腳之前,要先將鎖存器置1,否則總是讀到0。 2、CPU對(duì)P0口的讀操作有2種:讀引腳和讀改寫(xiě)鎖存器。,1,當(dāng)CPU執(zhí)行 MOV A,P0或 JB/JNB P0.x,標(biāo)號(hào) 時(shí),產(chǎn)生讀引腳控制信號(hào),此時(shí)讀的是引腳的狀態(tài) 。,當(dāng)CPU執(zhí)行讀改寫(xiě)指令(以端口為目的操作數(shù)的ANL、ORL、XRL、DEC、INC SETB、CLR等)時(shí),產(chǎn)生讀鎖存信號(hào),此時(shí)是先讀鎖存器的狀態(tài),在修改之后,送回鎖存器保存。,返回,1.1.2 P1口結(jié)構(gòu),D,CP,Q,Q,讀引腳,讀鎖存,寫(xiě)控制信號(hào),DB0.0,+5V,P1.0,鎖存器,作用: P1口只能可以
4、直接作為輸入口或輸出口使用。,返回,返回,D,CP,Q,Q,讀引腳,讀鎖存,寫(xiě)控制信號(hào),DB0.0,+5V,P1.0,鎖存器,P1口直接做輸出口時(shí),輸出信息的過(guò)程:(將1送到P1.0的過(guò)程),1,0,0,1,注意:P1口做輸出口時(shí),內(nèi)部數(shù)據(jù)經(jīng)過(guò)鎖存器送到P10-P17上。 由于內(nèi)部有上拉電阻,所以P1口作輸出口使用時(shí),不用外接上拉電阻。,D,CP,Q,Q,讀引腳,讀鎖存,寫(xiě)控制信號(hào),DB0.0,+5V,P1.0,鎖存器,P1口直接做輸入口時(shí),輸入信息的過(guò)程: (將P1.0處的0送入DB0.0的過(guò)程),0,0,注意: 1、P1口作輸入口時(shí),P10P17上的信號(hào)經(jīng)過(guò)緩沖器送到內(nèi)部數(shù)據(jù)總線(xiàn)上。在讀引
5、腳之前,要先將鎖存器置1,否則總是讀到0。 2、CPU對(duì)P1口的讀操作有2種:讀引腳和讀改寫(xiě)鎖存器。,當(dāng)CPU執(zhí)行 MOV A,P1或 JB/JNB P1.x,標(biāo)號(hào) 時(shí),產(chǎn)生讀引腳控制信號(hào),此時(shí)讀的是引腳的狀態(tài) 。,當(dāng)CPU執(zhí)行讀改寫(xiě)指令(以端口為目的操作數(shù)的ANL、ORL、XRL、DEC、INC 、SETB、CLR等)時(shí),產(chǎn)生讀鎖存信號(hào),此時(shí)是先讀鎖存器的狀態(tài),在修改之后,送回鎖存器保存。,返回,1.1.3 P2口結(jié)構(gòu),D,CP,Q,Q,讀引腳,讀鎖存,寫(xiě)控制信號(hào),DB0.0,地址控制線(xiàn),+5V,P2.0,轉(zhuǎn)換開(kāi)關(guān),鎖存器,作用: 1、外擴(kuò)芯片時(shí),P2口不再做I/O口使用,而是傳送高8位地址
6、。 2、沒(méi)有外擴(kuò)芯片時(shí),P2口可以直接作為輸入口或輸出口使用。,返回,返回,D,CP,Q,Q,讀引腳,讀鎖存,寫(xiě)控制信號(hào),DB0.0,地址控制線(xiàn),+5V,P2.0,轉(zhuǎn)換開(kāi)關(guān),鎖存器,P2口直接做輸出口時(shí),輸出信息的過(guò)程:(將0送到P2.0的過(guò)程),0,0,0,1,0,注意:P2口做輸出口時(shí),內(nèi)部數(shù)據(jù)經(jīng)過(guò)鎖存器送到P20-P27上。 由于內(nèi)部有上拉電阻,所以P2口作輸出口使用時(shí),不用外接上拉電阻。,D,CP,Q,Q,讀引腳,讀鎖存,寫(xiě)控制信號(hào),DB0.0,地址控制線(xiàn),+5V,P2.0,轉(zhuǎn)換開(kāi)關(guān),鎖存器,P2口直接做輸入口時(shí),輸入信息的過(guò)程:(將P2.0處的0送入DB0.0的過(guò)程),0,0,0,注
7、意: 1、P2口作輸入口時(shí),P20P27上的信號(hào)經(jīng)過(guò)緩沖器送到內(nèi)部數(shù)據(jù)總線(xiàn)上。在讀引腳之前,要先將鎖存器置1,否則總是讀到0。 2、CPU對(duì)P2口的讀操作有2種:讀引腳和讀改寫(xiě)鎖存器。,當(dāng)CPU執(zhí)行 MOV A,P2或 JB/JNB P2.x,標(biāo)號(hào) 時(shí),產(chǎn)生讀引腳控制信號(hào),此時(shí)讀的是引腳的狀態(tài) 。,當(dāng)CPU執(zhí)行讀改寫(xiě)指令(以端口為目的操作數(shù)的ANL、ORL、XRL、DEC、INC 、SETB、CLR等)時(shí),產(chǎn)生讀鎖存信號(hào),此時(shí)是先讀鎖存器的狀態(tài),在修改之后,送回鎖存器保存。,返回,1.1.4 P3口結(jié)構(gòu),D,CP,Q,Q,讀引腳,讀鎖存,寫(xiě)控制信號(hào),DB0.0,+5V,P3.0,鎖存器,第二功
8、能輸出,第二功能輸入,作用: 1、P3口可以直接作為輸入口或輸出口使用。 2、P3口的引腳又具有第二功能。,1 當(dāng)使用單片機(jī)內(nèi)部串行口時(shí),若CPU執(zhí)行MOV A,SBUF指令,則P3.0(RXD)作為接收信號(hào)線(xiàn),接收由外界串行輸入的數(shù)據(jù);若CPU執(zhí)行MOV SBUF,A指令,則P3.1(TXD)作為發(fā)送信號(hào)線(xiàn),串行發(fā)送數(shù)據(jù)至外界。 2當(dāng)單片機(jī)使用外中斷時(shí),P3.2(INT0)作為外中斷0的中斷請(qǐng)求輸入線(xiàn),3.3(INT1) 作為外中斷1的中斷請(qǐng)求輸入線(xiàn)。 3當(dāng)單片機(jī)使用定時(shí)器,且定時(shí)器工作于計(jì)數(shù)方式時(shí),P3.4(T0)作為定時(shí)器0的計(jì)數(shù)脈沖輸入線(xiàn),P3.5(T1)作為定時(shí)器1的計(jì)數(shù)脈沖輸入線(xiàn)。
9、 4當(dāng)單片機(jī)外擴(kuò)RAM或I/O接口芯片時(shí),P3.6(WR)作為RAM或I/O接口芯片的寫(xiě)控制信號(hào),P3.7(RD)作為RAM或I/O接口芯片的讀控制信號(hào)。 當(dāng)P3口的一些引腳沒(méi)有作為第二功能使用時(shí),這些引腳就被釋放,直接作為I/O口線(xiàn)使用。,返回,返回,D,CP,Q,Q,讀引腳,讀鎖存,寫(xiě)控制信號(hào),DB0.0,+5V,P3.0,鎖存器,第二功能輸出,第二功能輸入,P3口直接做輸出口時(shí),輸出信息的過(guò)程:(將1送到P3.0的過(guò)程),1,0,0,1,注意:P3口做輸出口時(shí),內(nèi)部數(shù)據(jù)經(jīng)過(guò)鎖存器送到P30-P37上。 由于內(nèi)部有上拉電阻,所以P2口作輸出口使用時(shí),不用外接上拉電阻。,D,CP,Q,Q,讀
10、引腳,讀鎖存,寫(xiě)控制信號(hào),DB0.0,+5V,P3.0,鎖存器,第二功能輸出,第二功能輸入,0,P3口直接做輸入口時(shí),輸入信息的過(guò)程:(將P3.0處的0送入DB0.0的過(guò)程),0,注意: 1、P3口作輸入口時(shí),P30P37上的信號(hào)經(jīng)過(guò)緩沖器送到內(nèi)部數(shù)據(jù)總線(xiàn)上。在讀引腳之前,要先將鎖存器置1,否則總是讀到0。 2、CPU對(duì)P3口的讀操作有2種:讀引腳和讀改寫(xiě)鎖存器。,當(dāng)CPU執(zhí)行 MOV A,P3或 JB/JNB P3.x,標(biāo)號(hào) 時(shí),產(chǎn)生讀引腳控制信號(hào),此時(shí)讀的是引腳的狀態(tài) 。,當(dāng)CPU執(zhí)行讀改寫(xiě)指令(以端口為目的操作數(shù)的ANL、ORL、XRL、DEC、INC 、SETB、CLR等)時(shí),產(chǎn)生讀鎖
11、存信號(hào),此時(shí)是先讀鎖存器的狀態(tài),在修改之后,送回鎖存器保存。,返回,1.2 MCS-51單片機(jī)并行口的應(yīng)用,1.2.1 直接做輸出口 1.2.2 直接做輸入口,在沒(méi)有外擴(kuò)任何芯片時(shí),MCS-51單片機(jī)內(nèi)部并行口可以作為輸出口,直接與輸出外設(shè)連接,常用的輸出外設(shè)是發(fā)光二極管; MCS-51單片機(jī)內(nèi)部并行口也可以作為輸入口,直接與輸入外設(shè)連接,常用的輸入外設(shè)是開(kāi)關(guān)。,例1,例2,例1,例2,1.2.1 直接做輸出口,P1.0,P1.1,P1.2,P1.3,P1.4,P1.5,P1.6,P1.7,89C51,+5V,電阻的作用是當(dāng)流過(guò)發(fā)光二極管的電流過(guò)大時(shí),它就會(huì)被燒壞。這個(gè)電阻可以限制流過(guò)發(fā)光二極
12、管的電流,因此這個(gè)電阻叫作限流電阻。限流電阻阻值的計(jì)算方法如下: R=(5-1.75)/Id ;Id 是流過(guò)發(fā)光二極管的電流,一般從8mA到20mA,其值越大,發(fā)光二極管越亮,但不能太大,當(dāng)流過(guò)發(fā)光二極管的電流超過(guò)20mA時(shí),容易燒壞發(fā)光二極管。,例1:用89C51的P1口驅(qū)動(dòng)8個(gè)發(fā)光二極管,使8個(gè)發(fā)光二極管由左向右輪流點(diǎn)亮。試畫(huà)出連接圖,編制驅(qū)動(dòng)程序。,解:,1、畫(huà)電路圖,2、編程,思考,mov a,#0feh up: mov p1,a lcall delay rl a sjmp up delay1: mov r7,#2 delay11: mov r6,#250 djnz r6,$ djnz
13、 r7,delay11 ret,例1:用89C51的P1口驅(qū)動(dòng)8個(gè)發(fā)光二極管,使8個(gè)發(fā)光二極管由左向右輪流點(diǎn)亮。試畫(huà)出連接圖,編制驅(qū)動(dòng)程序。 思考: 如果用P0口驅(qū)動(dòng)發(fā)光二極管,則如何修改? 如果使8個(gè)發(fā)光二極管由右向左輪流點(diǎn)亮,則如何修改? 如果使8個(gè)發(fā)光二極管閃亮,則如何修改? 如果使8個(gè)發(fā)光二極管由內(nèi)向外輪流點(diǎn)亮,則如何修改? 如果使8個(gè)發(fā)光二極管由右向左依次點(diǎn)亮,則如何修改? 如果使延時(shí)時(shí)間延長(zhǎng)或縮短,會(huì)出現(xiàn)什么現(xiàn)象? 預(yù)習(xí)實(shí)驗(yàn)并思考: 熟悉實(shí)驗(yàn)板上與發(fā)光二極管有關(guān)的電路。 編制驅(qū)動(dòng)程序,實(shí)現(xiàn)如下操作: 由左向右輪流點(diǎn)亮 由外向里輪流點(diǎn)亮 由右向左依次點(diǎn)亮 閃亮,P1.0,P1.1,P
14、1.2,P1.3,P1.4,P1.5,P1.6,P1.7,89C51,+5V,1.2.1 直接做輸出口,P1.0,P1.1,P1.2,P1.3,P1.4,P1.5,P1.6,P1.7,89C51,+5V,例2:用8051的P1口驅(qū)動(dòng)1個(gè)數(shù)碼管,制成1位秒表. 試畫(huà)出連接圖,編制驅(qū)動(dòng)程序。,解:,1、畫(huà)電路圖,2、編程,思考,a,b,c,d,e,f,g,Dp,a,b,c,d,e,f,g,Dp,UP0: MOV R7,#10 MOV R2,#00H MOV DPTR,#TAB UP: MOV A,R2 MOVC A,A+DPTR MOV P1 , A LCALL D1S INC R2 DJNZ R
15、7,UP SJMP UP0 TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,98H,例2:用8051的P1口驅(qū)動(dòng)1個(gè)數(shù)碼管,制成1位秒表.試畫(huà)出連接圖,編制驅(qū)動(dòng)程序。 思考: 如果用P2口驅(qū)動(dòng)發(fā)光二極管,公共端接P3.0,則如何修改? 如果制成0.1S的表,則如何修改?,P2.0,P2.1,P2.2,P2.3,P2.4,P2.5,P2.6,P2.7,89C51,P3.0,a,b,c,d,e,f,g,Dp,CLR P3.0 UP0: MOV R7,#10 MOV R2,#00H MOV DPTR,#TAB UP: MOV A,R2 MOVC A,
16、A+DPTR MOV P2 , A LCALL D1S INC R2 DJNZ R7,UP SJMP UP0 TAB: DB 0C0H,0F9H,0A4H,0B0H DB 99H,92H,82H,0F8H,80H,98H,1.2.2 直接做輸入口,P1.0,P1.1,P1.2,P1.3,P1.4,P1.5,P1.6,P1.7,89C51,+5V,例1:用89C51的P1口傳送8個(gè)開(kāi)關(guān)狀態(tài),用P2口顯示8個(gè)開(kāi)關(guān)狀態(tài),若開(kāi)關(guān)合則對(duì)應(yīng)燈亮,試畫(huà)出連接圖,編制驅(qū)動(dòng)程序。,解:,1、畫(huà)電路圖,MOV P1,#0FFH UP:MOV A,P1 MOV P2,A SJMP UP,P2.0,P2.1,P2.2
17、,P2.3,P2.4,P2.5,P2.6,P2.7,+5V,開(kāi)關(guān)處的電阻稱(chēng)為上拉電阻,它的 作用是當(dāng)開(kāi)關(guān)斷開(kāi)時(shí),使P3口的電 壓上拉為準(zhǔn)確的高電平,避免懸空 狀態(tài)。,2、編程,強(qiáng)調(diào): 8051內(nèi)部并行口 直接作為輸入口時(shí), 必須先將口鎖存器 置1。,思考,P1.0,P1.1,P1.2,P1.3,P1.4,P1.5,P1.6,P1.7,89C51,MOV P1,#0FFH UP:MOV A,P1 CPL A MOV P2,A SJMP UP,P2.0,P2.1,P2.2,P2.3,P2.4,P2.5,P2.6,P2.7,+5V,思考:如果將發(fā)光二極管反接,則如何修改程序?,1.2.2 直接做輸入
18、口,89C51,+5V,例2:用8051的P1口驅(qū)動(dòng)8個(gè)發(fā)光二極管,P3.4接一個(gè)開(kāi)關(guān)K1,當(dāng)開(kāi)關(guān)按下時(shí),8個(gè)發(fā)光二極管由左向右輪流點(diǎn)亮;開(kāi)關(guān)斷開(kāi)時(shí),8個(gè)發(fā)光二極管不亮。試畫(huà)出連接圖,編制驅(qū)動(dòng)程序。,解:,1、畫(huà)電路圖,P1.0,P1.1,P1.2,P1.3,P1.4,P1.5,P1.6,P1.7,2、編程,+5V,P3.4,mov p3,#0ffh up0: mov a,#0feh up1: jb p3.4,up1 mov p1,a lcall delay1 rl a sjmp up1 delay1: mov r7,#2 delay11: mov r6,#250 djnz r6,$ djnz
19、 r7,delay11 ret,思考,例2:用8051的P1口驅(qū)動(dòng)8個(gè)發(fā)光二極管,P3.4接一個(gè)開(kāi)關(guān)K1,當(dāng)開(kāi)關(guān)按下時(shí),8個(gè)發(fā)光二極管由左向右輪流點(diǎn)亮;開(kāi)關(guān)斷開(kāi)時(shí),8個(gè)發(fā)光二極管不亮。試畫(huà)出連接圖,編制驅(qū)動(dòng)程序。 思考: 在上述程序中,開(kāi)關(guān)必須一直按著,燈才能輪流點(diǎn)亮,當(dāng)開(kāi)關(guān)斷開(kāi)時(shí),停留在某個(gè)燈點(diǎn)亮狀態(tài)。如果當(dāng)開(kāi)關(guān)斷開(kāi)時(shí),燈全滅,如何修改程序? 如果開(kāi)關(guān)作為啟動(dòng)開(kāi)關(guān),開(kāi)關(guān)按下并抬起時(shí),燈才開(kāi)始輪流點(diǎn)亮,則如何編程? 預(yù)習(xí)實(shí)驗(yàn) 熟悉實(shí)驗(yàn)板上與發(fā)光二極管和開(kāi)關(guān)有關(guān)的電路。 編制驅(qū)動(dòng)程序,實(shí)現(xiàn)如下操作: 1讀入4個(gè)按鍵并使對(duì)應(yīng)的LED點(diǎn)亮。 2K1按下時(shí),LED每2個(gè)為一組由右向左依次點(diǎn)亮。 3K2
20、按下并抬起時(shí),LED由內(nèi)向外輪流點(diǎn)亮。,P3.2,P3.3,P3.4,P3.5,+5V,1.3 七段LED顯示器接口,1.3.1 數(shù)碼管簡(jiǎn)介 1.3.2 單個(gè)七段LED數(shù)碼管的接口 1.3.3 多個(gè)七段LED數(shù)碼管的接口,在單片機(jī)控制系統(tǒng)中顯示器是必不可少的外設(shè)。常用的顯示器有發(fā)光二極管,數(shù)碼管和液晶顯示器。本節(jié)介紹數(shù)碼管接口。,1.3.1 數(shù)碼管簡(jiǎn)介,組成:LED數(shù)碼管由7段或8段發(fā)光二極管組成,在平面上排成8字 型。 分類(lèi):有共陰極和共陽(yáng)極兩種。,COM,a,b,c,d,e,f,g,Dp,COM,a,b,c,d,e,f,g,Dp,顯示原理:使某些段點(diǎn)亮而另一些段不亮就可以顯示0-9,A-F
21、等字型。 使某段點(diǎn)亮必須具備2個(gè)條件: 共陰極管的公共端接地和共陽(yáng)極管的公共端接電源。 共陰極管的控制端接電源和共陽(yáng)極管的控制端接地。,共陽(yáng)極 共陰極,a,b,c,d,e,f,g,Dp,1.3.2 單個(gè)七段LED數(shù)碼管的接口,單個(gè)七段LED數(shù)碼管與單片機(jī)的連接方法有2種: 1、軟譯碼連接法 2、硬譯碼連接法,a,b,c,d,e,f,g,Dp,軟譯碼連接法,在軟譯碼連接法下,LED數(shù)碼管與單片機(jī)的連接圖 :,a,b,c,d,e,f,g,Dp,P1.0,P1.1,P1.2,P1.3,P1.4,P1.5,P1.6,P1.7,89C51,+5V,a,b,c,d,e,f,g,Dp,1、欲使LED數(shù)碼管顯
22、示2,試編程。 MOV P1,#01011011B 注意:字形與字形碼的區(qū)別,字形是欲顯示的數(shù)或字符的形狀;字形碼是為了在數(shù)碼管上顯示數(shù)或字符,CPU應(yīng)該送出的數(shù)據(jù)。字形轉(zhuǎn)換成字形碼的2種方法:軟譯碼法和硬譯碼法。 2、編程讓LED數(shù)碼管顯示30H單元的內(nèi)容(30H單元的內(nèi)容在09之間)。 UP: MOV A,30H MOV DPTR,#TAB MOVC A,A+DPTR MOV P1,A SJMP UP,TAB : DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,98H,共陽(yáng)極LED,硬譯碼連接法,在硬譯碼連接法下,LED數(shù)碼管與單片機(jī)的連接圖 :,a
23、,b,c,d,e,f,g,Dp,P1.0,P1.1,P1.2,P1.3,A,B,C,D,89C51,利用BCD碼七段碼譯碼器實(shí)現(xiàn)字形到字形碼的轉(zhuǎn)換。常用的BCD碼七段碼譯碼器有74LS48和74LS47。 編程讓LED數(shù)碼管顯示30H單元的內(nèi)容(30H單元的內(nèi)容在09之間)。 MOV P1,30H,LT,RBO,RBI,a,b,c,d,e,f,g,P1.4,P1.5,P1.6,P1.7,COM,a,b,c,d,e,f,g,74LS48,共陰極LED,+5V,注意:在硬譯碼連接法下,直接送欲顯示的數(shù)即可,字形到字形碼的轉(zhuǎn)換 是用硬件實(shí)現(xiàn)的。,思考:如果7448的ABCD接到8051的P14P17
24、,則如何修改程序?,答案,1.3.3 多個(gè)七段LED數(shù)碼管的接口,多個(gè)數(shù)碼管與CPU的連接方法有4種: 1、靜態(tài)軟譯碼連接法 2、靜態(tài)硬譯碼連接法 3、動(dòng)態(tài)硬譯碼連接法 4、動(dòng)態(tài)軟譯碼連接法,a,b,c,d,e,f,g,Dp,靜態(tài)軟譯碼連接法,在靜態(tài)軟譯碼連接法下,4個(gè)LED數(shù)碼管與單片機(jī)的連接圖 :,a,b,c,d,e,f,g,Dp,Dp,P0.0,P0.1,P0.2,P0.3,89C51,P0.4,P0.5,P0.6,P0.7,COM,a,b,c,d,e,f,g,共陰極LED,Dp,P2.0,P2.1,P2.2,P2.3,P2.4,P2.5,P2.6,P2.7,COM,a,b,c,d,e,
25、f,g,Dp,P1.0,P1.1,P1.2,P1.3,P1.4,P1.5,P1.6,P1.7,COM,a,b,c,d,e,f,g,Dp,P3.0,P3.1,P3.2,P3.3,P3.4,P3.5,P3.6,P3.7,COM,a,b,c,d,e,f,g,1、編程在4個(gè)七段LED數(shù)碼管上顯示1234。,MOV P0,#06H MOV P1,#5BH MOV P2,#4FH MOV P3,#66H SJMP $,2、編程在4個(gè)七段LED數(shù)碼管上顯示30H, 31H,32H,33H單元中存放的1位BCD碼 的內(nèi)容 。,MOV DPTR,#TAB UP0: MOV A,30H MOVC A,A+DPTR
26、 MOV P0,A MOV A,31H MOVC A,A+DPTR MOV P1,A MOV A,32H MOVC A,A+DPTR MOV P2,A MOV A,33H MOVC A,A+DPTR MOV P3,A SJMP UP0 TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,思考:編程在4個(gè)七段LED數(shù)碼管上顯示30H,31H單元中的內(nèi)容。(30H,31H單元中分別存有2位BCD碼)。,答案,靜態(tài)硬譯碼連接法,在靜態(tài)硬譯碼連接法下,4個(gè)LED數(shù)碼管與單片機(jī)的連接圖 :,a,b,c,d,e,f,g,Dp,P2.0,P2.1,P2.2,P2.
27、3,89C51,Dp,P2.4,P2.5,P2.6,P2.7,COM,a,b,c,d,e,f,g,Dp,P1.0,P1.1,P1.2,P1.3,COM,a,b,c,d,e,f,g,P1.4,P1.5,P1.6,P1.7,A,B,C,D,LT,RBO,RBI,a,b,c,d,e,f,g,74LS47,+5V,Dp,COM,a,b,c,d,e,f,g,A,B,C,D,LT,RBO,RBI,a,b,c,d,e,f,g,74LS47,+5V,A,B,C,D,LT,RBO,RBI,a,b,c,d,e,f,g,74LS47,+5V,Dp,COM,a,b,c,d,e,f,g,A,B,C,D,LT,RBO,R
28、BI,a,b,c,d,e,f,g,74LS47,+5V,編程在4個(gè)七段LED數(shù)碼管上顯示30H,31H單元中的內(nèi)容。(30H,31H單元中分別存有2位BCD碼)。,思考:編程在4個(gè)七段LED數(shù)碼管上顯示30H, 31H,32H,33H單元中存放的1位BCD碼的內(nèi)容 。,+5V,+5V,+5V,+5V,程 序,答 案,動(dòng)態(tài)硬譯碼連接法,在動(dòng)態(tài)硬譯碼連接法下,4個(gè)LED數(shù)碼管與單片機(jī)的連接圖 :,a,b,c,d,e,f,g,Dp,P2.0,P2.1,P2.2,P2.3,89C51,P2.4,P2.5,P2.6,P2.7,COM,a,b,c,d,e,f,g,A,B,C,D,LT,RBO,RBI,a,
29、b,c,d,e,f,g,74LS48,+5V,COM,a,b,c,d,e,f,g,COM,a,b,c,d,e,f,g,COM,a,b,c,d,e,f,g,例: 編程在4個(gè)七段LED數(shù)碼管上顯示1234。 在動(dòng)態(tài)連接法下,數(shù)碼管公共端均受控。驅(qū)動(dòng)程序的編制充分利用了人眼的視覺(jué)滯留效應(yīng),循環(huán)掃描各數(shù)碼管,使各數(shù)碼管不是連續(xù)顯示,但給人的視覺(jué)印象是連續(xù)地在顯示。每個(gè)數(shù)碼管的顯示時(shí)間不得低于1ms,不亮的時(shí)間不能超過(guò)20 ms。 利用人眼的視覺(jué)滯留現(xiàn)象,實(shí)現(xiàn)讓4個(gè)七段LED數(shù)碼管上不同時(shí)顯示1234,但人眼看到的效果 卻是同時(shí)顯示1234。,1,2,3,4,思考:編程在4個(gè)七段LED數(shù)碼管上顯示 30
30、H,31H,32H,33H單元中的內(nèi)容。,程 序,答 案,動(dòng)態(tài)軟譯碼連接法,在動(dòng)態(tài)軟譯碼連接法下,4個(gè)LED數(shù)碼管與單片機(jī)的連接圖 :,a,b,c,d,e,f,g,Dp,P2.0,P2.1,P2.2,P2.3,89C51,P3.0,P3.1,P3.2,P3.3,COM,a,b,c,d,e,f,g,驅(qū) 動(dòng) 器,COM,a,b,c,d,e,f,g,COM,a,b,c,d,e,f,g,COM,a,b,c,d,e,f,g,1,2,3,4,P2.4,P2.5,P2.6,P2.7,例: 編程在4個(gè)七段LED數(shù)碼管上顯示1234。 例:編程在4個(gè)七段LED數(shù)碼管上顯示30H,31H,32H,33H單元中的內(nèi)
31、容。,程 序,程 序,1.4 鍵盤(pán)接口,1.4.1 鍵盤(pán)類(lèi)型 1.4.2 非編碼鍵盤(pán)與單片機(jī)的接口 1.4.3 矩陣非編碼鍵盤(pán)與單片機(jī)的接口,鍵盤(pán)是單片機(jī)控制系統(tǒng)最常用、最簡(jiǎn)單的輸入設(shè)備。用戶(hù)可以通過(guò)鍵盤(pán)輸入數(shù)據(jù)或命令,實(shí)現(xiàn)簡(jiǎn)單的人機(jī)通信。,1.4.1 鍵盤(pán)類(lèi)型,單片機(jī)控制系統(tǒng)所用的鍵盤(pán)有編碼鍵盤(pán)和非編碼鍵盤(pán)兩種。 1、編碼鍵盤(pán)除了鍵開(kāi)關(guān)外,還有專(zhuān)門(mén)的硬件電路,用于識(shí)別閉合鍵并產(chǎn)生鍵代碼。不僅如此,編碼鍵盤(pán)一般還有去鍵抖動(dòng)電路和防串鍵保護(hù)電路等。這種鍵盤(pán)的優(yōu)點(diǎn)是所需軟件簡(jiǎn)短,但硬件電路較復(fù)雜,價(jià)格較昂貴。目前在單片機(jī)控制系統(tǒng)中使用不多。 2、非編碼鍵盤(pán)僅由鍵開(kāi)關(guān)組成,其它工作如鍵識(shí)別、鍵代碼的
32、產(chǎn)生、去抖動(dòng)等,不是由硬件完成而是由軟件完成的。為了簡(jiǎn)化硬件電路,降低成本,目前單片機(jī)控制系統(tǒng)中大多數(shù)采用非編碼鍵盤(pán)。 非編碼鍵盤(pán)的鍵開(kāi)關(guān)可以排列成線(xiàn)性形式或矩陣形式,因此非編碼鍵盤(pán)有線(xiàn)性非編碼鍵盤(pán)和矩陣非編碼鍵盤(pán)兩種。,1.4.1 鍵盤(pán)類(lèi)型,單片機(jī)控制系統(tǒng)所用的鍵盤(pán)有編碼鍵盤(pán)和非編碼鍵盤(pán)兩種。 1、編碼鍵盤(pán)除了鍵開(kāi)關(guān)外,還有專(zhuān)門(mén)的硬件電路,用于識(shí)別閉合鍵并產(chǎn)生鍵代碼。不僅如此,編碼鍵盤(pán)一般還有去鍵抖動(dòng)電路和防串鍵保護(hù)電路等。這種鍵盤(pán)的優(yōu)點(diǎn)是所需軟件簡(jiǎn)短,但硬件電路較復(fù)雜,價(jià)格較昂貴。目前在單片機(jī)控制系統(tǒng)中使用不多。 2、非編碼鍵盤(pán)僅由鍵開(kāi)關(guān)組成,其它工作如鍵識(shí)別、鍵代碼的產(chǎn)生、去抖動(dòng)等,不是
33、由硬件完成而是由軟件完成的。為了簡(jiǎn)化硬件電路,降低成本,目前單片機(jī)控制系統(tǒng)中大多數(shù)采用非編碼鍵盤(pán)。 非編碼鍵盤(pán)的鍵開(kāi)關(guān)可以排列成線(xiàn)性形式或矩陣形式,因此非編碼鍵盤(pán)有線(xiàn)性非編碼鍵盤(pán)和矩陣非編碼鍵盤(pán)兩種。,1.4.1 鍵盤(pán)類(lèi)型,單片機(jī)控制系統(tǒng)所用的鍵盤(pán)有編碼鍵盤(pán)和非編碼鍵盤(pán)兩種。 1、編碼鍵盤(pán)除了鍵開(kāi)關(guān)外,還有專(zhuān)門(mén)的硬件電路,用于識(shí)別閉合鍵并產(chǎn)生鍵代碼。不僅如此,編碼鍵盤(pán)一般還有去鍵抖動(dòng)電路和防串鍵保護(hù)電路等。這種鍵盤(pán)的優(yōu)點(diǎn)是所需軟件簡(jiǎn)短,但硬件電路較復(fù)雜,價(jià)格較昂貴。目前在單片機(jī)控制系統(tǒng)中使用不多。 2、非編碼鍵盤(pán)僅由鍵開(kāi)關(guān)組成,其它工作如鍵識(shí)別、鍵代碼的產(chǎn)生、去抖動(dòng)等,不是由硬件完成而是由軟件
34、完成的。為了簡(jiǎn)化硬件電路,降低成本,目前單片機(jī)控制系統(tǒng)中大多數(shù)采用非編碼鍵盤(pán)。 非編碼鍵盤(pán)的鍵開(kāi)關(guān)可以排列成線(xiàn)性形式或矩陣形式,因此非編碼鍵盤(pán)有線(xiàn)性非編碼鍵盤(pán)和矩陣非編碼鍵盤(pán)兩種。,1.4.2 非編碼鍵盤(pán)與單片機(jī)的接口,線(xiàn)性非編碼鍵盤(pán)的鍵開(kāi)關(guān)排成一行或一列的形式,它與單片機(jī)的接口電路如圖所示:,K1,K2,K3,K4,P1.1,P1.0,P1.2,P1.3,89C51,+5V,線(xiàn)性非編碼鍵盤(pán)的工作原理:當(dāng)鍵未被按下時(shí),與此鍵相連的I/O線(xiàn)獲得高電平;當(dāng)鍵被按下時(shí),與此鍵相連的I/O線(xiàn)獲得低電平,單片機(jī)只要讀取I/O口狀態(tài),就可以獲取按鍵信息,識(shí)別有無(wú)鍵按下和哪個(gè)鍵被按下。 鍵處理程序如下: M
35、OV P1,#0FFH UP1: MOV A,P1 ;讀I/O口狀態(tài) ANL A,#0FH ;屏蔽無(wú)用位 CJNE A,#0FH,NEXT1 ;有閉合鍵? SJMP UP1 NEXT1: LCALL D10ms ;延時(shí)10ms去抖動(dòng) MOV A,P1 ;再讀I/O口狀態(tài) ANL A,#0FH CJNE A,#0FH,NEXT2 ;有閉合鍵? SJMP UP1 NEXT2:JB P1.0,NEXT3 ;K1按下? LCALL K1 ;K1鍵處理程序 NEXT3: JB P1.1,NEXT4 ;K2按下? LCALL K2 ;K2鍵處理程序 NEXT4: JB P1.2,NEXT5 ;K3按下?
36、LCALL K3 ;K3鍵處理程序 NEXT5: JB P1.3,UP1 ;K4按下? LCALL K4 ;K4鍵處理程序 LJMP UP1,例,例 某單片機(jī)控制系統(tǒng),P1口接有8發(fā)光二極管,P3.0、P3.1、P3.2、P3.3接有4個(gè)開(kāi)關(guān)K1、K2、K3、K4,試畫(huà)出接口電路,并編程使得當(dāng)K1按下時(shí)8個(gè)發(fā)光二極管全亮;當(dāng)K2按下時(shí)8個(gè)發(fā)光二極管閃亮;當(dāng)K3按下時(shí)8個(gè)發(fā)光二極管由左向右點(diǎn)亮;當(dāng)K4按下時(shí)8個(gè)發(fā)光二極管全滅。,K1,K2,K3,K4,P3.1,P3.0,P3.2,P3.3,89C51,+5V,P1.0,P1.1,P1.2,P1.3,P1.4,P1.5,P1.6,P1.7,程 序
37、,MOV B,#01H MOV P3,#0FFH MOV P1,#00H UP1: MOV A,P3 ANL A,#0FH CJNE A,#0FH,NEXT1 SJMP UP1 NEXT1: LCALL D10ms MOV A,P3 ANL A,#0FH CJNE A,#0FH,NEXT2 SJMP UP1NEXT2:JB P3.0,NEXT3 LCALL K1 NEXT3: JB P3.1,NEXT4 LCALL K2 NEXT4: JB P3.2,NEXT5 LCALL K3 NEXT5: JB P3.3,UP1 LCALL K4 LJMP UP1,程 序,子程序 K1: MOV P1,#
38、0FFH RETK2: MOV P1,#0FFH LCALL D2S MOV P1,#00H LCALL D2S RETK3: MOV P1,B LCALL D2S MOV A,B RL A MOV B,A RETK4: MOV P1,#00H RET,a,b,c,d,e,f,g,Dp,P1.0,P1.1,P1.2,P1.3,A,B,C,D,89C51,LT,RBO,RBI,a,b,c,d,e,f,g,P1.4,P1.5,P1.6,P1.7,COM,a,b,c,d,e,f,g,74LS48,共陰極LED,+5V,UP:MOV A,30H SWAP A MOV P1,A SJMP UP,思考:如
39、果7448的ABCD接到8051的P14P17,則如何修改程序?,a,b,c,d,e,f,g,Dp,Dp,P0.0,P0.1,P0.2,P0.3,89C51,P0.4,P0.5,P0.6,P0.7,COM,a,b,c,d,e,f,g,共陰極LED,Dp,P2.0,P2.1,P2.2,P2.3,P2.4,P2.5,P2.6,P2.7,COM,a,b,c,d,e,f,g,Dp,P1.0,P1.1,P1.2,P1.3,P1.4,P1.5,P1.6,P1.7,COM,a,b,c,d,e,f,g,Dp,P3.0,P3.1,P3.2,P3.3,P3.4,P3.5,P3.6,P3.7,COM,a,b,c,d
40、,e,f,g,MOV DPTR,#TAB UP0: MOV A,30H ANL A,#0FH MOVC A,A+DPTR MOV P0,A MOV A,30H SWAP A ANL A,#0FH MOVC A,A+DPTR MOV P1,A MOV A,31H ANL A,#0FH MOVC A,A+DPTR MOV P2,A MOV A,31H SWAP A ANL A,#0FH MOVC A,A+DPTR MOV P3,A SJMP UP0 TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,思考:編程在4個(gè)七段LED數(shù)碼管上顯示30H,31H單
41、元中的內(nèi)容。(30H,31H單元中分別存有2位BCD碼)。,a,b,c,d,e,f,g,Dp,P2.0,P2.1,P2.2,P2.3,89C51,Dp,P2.4,P2.5,P2.6,P2.7,COM,a,b,c,d,e,f,g,Dp,P1.0,P1.1,P1.2,P1.3,COM,a,b,c,d,e,f,g,P1.4,P1.5,P1.6,P1.7,A,B,C,D,LT,RBO,RBI,a,b,c,d,e,f,g,74LS47,+5V,Dp,COM,a,b,c,d,e,f,g,A,B,C,D,LT,RBO,RBI,a,b,c,d,e,f,g,74LS47,+5V,A,B,C,D,LT,RBO,R
42、BI,a,b,c,d,e,f,g,74LS47,+5V,Dp,COM,a,b,c,d,e,f,g,A,B,C,D,LT,RBO,RBI,a,b,c,d,e,f,g,74LS47,+5V,編程在4個(gè)七段LED數(shù)碼管上顯示30H,31H單元中的內(nèi)容。(30H,31H單元中分別存有2位BCD碼)。 UP: MOV P1,30H MOV P2,31H SJMP UP,+5V,+5V,+5V,+5V,a,b,c,d,e,f,g,Dp,P2.0,P2.1,P2.2,P2.3,89C51,Dp,P2.4,P2.5,P2.6,P2.7,COM,a,b,c,d,e,f,g,Dp,P1.0,P1.1,P1.2,P
43、1.3,COM,a,b,c,d,e,f,g,P1.4,P1.5,P1.6,P1.7,A,B,C,D,LT,RBO,RBI,a,b,c,d,e,f,g,74LS47,+5V,Dp,COM,a,b,c,d,e,f,g,A,B,C,D,LT,RBO,RBI,a,b,c,d,e,f,g,74LS47,+5V,A,B,C,D,LT,RBO,RBI,a,b,c,d,e,f,g,74LS47,+5V,Dp,COM,a,b,c,d,e,f,g,A,B,C,D,LT,RBO,RBI,a,b,c,d,e,f,g,74LS47,+5V,思考:編程在4個(gè)七段LED數(shù)碼管上顯示30H,31H,32H,33H單元中存放的
44、1位BCD碼的內(nèi)容 。,+5V,+5V,+5V,+5V,UP: MOV A,31H SWAP A ORL A,30H MOV P1,A,MOV A,33H SWAP A ORL A,32H MOV P2,A SJMP UP,a,b,c,d,e,f,g,Dp,P2.0,P2.1,P2.2,P2.3,89C51,P2.4,P2.5,P2.6,P2.7,COM,a,b,c,d,e,f,g,A,B,C,D,LT,RBO,RBI,a,b,c,d,e,f,g,74LS48,+5V,COM,a,b,c,d,e,f,g,COM,a,b,c,d,e,f,g,COM,a,b,c,d,e,f,g,例: 編程在4個(gè)七段LED數(shù)碼管上顯示1234。,1,2,3,4,START:MOV P2,#11100001B LCALL D2MS MOV P2,#11010010B LCALL D2MS MOV P2,#10110011B LCALL D2MS MOV P2,#01110100B LCALL D2MS SJMP START,a,b,c
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年及未來(lái)5年中國(guó)水泥設(shè)備行業(yè)市場(chǎng)調(diào)研分析及投資戰(zhàn)略咨詢(xún)報(bào)告
- 寶坻輔警面試題目及答案
- 無(wú)人機(jī)植保服務(wù)在2025年智慧農(nóng)業(yè)中的應(yīng)用前景與技術(shù)創(chuàng)新探討
- 做市商相關(guān)制度
- 體檢中心周例會(huì)制度
- 優(yōu)沙娜獎(jiǎng)金制度
- 京東家政請(qǐng)假制度
- 中國(guó)水產(chǎn)科學(xué)研究院2026年度第一批統(tǒng)一公開(kāi)招聘?jìng)淇碱}庫(kù)及1套完整答案詳解
- 2025-2030中國(guó)戶(hù)外取暖器行業(yè)發(fā)展分析及競(jìng)爭(zhēng)格局與發(fā)展趨勢(shì)預(yù)測(cè)研究報(bào)告
- 2026年西雙版納州生態(tài)環(huán)境局勐海分局編外人員招聘?jìng)淇碱}庫(kù)及參考答案詳解1套
- 中華人民共和國(guó)安全生產(chǎn)法培訓(xùn)課件
- 化工行業(yè)安全生產(chǎn)標(biāo)準(zhǔn)化管理體系建設(shè)方案
- TCAMET 《城市軌道交通 車(chē)輛表面貼膜》編制說(shuō)明(征求意見(jiàn)稿)
- 醫(yī)療衛(wèi)生機(jī)構(gòu)網(wǎng)絡(luò)安全管理辦法
- 《保健食品標(biāo)識(shí)培訓(xùn)》課件
- 2023年非標(biāo)自動(dòng)化機(jī)械設(shè)計(jì)工程師年度總結(jié)及來(lái)年計(jì)劃
- 股骨頸骨折圍手術(shù)期護(hù)理
- 蜂窩煤成型機(jī)設(shè)計(jì)課程設(shè)計(jì)
- 民間個(gè)人借款擔(dān)保書(shū)
- LY/T 1598-2011石膏刨花板
- GB/T 31588.1-2015色漆和清漆耐循環(huán)腐蝕環(huán)境的測(cè)定第1部分:濕(鹽霧)/干燥/濕氣
評(píng)論
0/150
提交評(píng)論