




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 創(chuàng)新設(shè)計實踐 控制數(shù)碼管顯示電路設(shè)計 專業(yè):年級/班級:姓名:實訓(xùn)時間:實訓(xùn)地點(diǎn):指導(dǎo)教師: 目錄一、 題目*3 1、 摘要*32、 引言*3二、 要求*3三、 方案*3四、 設(shè)計*41、 硬件*42、 軟件*10五、 調(diào)試結(jié)論*15六、 收獲*15一、 題目控制數(shù)碼管顯示電路設(shè)計1、摘要本題是基于單片機(jī)的控制數(shù)碼管每隔1s一個數(shù)字,分別顯示1、2、3、4、5、6、7、8的設(shè)計,設(shè)計由單片機(jī)作為核心控制器,通過zlg7290驅(qū)動器控制實現(xiàn)顯示功能。2、引言在單片機(jī)技術(shù)日趨成熟的今天,其靈活的硬件電路的設(shè)計和軟件的設(shè)計,讓單片機(jī)得到了廣泛的應(yīng)用,幾乎是從小的電子產(chǎn)品,到大的工業(yè)控制,單片機(jī)都起
2、到了舉足輕重的作用。單片機(jī)小的系統(tǒng)結(jié)構(gòu)幾乎是所有具有可編程硬件的一個縮影,可謂是“麻雀雖小,五臟俱全”?,F(xiàn)在是一個知識爆炸的新時代。新產(chǎn)品、新技術(shù)層出不窮,電子技術(shù)的發(fā)展更是日新月異??梢院敛豢鋸埖恼f,電子技術(shù)的應(yīng)用無處不在,電子技術(shù)正在不斷地改變我們的生活,改變著我們的世界。在這快速發(fā)展的年代,時間對人們來說是越來越寶貴,在快節(jié)奏的生活時,人們一旦遇到重要的事情而忘記了時間,這將會帶來很大的損失,因此我們需要一個計時系統(tǒng)來提醒這些忙碌的人?,F(xiàn)今,采用了數(shù)碼管顯示技術(shù),精度高,穩(wěn)定性好,使用方便。二、要求1、用單片機(jī)實現(xiàn)簡易數(shù)字顯示,實現(xiàn)每隔1s分別顯示1、2、3、4、5、6、7、8的功能。2
3、、 學(xué)會熟練使用protel制圖。3、 使用實驗箱調(diào)試程序。三 、方案1.數(shù)碼管驅(qū)動顯示設(shè)計方案一:采用74ls 244芯片為驅(qū)動芯片 74ls244是8路3態(tài)緩沖驅(qū)動,也叫做線驅(qū)動或者總線驅(qū)動門電路。簡單地說,它有8個輸入端,8個輸出端。其輸入數(shù)據(jù)可以保持較長時間,簡單輸入接口擴(kuò)展通常使用的典型芯片。方案二:采用zlg7290芯片為驅(qū)動芯片zlg7290能夠直接驅(qū)動8 位共陰式 數(shù)碼管 數(shù)碼管是一種半導(dǎo)體發(fā)光器件,其基本單元是發(fā)光二極管。(實物參照圖片)(或64 只獨(dú)立的led),同時還可以掃描管理多達(dá)64 只按鍵。其中有8 只按鍵還可以作為功能鍵使用,就像電腦鍵盤上的ctrl、shift、
4、alt 鍵一樣。另外zlg7290b 內(nèi)部還設(shè)置有連擊計數(shù)器,能夠使某鍵按下后不松手而連續(xù)有效。采用i2c 總線方式,與微控制器的接口僅需兩根信號線??煽貟呙栉粩?shù),可控任一數(shù)碼管閃爍。 能同時驅(qū)動顯示和開關(guān),使用方便,效率高。 所以選擇方案二。2、定時器設(shè)計方案一:采用單片機(jī)自帶定時器 顯示程序放在主程序時執(zhí)行速度比較快,使用自帶定時器使電路簡潔。利用單片機(jī)的定時,時間精確、穩(wěn)定、可靠,并可以利用單片機(jī)的功能很好地進(jìn)行時間顯示、指示、輸出、原理簡單,使用元器件少,相對來說在實物調(diào)試時出現(xiàn)的問題少。該方案還有一個好處是成本低。此外,經(jīng)過無數(shù)人的證明,利用單片機(jī)完全可以實現(xiàn)定時功能,失敗的風(fēng)險小。
5、方案二:采用專業(yè)芯片該方案應(yīng)用穩(wěn)定的高頻脈沖信號作為定時器的時間基準(zhǔn),可以說也有同單片機(jī)一樣的精確、穩(wěn)定、可靠的輸出時間,且對軟件編寫要求不高,能很好地實現(xiàn)設(shè)計要求的功能。但是該方案復(fù)雜,一般不容易弄白它的原理,而且應(yīng)用的元器件較多,在實物調(diào)試時出現(xiàn)的問題可能比較多。由于元器件比較多,所以相對來說實物的成本也比較高,而且調(diào)試時出現(xiàn)的問題可能比較多。而且在pcb步線時更加麻煩。由于原理復(fù)雜,所以成功完成該設(shè)計的概率較低。經(jīng)過考慮我選擇方案一。所以: 利用zlg7290驅(qū)動芯片驅(qū)動數(shù)碼管顯示和開關(guān),通過at89sc52單片機(jī)控制實現(xiàn)數(shù)碼管顯示每隔1s一個數(shù)字,分別顯示1、2、3、4、5、6、7、8
6、。zlg7290在鍵盤部分具有鍵盤去抖動處理、雙鍵互鎖處理、連擊鍵處理及功能鍵處理的功能;在顯示部分具有對顯示部分的基本控制功能即寄存器映像控制和命令解釋控制。如實現(xiàn)寄存器的位操作;對顯示緩存 、移位;對操作數(shù)譯碼等。zlg7290驅(qū)動芯片可以實現(xiàn)循環(huán)左移、循環(huán)右移等功能,且該芯片使用簡便、可信度高。 利用數(shù)碼管顯示系統(tǒng)采用動態(tài)顯示方式,用p0口來控制led數(shù)碼管的段控線,而用p2口來控制其位控線。動態(tài)顯示采用動態(tài)掃描的方法循環(huán)點(diǎn)亮每一個數(shù)碼管,這樣雖然在任何時刻都只有一位數(shù)碼管被點(diǎn)亮,但由于人眼存在視覺殘留效應(yīng),只要每位數(shù)碼管間隔時間足夠短,就可以給人以同時顯示的感覺。 利用at89sc52
7、單片機(jī)做cpu,因其低功耗 、高性能且設(shè)計和配置了振蕩頻率可為0hz并可通過軟件設(shè)置省電模式。流程圖如下:將數(shù)組中取數(shù)元素送代碼端開始變量賦初值yes修改變量i8輸出位碼控制數(shù)據(jù)延時四、設(shè)計1、硬件設(shè)計1)驅(qū)動芯片zlg7290a) zlg7290的引腳圖b)zlg7290硬件接口電路圖c)功能框圖2)89s52單片機(jī)引腳圖at89s52是一個低功耗,高性能cmos 8位單片機(jī),片內(nèi)含8k bytes isp(in-system programmable)的可反復(fù)擦寫1000次的flash只讀程序存儲器,器件采用atmel公司的高密度、非易失性存儲技術(shù)制造,兼容標(biāo)準(zhǔn)mcs -51指令系統(tǒng)及80
8、c51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和isp flash存儲單元,功能強(qiáng)大的微型計算機(jī)的at89s52可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價比的解決方案。 at89s52具有如下特點(diǎn):40個引腳,8k bytes flash片內(nèi)程序存儲器,256 bytes的隨機(jī)存取數(shù)據(jù)存儲器(ram),32個外部雙向輸入/輸出(i/o)口,5個中斷優(yōu)先級2層中斷嵌套中斷,2個16位可編程定時計數(shù)器,2個 全雙工串行通信口,看門狗(wdt)電路,片內(nèi)時鐘振蕩器。 此外,at89s52設(shè)計和配置了振蕩頻率可為0hz并可通過軟件設(shè)置省電模式??臻e模式下,cpu暫停工作,而ram定時計數(shù)器,串行口,外中斷
9、系統(tǒng)可繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存ram的數(shù)據(jù),停止芯片其它功能直至外中斷激活或硬件復(fù)位。同時該芯片還具有pdip、tqfp和plcc等三 種封裝形式,以適應(yīng)不同產(chǎn)品的需求。主要功能特性: 兼容mcs-51指令系統(tǒng) 8k可反復(fù)擦寫(1000次)isp flash rom 32個雙向i/o口 4.5-5.5v工作電壓 3個16位可編程定時/計數(shù)器 時鐘頻率0-33mhz 全雙工uart串行中斷口線 256x8bit內(nèi)部ram 2個外部中斷源 低功耗空閑和省電模式 中斷喚醒省電模式 3級加密位 看門狗(wdt)電路 軟件設(shè)置空閑和省電功能 靈活的isp字節(jié)和分頁編程 雙數(shù)據(jù)寄存器指針3)le
10、d顯示屏的基本結(jié)構(gòu) 本系統(tǒng)設(shè)計中,控制系統(tǒng)采用單片機(jī)+cpld的方案來實現(xiàn),整個控制系統(tǒng)可分為:信號接收及處理模塊和cpld的掃描控制模塊和led點(diǎn)陣驅(qū)動模塊,如圖1 所示。本系統(tǒng)的關(guān)鍵技術(shù)是使用雙口ram和cpld芯片,解決led顯示屏中高速數(shù)據(jù)傳輸和快速掃描控制的難題,大大提高了動態(tài)顯示的刷新率。 信號接收與處理模塊的功能是at89s52單片機(jī)通過串口接收pc送來的點(diǎn)陣信息,同時對點(diǎn)陣信息做各種不同的處理。利用雙口ram idt7007在單片機(jī)和atf1508as之間以共享的方式建立高速的數(shù)據(jù)交換通道。4)數(shù)碼管的模塊設(shè)計數(shù)碼管的引腳圖數(shù)碼管是一種把多個led顯示段集成在一起的顯示設(shè)備。有
11、兩種類型,一種是共陽型,一種是共陰型。共陽型就是把多個led顯示段的陽極接在一起,又稱為公共端。共陰型就是把多個led顯示段的陰極接在一起,即為公共商。陽極即為二極管的正極,又稱為正極,陰極即為二極管的負(fù)極,又稱為負(fù)極。通常的數(shù)碼管又分為8段,即8個led顯示段,這是為工程應(yīng)用方便如設(shè)計的,分別為a、b、c、d、e、f、g、dp,其中dp 是小數(shù)點(diǎn)位段。而多位數(shù)碼管,除某一位的公共端會連接在一起,不同位的數(shù)碼管的相同端也會連接在一起。即,所有的a段都會連在一起,其它的段也是如此,這是實際最常用的用法。數(shù)碼管顯示方法可分為靜態(tài)顯示和動態(tài)顯示兩種。靜態(tài)顯示就是數(shù)碼管的8段輸入及其公共端電平一直有效
12、。動態(tài)顯示的原理是,各個數(shù)碼管的相同段連接在一起,共同占用8 位段引管線;每位數(shù)碼管的陽極連在一起組成公共端。利用人眼的視覺暫留性,依次給出各個數(shù)碼管公共端加有效信號,在此同時給出該數(shù)碼管加有效的數(shù)據(jù)信號,當(dāng)全段掃描速度大于視覺暫留速度時,顯示就會清晰顯示出來。 系統(tǒng)采用動態(tài)顯示方式,用p0口來控制led數(shù)碼管的段控線,而用p2口來控制其位控線。動態(tài)顯示通常都是采用動態(tài)掃描的方法進(jìn)行顯示,即循環(huán)點(diǎn)亮每一個數(shù)碼管,這樣雖然在任何時刻都只有一位數(shù)碼管被點(diǎn)亮,但由于人眼存在視覺殘留效應(yīng),只要每位數(shù)碼管間隔時間足夠短,就可以給人以同時顯示的感覺。5)電路分析晶振電路右圖所示為時鐘電路原理圖,在at89
13、s51芯片內(nèi)部有一個高增益反相放大器,其輸入端為芯片引腳xtal1,輸出端為引腳xtal2。而在芯片內(nèi)部,xtal1和xtal2之間跨接晶體振蕩器和微調(diào)電容,從而構(gòu)成一個穩(wěn)定的自激振蕩器。時鐘電路產(chǎn)生的振蕩脈沖經(jīng)過觸發(fā)器進(jìn)行二分頻之后,才成為單片機(jī)的時鐘脈沖信號。復(fù)位電路單片機(jī)復(fù)位的條件是:必須使rst/vpd 或rst引(9)加上持續(xù)兩個機(jī)器周期(即24個振蕩周期)的高電平。例如,若時鐘頻率為12 mhz,每機(jī)器周期為1s,則只需2s以上時間的高電平,在rst引腳出現(xiàn)高電平后的第二個機(jī)器周期執(zhí)行復(fù)位。單片機(jī)常見的復(fù)位如圖所示。電路為上電復(fù)位電路,它是利用電容充電來實現(xiàn)的。在接電瞬間,rese
14、t端的電位與vcc相同,隨著充電電流的減少,reset的電位逐漸下降。只要保證reset為高電平的時間大于兩個機(jī)器周期,便能正常復(fù)位。該電路除具有上電復(fù)位功能外,若要復(fù)位,只需按圖中的reset鍵,此時電源vcc經(jīng)電阻r1、r2分壓,在reset端產(chǎn)生一個復(fù)位高電平。6)protel電路圖2、軟件設(shè)計1)主程序#includeconfig.h/*長延時ms*/void delayms(uint ms) uint j; for(;ms0;ms-); for(j=0;j1000;j+);/*/ 函數(shù)名:getkey()/ 功能 :讀取zlg7290芯片鍵值/ 入口 :無/ 出口 :uchar/*/
15、uchar getkey() uchar rece,keyini=1;rece=0;ircvstr(zlg7290,1,&rece,1);/向有子地址器件讀取多字節(jié)數(shù)isendstr(zlg7290,0x00,&keyini,1); /鍵值有效delayms(10);return rece;/*/函數(shù)名:sendcmd()/功能 :向zlg7290的07,08單元發(fā)送控制命令 /入口 :cmd1.cmd2 兩個控制命令出口 :輸出1,ok;輸出0 fail/*/uchar sendcmd(uchar cmd1,uchar cmd2) uchar data2;data0=cmd1;data1=c
16、md2;isendstr(zlg7290,0x07,data,2);delayms(10);return 1;/*/ 函數(shù)名 :sendbuf()/ 功能 :向zlg7290顯示緩沖區(qū)發(fā)送數(shù)據(jù),并顯示 入口,/ 入口 :dispbuf發(fā)送數(shù)據(jù)首址/ num 發(fā)送個數(shù)/ 出口 :無/*/void sendbuf(uchar * dispbuf,uchar num)uchar i;for(i=0;inum;i+)sendcmd(0x60+i,*dispbuf);dispbuf+;/*/ 函數(shù)名 :dispdata()/ 功能 :區(qū)別于sendbuf,該函數(shù)會將發(fā)送的數(shù)據(jù)直接譯碼成/ 顯示的數(shù)據(jù)。/
17、 入口 : x 要顯示的起始led/ *p 顯示數(shù)據(jù)首址/ num 顯示數(shù)據(jù)個數(shù)/ 出口 : 無/*/void dispdata (uchar x,uchar *p,uchar num) uchar cmd2; for(;(x8)#x+,p+) cmd0=0x60+x; cmd1=*p&0x1f; isendstr(zlg7290,0x07,cmd,2); /isendstr(zlg7290,0x0d,&x,1); /控制顯示位數(shù) num-; void main() uchar key=0x01,i; uchar time7; bit keyi=0; uchar keybuf9=0x0
18、0,0x12,0x00,0x30,0x12,0x06,0x05,0x02,0x04;/定義初始化字 rst=0; /delayms(1); rst=1; /讀入前寫1isendstr(zlg7290,0x00,&key,1); /鍵值有效while(1)for(i=0;(i16)&(keyint=0);i+) key=getkey(); /有鍵按下則采集并保存鍵值 delayms(10); keybufi=key;/簡單采集鍵值 dispdata (0,&key,1); 2)zlg7290的頭文件 #ifndef zlg7290_h#define zlg7290_hextern void de
19、layms(uint ms);extern void sendbuf(uchar *dispbuf,uchar num); /向zlg7290顯示緩沖區(qū)發(fā)送數(shù)據(jù) 入口dispbuf首址,發(fā)送個數(shù)numextern uchar sendcmd(uchar cmd1,uchar cmd2); /向zlg7290的07,08單元發(fā)送控制命令 輸出1,ok;輸出0 failextern uchargetkey(); /讀取鍵值extern void dispdata (uchar x,uchar *p,uchar num); /按位下載且譯碼#endif3)config頭文件#ifndef confi
20、g_h /公共頭文件及一些常量定義#define config_h /宏定義#ifndef uchar#define uchar unsigned char#endif#ifndef uint#define uint unsigned int#endif/器件地址定義#define zlg7290 0x70 /zlg7290的iic地址-從地址#define pcf8563 0xa2 /時鐘日歷芯片pcf8563從地址#definecatw02 0xa0/2k位串行e2prom芯片從地址/zlg子地址定義#define subkey 0x01 /鍵值#define subcmdbuf 0x07
21、/命令#define subdpram 0x10/顯示緩沖區(qū)/包含頭文件#include reg51.h#includeport.h /注意頭文件的順序#include viic_c51.h#includezlg7290.h#endif4)port頭文件#ifndef port_h#define port_h/#include/端口定義/sbit sda=p10;/sbit scl=p11;/sbit rst=p12;/sbit keyint=p32;/=0,有鍵按下/sbit intptr=p14;#endif5)c文件#include#define len 16 /讀取鍵值個數(shù)bit k1
22、=0; /顯示時間bit k2=0; /編輯時間bit k3=0;/ 定時bit k4=0; / 報警bit k5=0; /修改時間移位bit k6=0;/+1bit k7=0; /-1bit k=0;void judgekey(uchar key)/judge which key is pressed if(key=0x01) k1=1; else if(key=0x02) k2=1; else if(key=0x03) k3=1; else if(key=0x04) k4=1; else if(key=0x05) k5=1; else if(key=0x06) k6=1; else if(
23、key=0x07) k7=1; else k=0; /其它無效鍵按下 6)viic_c51.c文件此程序是i2c操作平臺(主方式的軟件平臺)的底層的c子程序,如發(fā)送數(shù)據(jù)及接收數(shù)據(jù),應(yīng)答位發(fā)送,并提供了幾個直接面對器件的操作函數(shù),它很方便的與用戶程序連接并擴(kuò)展. 注意:函數(shù)是采用軟件延時的方法產(chǎn)生scl脈沖,固對高晶振頻率要作 一定的修改.(本例是1us機(jī)器周期,即晶振頻率要小于12mhz)7)頭文件名 viic_c51.h這個頭文件對應(yīng)的庫是viic_c51.lib,庫中有幾個模擬i2c的函數(shù),加入此文件 即可使用i2c平臺(主方式的軟件平臺), 函數(shù)是對lpc764的i2c的io口實現(xiàn),即其
24、p1.3 (sda) , p1.2(scl),51系列機(jī)型可以通用. 注意: 函數(shù)是采用軟件延時的方法產(chǎn)生scl脈沖,固對高晶振頻率要作 一定的修改.(本例是1us機(jī)器周期,即晶振頻率要小于12mhz).(函數(shù)的使用可參考給出的事例程序.) 五、調(diào)試結(jié)論本次課程設(shè)計使用的是匯編語言編程,然后再keil軟件里編譯調(diào)試的。先在實驗箱上連接好電路,打開keil軟件,然后新建一個工程,在工程里面建立一個.asm文件,通過載入工程轉(zhuǎn)換為.hex文件,接著編譯、修改程序,知道編譯通過即可。 1. 電路電器檢查沒問題,但是調(diào)試時數(shù)碼管都不亮在按下某個鍵時,zlg7290的int引腳會產(chǎn)生一個低電平的中斷請求信號,讀取鍵值后,中斷信號就會自動撤銷。但是我在電路圖的設(shè)計中用的是int非,即要求的是高電平的中斷請求信號,所以按鍵時數(shù)碼管不顯示。2. 按一次鍵一下子就顯示了好多個在獲取鍵值函數(shù)中添加了判斷按鍵松開的語句,最后發(fā)現(xiàn)這個模塊基本就成功了。 六、心得體會具有良好的職
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 旅館業(yè)數(shù)字化轉(zhuǎn)型與智能化技術(shù)應(yīng)用考核試卷
- 建筑工程法律法規(guī)深度剖析考核試卷
- (完整版)協(xié)商一致解除(或終止)勞動合同協(xié)議書
- 體育經(jīng)紀(jì)人與運(yùn)動員職業(yè)風(fēng)險管理考核試卷
- 旅游業(yè)投訴處理培訓(xùn)課件
- 西安房子購買合同范本
- 金融產(chǎn)品推廣及銷售服務(wù)合同
- 電腦系統(tǒng)技術(shù)服務(wù)合同
- 養(yǎng)豬產(chǎn)業(yè)作業(yè)指導(dǎo)書
- 公司信息化建設(shè)方案設(shè)計書
- 胃腸減壓的護(hù)理查房
- 車間生產(chǎn)現(xiàn)場5S管理基礎(chǔ)知識培訓(xùn)課件
- 區(qū)域保護(hù)合同模板
- 讀《這樣教學(xué)很有效-任務(wù)驅(qū)動式課堂教學(xué)》心得體會
- DB11 945-2012 建設(shè)工程施工現(xiàn)場安全防護(hù)、場容衛(wèi)生及消防保衛(wèi)標(biāo)準(zhǔn)
- BEC商務(wù)英語初級考試歷年真題及答案6套
- 消除“艾梅乙”醫(yī)療歧視-從我做起
- 基于項目化學(xué)習(xí)的小學(xué)美術(shù)跨學(xué)科主題教學(xué)實踐研究
- GB/T 44625-2024動態(tài)響應(yīng)同步調(diào)相機(jī)技術(shù)要求
- 家具廠質(zhì)量管理體系手冊
- 《家庭教育學(xué)第2版》全套教學(xué)課件
評論
0/150
提交評論