




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
單片機(jī)系統(tǒng)設(shè)計(jì)與制作項(xiàng)目3手動(dòng)計(jì)數(shù)器的設(shè)計(jì)與制作目錄
知識(shí)鏈接一、中斷的基本概念及應(yīng)用二、數(shù)碼管靜態(tài)和動(dòng)態(tài)顯示三、數(shù)碼管與單片機(jī)的接口電路任務(wù)實(shí)施一、任務(wù)分析二、安裝與調(diào)試目錄
知識(shí)鏈接一、中斷的基本概念及應(yīng)用二、數(shù)碼管靜態(tài)和動(dòng)態(tài)顯示三、數(shù)碼管與單片機(jī)的接口電路任務(wù)實(shí)施一、任務(wù)分析二、安裝與調(diào)試1、中斷的概念及功能什么是中斷?中斷:計(jì)算機(jī)在執(zhí)行程序的過(guò)程中,由CPU以外的服務(wù)對(duì)象向CPU發(fā)出中斷請(qǐng)求信號(hào),要求CPU暫時(shí)中斷當(dāng)前程序的執(zhí)行,轉(zhuǎn)去執(zhí)行相應(yīng)的處理程序,待處理程序執(zhí)行完畢后,再繼續(xù)執(zhí)行原來(lái)被中斷的程序。1、中斷的概念及功能主程序斷點(diǎn)繼續(xù)執(zhí)行主程序響應(yīng)中斷請(qǐng)求返回主程序RETI中斷服務(wù)程序中斷執(zhí)行過(guò)程2中斷響應(yīng)4中斷返回中斷請(qǐng)求13中斷處理1、中斷的概念及功能向CPU發(fā)出中斷請(qǐng)求的來(lái)源,或引起中斷的原因。來(lái)自單片機(jī)內(nèi)部稱為內(nèi)部中斷源;來(lái)自單片機(jī)外部,稱之為外部中斷源。中斷源也叫中斷申請(qǐng),中斷源要求服務(wù)的請(qǐng)求。中斷請(qǐng)求主程序被斷開(kāi)的位置(或地址)。斷點(diǎn)也叫中斷處理子程序,中斷之后所執(zhí)行的處理程序。中斷服務(wù)程序1、中斷的概念及功能調(diào)用子程序在程序中是事先安排好的,而何時(shí)調(diào)用中斷服務(wù)程序事先卻無(wú)法確定。因?yàn)橹袛嗟陌l(fā)生取決于申請(qǐng)中斷的外部事件,無(wú)法事先在程序中安排指令,中斷服務(wù)程序的處理過(guò)程是由硬件自動(dòng)完成的。調(diào)用中斷服務(wù)程序與調(diào)用子程序的區(qū)別RETRETI1、中斷的概念及功能分時(shí)操作解決快速CPU與慢速外設(shè)工作速度不一致的問(wèn)題。實(shí)時(shí)處理在實(shí)時(shí)控制中,及時(shí)對(duì)外部條件變化做出反應(yīng)。故障處理出現(xiàn)掉電、存儲(chǔ)錯(cuò)誤等意外狀況或故障時(shí),轉(zhuǎn)到相應(yīng)的故障處理程序處理中斷的功能1、中斷的概念及功能2個(gè)中斷優(yōu)先級(jí)4個(gè)相關(guān)特殊功能寄存器5個(gè)中斷源MCS-51中斷系統(tǒng)外部中斷0定時(shí)器/計(jì)數(shù)器0外部中斷1定時(shí)器/計(jì)數(shù)器1串行口收發(fā)中斷定時(shí)器/計(jì)數(shù)器控制寄存器TCON串行口控制寄存器SCON中斷允許控制寄存器IE中斷優(yōu)先級(jí)控制寄存器IP高優(yōu)先級(jí)低優(yōu)先級(jí)2、中斷系統(tǒng)及管理圖4.1
MCS-51單片機(jī)中斷系統(tǒng)內(nèi)部結(jié)構(gòu)2、中斷系統(tǒng)及管理兩個(gè)外部中斷(INT0、INT1),兩個(gè)定時(shí)器溢出中斷(T0溢出、T1溢出)和一個(gè)串行口中斷,各中斷源對(duì)應(yīng)的中斷服務(wù)程序入口地址及中斷信號(hào)產(chǎn)生的條件如表所示。中斷源中斷源中斷入口地址中斷信號(hào)產(chǎn)生外部中斷0(INT0)0003HP3.2腳輸入低電平或下降沿T0溢出中斷000BH定時(shí)器0計(jì)數(shù)滿溢出外部中斷1(INT1)0013HP3.3腳輸入低電平或下降沿T1溢出中斷001BH定時(shí)器1計(jì)數(shù)滿溢出串行口中斷0023H串行口發(fā)送或接受完一幀數(shù)據(jù)表4.1
中斷入口地址及中斷信號(hào)產(chǎn)生2、中斷系統(tǒng)及管理與中斷控制相關(guān)的特殊功能寄存器。中斷控制寄存器TCONSCONIEIP2、中斷系統(tǒng)及管理位D7D6D5D4D3D2D1D0TCONTF1TR1TF0TR0IE1IT1IE0IT088H8FH8EH8DH8CH8BH8AH89H88H表4.2TCON位格式定義TCON(TimerControl)定時(shí)器/計(jì)數(shù)器控制寄存器TCON用于鎖存外部中斷請(qǐng)求標(biāo)志以及定時(shí)器/計(jì)數(shù)器控制,其各位格式定義如表4.2所示。(1)TCON2、中斷系統(tǒng)及管理TF1:
定時(shí)器T1溢出中斷標(biāo)志位。硬件置1,CPU響應(yīng)中斷后,由
硬件(或軟件)清0。TR1:
定時(shí)器T1運(yùn)行控制位,由軟件置位或清0。TR1置1時(shí),定時(shí)
器T1啟動(dòng);TR1清0時(shí),定時(shí)器T1停止。TF0:
定時(shí)器T0溢出中斷標(biāo)志位,功能與TF1類似。TR0:
定時(shí)器T0運(yùn)行控制位,功能與TR1類似。位D7D6D5D4D3D2D1D0TCONTF1TR1TF0TR0IE1IT1IE0IT02、中斷系統(tǒng)及管理IE1:
外部中斷1請(qǐng)求標(biāo)志位。當(dāng)INT1引腳上中斷請(qǐng)求信號(hào)有效時(shí),
則IE1由硬件置1,向CPU申請(qǐng)中斷。IT1:
外部中斷1觸發(fā)方式控制位。當(dāng)IT1=0時(shí),INT1為電平觸發(fā)方
式。當(dāng)IT1=1時(shí),INT1為邊沿觸發(fā)方式。IE0:
外部中斷0請(qǐng)求標(biāo)志位,功能與IE1類似。IT0:
外部中斷0觸發(fā)方式控制位,功能與IT1類似。位D7D6D5D4D3D2D1D0TCONTF1TR1TF0TR0IE1IT1IE0IT02、中斷系統(tǒng)及管理位D7D6D5D4D3D2D1D0SCONSM0SM1SM2RENTB8RB8TIRI98H9FH9EH9DH9CH9BH9AH99H98H表4.3
SCON位格式定義SCON(SerialControl)串行口控制寄存器SCON位格式定義如表4.3所示。(2)
SCONTI:串行口發(fā)送中斷標(biāo)志位。硬件置1,軟件清0。RI:串行口接收中斷標(biāo)志位。硬件置1,軟件清0。2、中斷系統(tǒng)及管理位D7D6D5D4D3D2D1D0IEEA——ESET1EX1ET0EX0A8HAFH——ACHABHAAHA9HA8H表4.4
IE位格式定義IE(InterruptEnable)中斷允許控制寄存器中斷的類型:非屏蔽中斷和可屏蔽中斷。MCS-51系列單片機(jī)的5個(gè)中斷源都是可屏蔽中斷,各中斷源的開(kāi)放與禁止由中斷允許控制寄存器IE控制。IE寄存器各位格式定義如表4.4所示。(3)
IE2、中斷系統(tǒng)及管理EA:CPU中斷允許控制位。EA相當(dāng)于控制所有中斷源開(kāi)放與屏蔽的總開(kāi)關(guān)。ES:串行口中斷允許位。ET1:定時(shí)器T1中斷允許位EX1:外部中斷1中斷允許位。ET0:定時(shí)器T0中斷允許位。EX0:外部中斷0中斷允許位。位D7D6D5D4D3D2D1D0IEEA——ESET1EX1ET0EX02、中斷系統(tǒng)及管理只允許定時(shí)器T1中斷,編寫(xiě)開(kāi)放中斷的指令。例8051單片機(jī)系統(tǒng)復(fù)位后,IE中各中斷允許位均被清0,即禁止所有中斷。SETB EA ;EA置1SETB ET1 ;ET1置1EA=1;ET1=1;MOV IE,#88H ;EA置1,ET1置1,88H=10001000BIE=0x88;或只用一條字節(jié)指令:2、中斷系統(tǒng)及管理位D7D6D5D4D3D2D1D0IP———PSPT1PX1PT0PX0B8H———BCHBBHBAHB9HB8H表4.5
IP位格式定義IP(InterruptPriority)中斷優(yōu)先級(jí)控制寄存器IP用于設(shè)置各中斷源優(yōu)先級(jí),IP的各位均可由軟件置1或清0,1表示高優(yōu)先級(jí),0表示低優(yōu)先級(jí)。(4)
IP2、中斷系統(tǒng)及管理PS:串行口中斷優(yōu)先級(jí)控制位。PT1:定時(shí)器T1中斷優(yōu)先級(jí)控制位。PX1:外部中斷1中斷優(yōu)先級(jí)控制位。PT0:定時(shí)器T0中斷優(yōu)先級(jí)控制位。PX0:外部中斷0中斷優(yōu)先級(jí)控制位。系統(tǒng)復(fù)位后,IP低5位全部0,所有中斷源均設(shè)定為低優(yōu)先級(jí)中斷??赏ㄟ^(guò)指令設(shè)定中斷源為高優(yōu)先級(jí)或低優(yōu)先級(jí)中斷。位D7D6D5D4D3D2D1D0IP———PSPT1PX1PT0PX02、中斷系統(tǒng)及管理幾個(gè)同一優(yōu)先級(jí)的中斷源同時(shí)向CPU申請(qǐng)中斷,則CPU按自然優(yōu)先級(jí)順序確定先響應(yīng)哪個(gè)中斷請(qǐng)求。自然優(yōu)先級(jí)由硬件形成。中斷優(yōu)先級(jí)控制串行口中斷定時(shí)器T1中斷外部中斷1定時(shí)器T0中斷外部中斷0最低最高2、中斷系統(tǒng)及管理1高優(yōu)先級(jí)的中斷請(qǐng)求可以打斷正在執(zhí)行的低優(yōu)先級(jí)中斷。2同級(jí)或低優(yōu)先級(jí)的中斷請(qǐng)求不能打斷正在執(zhí)行的中斷。中斷優(yōu)先響應(yīng)的三條原則3兩個(gè)以上同級(jí)中斷源同時(shí)向CPU申請(qǐng)中斷時(shí),CPU按自然優(yōu)先級(jí)順序確定先響應(yīng)哪一個(gè)中斷。在實(shí)際應(yīng)用中,將IP寄存器和自然優(yōu)先級(jí)結(jié)合使用,就可以自由控制各中斷源的響應(yīng)順序。2、中斷系統(tǒng)及管理當(dāng)CPU正在執(zhí)行某個(gè)中斷服務(wù)程序時(shí),若有更高優(yōu)先級(jí)的中斷源發(fā)出中斷請(qǐng)求,則CPU會(huì)中斷當(dāng)前中斷服務(wù)程序,并保留程序斷點(diǎn),轉(zhuǎn)而響應(yīng)高級(jí)中斷,待高級(jí)中斷處理結(jié)束以后,再返回被中斷的中斷服務(wù)程序。中斷嵌套主程序斷點(diǎn)繼續(xù)執(zhí)行主程序響應(yīng)低級(jí)中斷請(qǐng)求返回主程序RETI高級(jí)中斷服務(wù)程序斷點(diǎn)低級(jí)中斷程序繼續(xù)執(zhí)行返回低級(jí)中斷程序響應(yīng)高級(jí)中斷請(qǐng)求3、中斷處理過(guò)程中斷的處理過(guò)程1中斷響應(yīng)3中斷返回2中斷處理3、中斷處理過(guò)程圖4.2中斷處理過(guò)程流程圖3、中斷處理過(guò)程(1)中斷響應(yīng)CPU響應(yīng)中斷需要滿足的條件1有中斷源向CPU發(fā)出中斷申請(qǐng),且CPU中斷控制和申請(qǐng)中斷的中斷源控制均處于開(kāi)放狀態(tài)。3CPU已執(zhí)行完當(dāng)前指令。2CPU正在執(zhí)行的不是RETI中斷返回指令或訪問(wèn)IE和IP的指令。3、中斷處理過(guò)程(2)中斷響應(yīng)過(guò)程中斷響應(yīng)過(guò)程包括斷點(diǎn)保護(hù)和中斷服務(wù)程序的入口地址跳轉(zhuǎn)。各中斷源的中斷入口地址之間只相隔8個(gè)字節(jié),無(wú)法容納一般的中斷服務(wù)程序,因此,在中斷入口地址單元通常存放一條無(wú)條件轉(zhuǎn)移指令,將中斷服務(wù)程序轉(zhuǎn)至用戶指定的其他空間。中斷服務(wù)程序從中斷入口地址開(kāi)始執(zhí)行,到返回指令RETI為止。
中斷服務(wù)程序的入口地址 ORG 0000H ;主程序入口地址 AJMP MAIN ORG 0003H ;外部中斷0入口地址 AJMP F_INT0 ORG 000BH ;定時(shí)器T0入口地址 AJMP F_T0 ……MAIN: ;主程序 ……F_INT0: ;外部中斷0中斷服務(wù)程序 ……
RETIF_T0: ;定時(shí)器/計(jì)數(shù)器T0中斷服務(wù)程序 …….
RETI ENDC51的中斷服務(wù)程序void函數(shù)名() interrupt中斷號(hào)[using工作寄存器組]{ …… }中斷號(hào)中斷源0外部中斷01定時(shí)器/計(jì)數(shù)器02外部中斷13定時(shí)器/計(jì)數(shù)器14串行口收發(fā)中斷工作寄存器組0(默認(rèn))1233、中斷處理過(guò)程(3)中斷返回中斷返回:指中斷服務(wù)完后,計(jì)算機(jī)返回原來(lái)斷點(diǎn)的位置,繼續(xù)執(zhí)行原來(lái)的程序。中斷返回由中斷返回指令RETI來(lái)實(shí)現(xiàn)。中斷源發(fā)出中斷請(qǐng)求后,相應(yīng)的中斷請(qǐng)求標(biāo)志位被置1。CPU響應(yīng)中斷請(qǐng)求后,在中斷返回前,應(yīng)刪除該中斷請(qǐng)求標(biāo)志,否則會(huì)再次響應(yīng)該中斷,進(jìn)入死循環(huán)。目錄
知識(shí)鏈接一、中斷的基本概念及應(yīng)用二、數(shù)碼管靜態(tài)和動(dòng)態(tài)顯示三、數(shù)碼管與單片機(jī)的接口電路任務(wù)實(shí)施一、任務(wù)分析二、安裝與調(diào)試目錄
知識(shí)鏈接一、中斷的基本概念及應(yīng)用二、數(shù)碼管靜態(tài)和動(dòng)態(tài)顯示三、數(shù)碼管與單片機(jī)的接口電路任務(wù)實(shí)施一、任務(wù)分析二、安裝與調(diào)試1、LED數(shù)碼管結(jié)構(gòu)LED七段數(shù)碼管由7個(gè)長(zhǎng)型發(fā)光二極管和一個(gè)圓點(diǎn)型發(fā)光二極管組成,可以顯示數(shù)字、某些字母及其他符號(hào)。LED數(shù)碼管根據(jù)公共引腳與電源和地的連接方式,分共陰型和共陽(yáng)型。1、LED數(shù)碼管結(jié)構(gòu)1、LED數(shù)碼管結(jié)構(gòu)
(a)(b)(c)圖4.2LED數(shù)碼管外形引腳及結(jié)構(gòu)圖(a)外形及引腳(b)共陰極結(jié)構(gòu)(c)共陽(yáng)極結(jié)構(gòu)1、LED數(shù)碼管結(jié)構(gòu)各二極管一般參數(shù):正向壓降:1.5~2V 額定電流:10~30mA最大電流:不超過(guò)40mA。LED數(shù)碼管參數(shù)代碼位D7D6D5D4D3D2D1D0顯示段dpgfedcba表4.8LED數(shù)碼管代碼位與顯示字段1、LED數(shù)碼管結(jié)構(gòu)在顯示時(shí)需把待顯示的數(shù)字轉(zhuǎn)換成相應(yīng)的段選碼。譯碼常用74LS48、74LS49、74LS164等集成譯碼電路實(shí)現(xiàn)。常用指令MOVCA,@A+DPTR以查表法實(shí)現(xiàn)。硬件譯碼軟件譯碼譯碼方法1、LED數(shù)碼管結(jié)構(gòu)
LED的段選碼段位名dpgfedcba共陽(yáng)極段碼10010010十六進(jìn)制92H段位名dpgfedcba共陰極段碼01101101十六進(jìn)制6DH反碼1、LED數(shù)碼管結(jié)構(gòu)字型共陽(yáng)極代碼共陰極代碼字型共陽(yáng)極代碼共陰極代碼0COH3FH990H6FH1F9H06HA88H77H2A4H5BHb83H7CH3B0H4FHCC6H39H499H66HdA1H5EH592H6DHE86H79H682H7DHF84H71H7F8H07H8.00HFFH880H7FH滅FFH00H表4.9LED數(shù)碼管十六進(jìn)制段選碼2、LED數(shù)碼管的顯示控制字段控制字位控制
顯示控制用于控制顯示什么字符用于控制某一位或某幾位顯示多位LED數(shù)碼管顯示2、LED數(shù)碼管的顯示控制靜態(tài)顯示動(dòng)態(tài)顯示數(shù)碼管的顯示控制每一時(shí)刻只有一個(gè)數(shù)碼管顯示所有數(shù)碼管都處于顯示狀態(tài)3、LED數(shù)碼管的靜態(tài)顯示靜態(tài)顯示:當(dāng)數(shù)碼管顯示某一字符時(shí),該位的各段選線和位選線的電平保持不變,即對(duì)應(yīng)發(fā)光二極管保持導(dǎo)通或者截止的狀態(tài)。連線方法:將各位LED數(shù)碼管的位選線(即共陰極或共陽(yáng)極)連接在一起,接地或者接+5V電源;其段選線(dp~a)分別接到一個(gè)8位的控制端口。3、LED數(shù)碼管的靜態(tài)顯示圖4.74位LED數(shù)碼管靜態(tài)顯示3、LED數(shù)碼管的靜態(tài)顯示靜態(tài)顯示的特點(diǎn)01顯示穩(wěn)定,不易閃爍,顯示亮度高02編程簡(jiǎn)單03占用的I/O口太多,硬件資源消耗過(guò)大04功耗大僅適用于顯示位數(shù)較少的情況。注意4、LED數(shù)碼管的動(dòng)態(tài)顯示多位LED數(shù)碼管共享段選線,依次輸出段選碼,同時(shí)依次在LED數(shù)碼管的公共端送入有效電平,逐位進(jìn)行掃描。所有的LED數(shù)碼管會(huì)按順序逐個(gè)點(diǎn)亮。利用人眼的視覺(jué)殘留效應(yīng),只要掃描頻率足夠快(100Hz以上),將掃描周期控制在視覺(jué)停頓時(shí)間內(nèi),則可以達(dá)到不閃爍的效果,使所有數(shù)碼管看起來(lái)似乎是同時(shí)點(diǎn)亮的。動(dòng)態(tài)顯示與發(fā)光二極管的導(dǎo)通電流有關(guān),也與點(diǎn)亮的持續(xù)時(shí)間和間隔時(shí)間的比值有關(guān),合理選擇參數(shù),就可以得到亮度高、穩(wěn)定性好的顯示效果。顯示效果4、LED數(shù)碼管的動(dòng)態(tài)顯示將所有數(shù)碼管的8個(gè)顯示筆劃“a,b,c,d,e,f,g,dp”的同名端連在一起,另外為每個(gè)數(shù)碼管的公共極COM增加位選通控制電路,位選通由各自獨(dú)立的I/O線控制。連線方法
動(dòng)態(tài)顯示工作原理—連線acegbfddpcom段碼位碼
動(dòng)態(tài)顯示工作原理—掃描過(guò)程段碼位碼0010010100010000001110011111010010010010010010004、LED數(shù)碼管的動(dòng)態(tài)顯示動(dòng)態(tài)顯示的特點(diǎn)01占用端口少,節(jié)省硬件資源。02功耗低03控制過(guò)程較復(fù)雜,降低了CPU工作效率04顯示亮度較靜態(tài)顯示低。在顯示位數(shù)多,硬件控制端口資源緊張的情況注意4、LED數(shù)碼管的動(dòng)態(tài)顯示100ms10Hz25ms40Hz10ms100Hz1ms1KHz目錄
知識(shí)鏈接一、中斷的基本概念及應(yīng)用二、數(shù)碼管靜態(tài)和動(dòng)態(tài)顯示三、數(shù)碼管與單片機(jī)的接口電路任務(wù)實(shí)施一、任務(wù)分析二、安裝與調(diào)試1、靜態(tài)顯示接口電路利用單片機(jī)控制LED數(shù)碼管靜態(tài)顯示,顯示幾位,就需要幾個(gè)8位并行I/O口,當(dāng)單片機(jī)I/O口不夠用時(shí),則需要進(jìn)行I/O口擴(kuò)展。若采用共陽(yáng)極數(shù)碼管,單片機(jī)I/O口通過(guò)限流電阻接在LED數(shù)碼管的a~dp口即可。若采用共陰極數(shù)碼管,由于單片機(jī)I/O口驅(qū)動(dòng)能力不足,無(wú)法提供發(fā)光二極管導(dǎo)通所需電流,除了限流電阻以外,還應(yīng)在I/O口與LED數(shù)碼管段選口之間增加緩沖器或三極管驅(qū)動(dòng)電路。(不推薦)1、靜態(tài)顯示接口電路8051單片機(jī)與共陽(yáng)極LED數(shù)碼管的接口電路如圖4.9所示,利用P0口并行輸出控制LED數(shù)碼管,完成0~9循環(huán)顯示的程序。例4.1圖4.9單數(shù)碼管靜態(tài)顯示接口電路1、靜態(tài)顯示接口電路匯編源代碼查表 ORG 00HMAIN: MOV R1,#0AH MOV R0,#00H MOV DPTR,#SEGTAB ;賦表頭地址LOOP: MOV A,R0 ;查表并送P1口顯示
MOVC A,@A+DPTR MOV P0,A LCALL DELAY ;調(diào)用延時(shí)
INC R0 DJNZ R1,LOOP ;循環(huán)未到10次則繼續(xù)
AJMP MAINSEGTAB:DB 0C0H,0F9H,0A4H,0B0H,99H;0~9共陽(yáng)極段碼表
DB 92H,82H,0F8H,80H,90HDELAY: MOV R5,#100 ;延時(shí)子程序D1: MOV R6,#20D2: MOV R7,#248 DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 RET END定義數(shù)據(jù)表C程序代碼#include<reg51.h>#defineucharunsignedchar#defineuintunsignedint#defineN10ucharcodePattern[N]={0xC0,0xF9,0xA4,0xB0,0x99,//共陽(yáng)極段碼表
0x92,0x82,0x0F8,0x80,0x90};voidDelayMS(uintx) //延時(shí){ uchari; while(x--) for(i=0;i<120;i++);}voidmain() //主程序{ uchari; while(1) { for(i=0;i<N;i++) { P0=Pattern[i];//查表取值,送P0口顯示
DelayMS(600); } }}2、動(dòng)態(tài)顯示接口電路選用一個(gè)8位I/O口作為段選信號(hào),用另一個(gè)8位I/O口作為位選信號(hào)。
為了節(jié)省端口資源,還可以74LS138、8155等集成電路進(jìn)行擴(kuò)展。例如,采用譯碼器74LS138,則可實(shí)現(xiàn)用3根位選線實(shí)現(xiàn)8位LED數(shù)碼管的動(dòng)態(tài)掃描。也可以利用可編程接口芯片8155進(jìn)行并口擴(kuò)展。另外,也可以利用串口實(shí)現(xiàn)顯示控制,但是實(shí)現(xiàn)程序和電路較復(fù)雜。單片機(jī)控制多位LED數(shù)碼管動(dòng)態(tài)顯示2、動(dòng)態(tài)顯示接口電路8051單片機(jī)與4位共陽(yáng)極數(shù)碼管的接口電路如圖4.10所示。利用8051單片機(jī)實(shí)現(xiàn)4位LED數(shù)碼管的動(dòng)態(tài)掃描電路,使數(shù)碼管顯示“2015”4個(gè)字符。例4.274LS245:8路同相三態(tài)雙向總線收發(fā)器74LS04:反相器2、動(dòng)態(tài)顯示接口電路圖4.10數(shù)碼管動(dòng)態(tài)顯示接口電路段選碼依次送:2、0、1、5對(duì)應(yīng)的段選碼位選碼依次送:1000010000100001C程序代碼#include<reg51.h>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedintucharcodePattern[]={0xC0,0xF9,0xA4,0xB0,0x99,//共陽(yáng)極段碼表
0x92,0x82,0x0F8,0x80,0x90};ucharcodeLed_Dis[4]={2,0,1,5}; //顯示數(shù)據(jù)表voidDelayMS(uintx) //延時(shí){ uchari; while(x--) { for(i=0;i<120;i++); }}C程序代碼voidmain() //主程序{ uchari,temp; while(1) { temp=0xef; //11101111
for(i=0;i<4;i++) { P1=0xff;
P0=Pattern[Led_Dis[i]];//查表取值,送段碼
temp>>=1;
P1=temp; //送位碼
DelayMS(10); //控制掃描頻率 } }}掃描一輪目錄
知識(shí)鏈接一、中斷的基本概念及應(yīng)用二、數(shù)碼管靜態(tài)和動(dòng)態(tài)顯示三、數(shù)碼管與單片機(jī)的接口電路任務(wù)實(shí)施一、任務(wù)分析二、安裝與調(diào)試1、任務(wù)要求本任務(wù)要求設(shè)計(jì)一個(gè)最大計(jì)數(shù)值為9的手動(dòng)加法計(jì)數(shù)器。該計(jì)數(shù)器有兩個(gè)按鍵,通過(guò)外部中斷完成清零和計(jì)數(shù)功能。清零鍵按下后顯示歸零;計(jì)數(shù)鍵按下后,計(jì)數(shù)值加1,如計(jì)數(shù)值為9,再按下計(jì)數(shù)鍵則歸零。P0口接共陽(yáng)極數(shù)碼管,靜態(tài)顯示計(jì)數(shù)值。用KeilC51、Proteus等作開(kāi)發(fā)工具,進(jìn)行仿真,并完成實(shí)物電路制作并測(cè)試,最后需完成項(xiàng)目報(bào)告。手動(dòng)計(jì)數(shù)器任務(wù)要求2、總體設(shè)計(jì)方案AT89C51單片機(jī)按鍵控制復(fù)位電路時(shí)鐘電路LED數(shù)碼管顯示3、硬件電路設(shè)計(jì)復(fù)位電路時(shí)鐘電路顯示電路復(fù)位電路可以提供“上電復(fù)位”和“手動(dòng)復(fù)位”兩種復(fù)位方式。時(shí)鐘電路以12MHz的頻率向單片機(jī)提供時(shí)鐘,保證單片機(jī)以規(guī)定的頻率運(yùn)行。共陽(yáng)極數(shù)碼管通過(guò)限流電阻連接到P0口,a~dp分別對(duì)應(yīng)P0.0~P0.7,控制電平低有效,即控制端口輸出低電平時(shí),對(duì)應(yīng)字段點(diǎn)亮,控制端口輸出高電平時(shí),控制端口熄滅。由AT89C51單片機(jī)、時(shí)鐘電路、復(fù)位電路構(gòu)成的單片機(jī)最小系統(tǒng)的基礎(chǔ)上,在P3.2(外部中斷0)和P3.3(外部中斷1)兩個(gè)引腳上分別接按鍵,P0口接共陽(yáng)極數(shù)碼管及限流電阻,即構(gòu)成手動(dòng)計(jì)數(shù)器的硬件電路。3、硬件電路設(shè)計(jì)4、軟件設(shè)計(jì)
程序流程圖C源程序#include"reg51.h"unsignedcharsegtab[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //0~9共陽(yáng)極段碼表unsignedcharcount;voidDELAY(unsignedcharn) //延時(shí)程序{ unsignedchari,j; for(i=0;i<n;i++) for(j=0;j<200;j++);}voidKey0()interrupt0 //外部中斷0中斷服務(wù)程序{ count=0; DELAY(10); }C源程序voidKey1()interrupt2 //外部中斷1中斷服務(wù)程序{ count++; if(count==10) count=0; DELAY(10);}voidmain() //主程序{ TCON=0x05; //設(shè)置邊沿觸發(fā)方式
IE=0x85; //開(kāi)中斷10000101
count=0; //計(jì)數(shù)值初始化
while(1) //顯示計(jì)數(shù)值,并等待中斷 {
P0=segtab[count]; }}5、擴(kuò)展任務(wù)在加法計(jì)數(shù)器的基礎(chǔ)之上,在P1.0口上增加一個(gè)撥碼開(kāi)關(guān),P2口按P1口連接方式增加一位數(shù)碼管,可將簡(jiǎn)單的加法計(jì)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 修改船艇管理制度
- 公司垃圾房管理制度
- 原料場(chǎng)設(shè)備管理制度
- 噴漆廠安全管理制度
- 子公司授權(quán)管理制度
- 殘疾人榜樣教育的實(shí)踐策略與價(jià)值探析
- 小公司治安管理制度
- 建筑分公司管理制度
- 操作間6s管理制度
- 木器廠設(shè)備管理制度
- 缺血性腸病病例
- 新蘇教版小學(xué)科學(xué)四年級(jí)下冊(cè)期末試卷及答案
- 2024年大學(xué)毛概期末全真模擬試卷及答案(共六套)
- 地彈簧門(mén)安裝合同(2篇)
- 電大《納稅籌劃》考試題庫(kù)小抄
- 2024年新人教版五年級(jí)數(shù)學(xué)下冊(cè)《第4單元分?jǐn)?shù)的意義和性質(zhì) 整 理和復(fù)習(xí)》教學(xué)課件
- IATF16949-2016體系管理質(zhì)量手冊(cè)(壓鑄鋁合金)
- 如何正確呼叫120
- 化療藥物引起腎毒性護(hù)理
- 古詩(shī)詞誦讀《客至》課件+2023-2024學(xué)年統(tǒng)編版高中語(yǔ)文選擇性必修下冊(cè)
- 孟母三遷故事繪本課件
評(píng)論
0/150
提交評(píng)論