(畢業(yè)論文)8X8_LED點(diǎn)陣顯示的設(shè)計(jì)_第1頁(yè)
(畢業(yè)論文)8X8_LED點(diǎn)陣顯示的設(shè)計(jì)_第2頁(yè)
(畢業(yè)論文)8X8_LED點(diǎn)陣顯示的設(shè)計(jì)_第3頁(yè)
(畢業(yè)論文)8X8_LED點(diǎn)陣顯示的設(shè)計(jì)_第4頁(yè)
(畢業(yè)論文)8X8_LED點(diǎn)陣顯示的設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩27頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、單片機(jī)課程設(shè)計(jì)論文設(shè)計(jì)課題:8x8 led點(diǎn)陣顯示的設(shè)計(jì)目 錄第1章 系統(tǒng)概述1. 計(jì)任務(wù)及目的2第 2章 系統(tǒng)硬件設(shè)計(jì)與分析2.1 電源電路32.2 復(fù)位電路32.3 主體電路42.4 硬件電路連線42.5 顯示部分4第3章 單片機(jī)的配置及簡(jiǎn)介3.1 單片機(jī)介紹63.2 單片機(jī)系統(tǒng)設(shè)計(jì)83.3 單片機(jī)的發(fā)展趨勢(shì)9第4章 系統(tǒng)軟件設(shè)計(jì)4.1 數(shù)字的編碼104.2 字母的編碼114.3 程序流程圖134.4 完整程序14第5章 有關(guān)軟件的介紹5.1 prote電路設(shè)計(jì)及pcb圖制作 175.2 keil c51 介紹及使用 185.3 燒錄器的使用19第6章 結(jié)束語(yǔ) 20參考文獻(xiàn) 20附圖一 原

2、理圖21附圖二 pcb圖 22第1章 系統(tǒng)概述 led點(diǎn)陣顯示系統(tǒng)中 各模塊的顯示方式有靜態(tài)和動(dòng)態(tài)顯示兩種。靜態(tài)顯示原理簡(jiǎn)單、控制方便,但硬件接線復(fù)雜, 在實(shí)際應(yīng)用中一般采用動(dòng)態(tài)顯示方式,動(dòng)態(tài)顯示采用掃描的方式工作,由峰值較大的窄脈沖驅(qū) 動(dòng),從上到下逐次不斷地對(duì)顯示屏的各行進(jìn)行選通,同時(shí)又向各列送出表示圖形或文字信息的脈沖信號(hào),反復(fù)循環(huán)以上操作,就可顯示各種圖形或文字信息。本文將介紹一種采用單片機(jī)at89s51進(jìn)行控制的8*8led點(diǎn)陣。該點(diǎn)陣可實(shí)現(xiàn)動(dòng)態(tài)顯示數(shù)字09及字符az的功能。1.1設(shè)計(jì)任務(wù)及目的利用8*8led點(diǎn)陣顯示數(shù)字09和26個(gè)英文字符的字樣。采用at89s51單片機(jī)作為整個(gè)控制

3、搭電路的核心,并編制軟件程序,實(shí)現(xiàn)動(dòng)態(tài)輪流顯示。通過此設(shè)計(jì)來(lái)鞏固單片機(jī)硬件系統(tǒng)的設(shè)計(jì)及軟件系統(tǒng)的編程,通過設(shè)計(jì)將平時(shí)所學(xué)知識(shí)付諸實(shí)踐,提高動(dòng)手能力。第2章 系統(tǒng)硬件設(shè)計(jì)與分析本系統(tǒng)從經(jīng)濟(jì)性,電路結(jié)構(gòu),系統(tǒng)性能等多方面考慮,選用如下主要元器件:?jiǎn)纹瑱C(jī)at89s51、電阻10k和100歐、三極管8550、按鈕開關(guān)、共陽(yáng)8*8led點(diǎn)陣顯示塊、穩(wěn)壓塊7805。2.1 電源電路本設(shè)計(jì)實(shí)驗(yàn)所需電源為直流五伏電壓源,采用的是固定式三端穩(wěn)壓器7805還實(shí)現(xiàn)。其線路接線圖如圖1所示:圖1 電源電路2.2 復(fù)位電路單片機(jī)在啟動(dòng)運(yùn)行時(shí)需要復(fù)位,使cpu以及其他功能部件處于一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作,

4、另外,在單片機(jī)工作過程中,如果出現(xiàn)死機(jī)時(shí),也必須對(duì)單片機(jī)進(jìn)行復(fù)位,使其重新開始工作。本設(shè)計(jì)中采用按鍵復(fù)位電路,復(fù)位電路如圖2所示:圖2 復(fù)位電路2.3 主體電路通過單片機(jī)at89s51的p0口和p1口去驅(qū)動(dòng)點(diǎn)陣led芯片塊。電路如圖3所示:圖3 主體電路2.4 硬件電路連線 1. 把“單片機(jī)系統(tǒng)”區(qū)域中的p0.0p0.7端口分別通過八個(gè)100歐電阻連接到“點(diǎn)陣模塊”區(qū)域中的“l(fā)1l8”端口上;2. 把“單片機(jī)系統(tǒng)”區(qū)域中的p1.0p1.7端口通過三極管8550和10k電阻連接到“點(diǎn)陣模塊”區(qū)域中的“s1s8”端口上。2.5 顯示部分1. 8x8點(diǎn)陣led工作原理說明圖4為88點(diǎn)陣led外觀及引

5、腳圖,其等效電路如圖(2)所示,只要其對(duì)應(yīng)的x、y軸順向偏壓,即可使led發(fā)亮。例如如果想使左上角led點(diǎn)亮,則y0=1,x0=0即可。應(yīng)用時(shí)限流電阻可以放在x軸或y軸。圖4 88點(diǎn)陣led外觀及引腳圖其等效電路圖如下:圖5 88點(diǎn)陣led等效電路2. 點(diǎn)陣led掃描法介紹點(diǎn)陣led一般采用掃描式顯示,實(shí)際運(yùn)用分為三種方式:(1)點(diǎn)掃描; (2)行掃描;(3)列掃描。若使用第一種方式,其掃描頻率必須大于1664=1024hz,周期小于1ms即可。若使用第二和第三種方式,則頻率必須大于168=128hz,周期小于7.8ms即可符合視覺暫留要求。此外一次驅(qū)動(dòng)一列或一行(8顆led)時(shí)需外加驅(qū)動(dòng)電路

6、提高電流,否則led亮度會(huì)不足。第3章 單片機(jī)的配置及簡(jiǎn)介3.1 單片機(jī)介紹所謂單片機(jī),就是將cpu,ram,rom,定時(shí)/計(jì)數(shù)器和多種i/o接口電路都集成在一塊集成芯片上的微型計(jì)算機(jī)。mcs-51系列單片機(jī)是美國(guó)intel公司在1980年推出的8位單片 微型計(jì)算機(jī) ,包含51和52兩個(gè)子系列。51子系列的典型產(chǎn)品有8031,8051和8751三種機(jī)型 52子系列包括8032,8052二種主要機(jī)型。 51子系列的配置如下:(1)8位cpu;(2)振蕩頻率1.212mhz;(3)128個(gè)字節(jié)的片內(nèi)數(shù)據(jù)存儲(chǔ)器(片內(nèi)ram);(4)21個(gè)專用寄存器;(5)4kb的片內(nèi)程序存儲(chǔ)器(8031無(wú));(6)

7、8位并行i/o口p0,p1,p2,p3;(7)一個(gè)全雙工串行i/o口;(8)2個(gè)16位定時(shí)器/計(jì)數(shù)器;(9)5個(gè)中斷源,分為2個(gè)優(yōu)先級(jí); 本系統(tǒng)選用atmel89s51系列單片機(jī),由于它的模塊化設(shè)計(jì)為適應(yīng)具體的應(yīng)用提供了極大的靈活性,便于擴(kuò)展功能,有效的提高了系統(tǒng)的經(jīng)濟(jì)性。at89s51是一種低工耗、高性能的片內(nèi)含有4kb快閃可編程/擦除只讀存儲(chǔ)器的八位cmos微控制器,使用高密度、非易失存儲(chǔ)編程器對(duì)程序存儲(chǔ)器重復(fù)編程。at89s51具有以下特點(diǎn):(1)與mcs-51微控制器產(chǎn)品系列兼容。(2)片內(nèi)有4kb可在線重復(fù)編程的快閃擦寫存儲(chǔ)器。(3)32條可編程i/o線。(4)程序存儲(chǔ)器具有三級(jí)加密

8、保護(hù)。(5)可編程全全雙工串行通道。(6)空閑狀態(tài)維持低功耗和掉電狀態(tài)保存存儲(chǔ)內(nèi)容。(7)而且與87c51系列的引腳也完全兼容。89s51單片機(jī)結(jié)構(gòu)如圖3-1所示: 圖3-1 89s51單片機(jī)結(jié)構(gòu)框圖51系列單片機(jī)的引腳功能:主電源引腳 vss、vcc vss:接地,vcc:接+5v電源外接晶振引腳 xtal1、xtal2 xtal1:片內(nèi)反向放大器輸入端,xtal2:片內(nèi)反向放大器輸出端輸入/輸出引腳 p0、p1、p2、p3p0.0p0.7:p0口的8個(gè)引腳,p0口是8位漏極開路型雙向i/0端口,在接有片外存儲(chǔ)器或i/0擴(kuò)展接口時(shí),p0.0p0.7分時(shí)復(fù)用,作低8位地址總線與雙向8位數(shù)據(jù)總線

9、p1.0p1.7:p1口的8個(gè)引腳,p1口是一個(gè)帶內(nèi)部上拉電阻的8位雙向i/o口,對(duì)于52子系列,p1.0還可用于定時(shí)器/計(jì)數(shù)器2的計(jì)數(shù)脈沖輸入端2,1.1還可作定時(shí)器/計(jì)數(shù)器2的外部控制端t2ex。p2.0p2.7:p2口的8個(gè)引腳,p2口也是一個(gè)帶內(nèi)部上拉電阻的雙向i/o口,在訪問片外存儲(chǔ)器或擴(kuò)展i/o接口時(shí),還用于提供高8位地址。p3.0p3.7:p3口的8個(gè)引腳,p3口也是一個(gè)帶上拉電阻的i/o口,除可以作雙向的輸入輸出口外,還具有第2功能。見表3-1表3-1 p3口第二功能表引腳第二功能p3.0p3.1p3.2p3.3p3.4p3.5p3.6p3.7rxd(串行口輸入)txd(串行口

10、輸出)int0(外部中斷0輸入)int1(外部中斷1輸入)t0(定時(shí)器0的外部中斷)t1(定時(shí)器1的外部中斷)wr(片外數(shù)據(jù)存儲(chǔ)器寫控制信號(hào))rd(片外數(shù)據(jù)存儲(chǔ)器讀控制信號(hào))控制線(4條):ale/prog:雙功能引腳。由于p0口的8個(gè)引腳是低8位地址總線與數(shù)據(jù)總線分時(shí)復(fù)用,因此必須將p0口輸出的低8位地址進(jìn)行鎖存。在訪問片外存儲(chǔ)器時(shí),每機(jī)器周期該信號(hào)出現(xiàn)2次。其下降沿用于控制鎖存p0口輸出的低8 位地址。即使不訪問片外存儲(chǔ)器,該引腳上仍出現(xiàn)上述頻率的周期性信號(hào),因此也可作為對(duì)外輸出的時(shí)鐘脈沖,頻率為振蕩器頻率的1/6,必須注意的是:在訪問片內(nèi)外存儲(chǔ)器時(shí),ale脈沖會(huì)跳空1個(gè)。對(duì)片內(nèi)含有epr

11、om的機(jī)型,此引腳在編程時(shí)可作為編程脈沖prog的輸入端。 psen: 片外程序存儲(chǔ)器讀選通信號(hào)輸出端,在cpu從片外程序存儲(chǔ)器取指期間,此信號(hào)每個(gè)機(jī)器周期兩次有效,以通過p0口讀入指令,在訪問片外數(shù)據(jù)存儲(chǔ)器時(shí),該信號(hào)不出現(xiàn)。ea/vpp: 雙功能引腳,為片外程序存儲(chǔ)器選用端。當(dāng)該引腳信號(hào)有效時(shí),選擇片外程序存儲(chǔ)器,即ea/vpp=1時(shí),訪問片內(nèi)程序存儲(chǔ)器。 對(duì)片內(nèi)含有eprom的機(jī)型,此引腳在編程期間用于施加+21v的編程電壓。rst/vpo: 雙功能引腳,在單片機(jī)工作期間,當(dāng)此引腳上出現(xiàn)連接2個(gè)機(jī)器周期的高電平時(shí)可實(shí)現(xiàn)復(fù)位操作。 在vcc掉電期間,若該引腳接備用電源(+5v),可向片內(nèi)ra

12、m供電,以保存片內(nèi)ram中的信息。3.2 單片機(jī)系統(tǒng)設(shè)計(jì)按照單片機(jī)系統(tǒng)擴(kuò)展與系統(tǒng)配置狀況,單片機(jī)應(yīng)用系統(tǒng)可分為最小系統(tǒng)、最小功耗系統(tǒng)和典型應(yīng)用系統(tǒng)等。(1)最小應(yīng)用系統(tǒng):能維持單片機(jī)運(yùn)行的最簡(jiǎn)單配置的系統(tǒng)。這種系統(tǒng)成本低廉、結(jié)構(gòu)簡(jiǎn)單,常常構(gòu)成一些簡(jiǎn)單的控制系統(tǒng),如開關(guān)狀態(tài)的輸入/輸出控制等。對(duì)于片內(nèi)有rom/eprom/flash ram的單片機(jī),構(gòu)成最小應(yīng)用系統(tǒng)時(shí),只要將單片機(jī)接上時(shí)鐘電路、復(fù)位電路和電源即可,如圖3-2(a)所示。xtal1 p2.72.0xtal2 89s51 rst ale p0.70.0地址鎖存epromxtal1 p0 p1xtal2 p2 p3rst 89s51

13、圖3-2 89s51單片機(jī)最小應(yīng)用系統(tǒng)由于集成度的限制,這種最小應(yīng)用系統(tǒng)只能用作一些小型的控制單元。其應(yīng)用特點(diǎn)是:有可供用戶使用的大量i/o口線,p0、p1、p2、p3都可用作用戶i/o口用。由于沒有外部存儲(chǔ)器擴(kuò)展,應(yīng)接高電平。內(nèi)部存儲(chǔ)器容量有限(只有4kb地址空間)。應(yīng)用系統(tǒng)開發(fā)具有特殊性。由于這類應(yīng)用系統(tǒng)應(yīng)用程序量不大,外電路簡(jiǎn)單,因而采用模擬開發(fā)手段較好。對(duì)于片內(nèi)無(wú)rom/eprom/flash ram的單片機(jī),其最小系統(tǒng)除了外部配置時(shí)鐘電路、復(fù)位電路和電源外,還應(yīng)在片外擴(kuò)展eprom、eeprom作為程序存儲(chǔ)器用,如圖3(b)所示,應(yīng)接地。(2)最小功耗應(yīng)用系統(tǒng)最小功耗應(yīng)用系統(tǒng)是指為了

14、保證正常運(yùn)行,系統(tǒng)的功率消耗最小。這是單片機(jī)應(yīng)用系統(tǒng)中的一個(gè)引人入目的構(gòu)成方式。在單片機(jī)芯片結(jié)構(gòu)設(shè)計(jì)時(shí),一般為構(gòu)成最小功耗應(yīng)用系統(tǒng)提供了必要條件,例如,各種系列的單片機(jī)都有cmos工藝類型,而且在這類單片機(jī)中都設(shè)置了低功耗運(yùn)行的wait和stop方式。設(shè)計(jì)最小功耗應(yīng)用系統(tǒng)時(shí),必須使系統(tǒng)內(nèi)的所有器件、外設(shè)都有最小的功耗,而且能充分運(yùn)用wait和stop方式運(yùn)行。最小功耗應(yīng)用系統(tǒng)常用在一些袖珍式智能儀表、野外工作儀表以及在無(wú)源網(wǎng)絡(luò)、接口中的單片機(jī)工作子站。3.3 單片機(jī)的發(fā)展趨勢(shì)今后單片機(jī)的發(fā)展趨勢(shì),將是進(jìn)一步向著多功能、高性能、高速度、低功耗、低價(jià)格、存儲(chǔ)容量擴(kuò)大和增強(qiáng)i/o功能及結(jié)構(gòu)兼容等方面

15、發(fā)展。其發(fā)展趨勢(shì)主要有以下幾個(gè)方面:1. 多功能 在單片機(jī)中盡可能多地把應(yīng)用所需的存儲(chǔ)器、各種功能的i/o口都集成在一塊芯片內(nèi),使單片機(jī)的功能更加強(qiáng)大。如把led、lcd或vfd顯示驅(qū)動(dòng)器也開始集成在8位單片機(jī)中。2. 高性能 進(jìn)一步改進(jìn)cpu的性能,加快指令運(yùn)算的速度和提高系統(tǒng)控制的可靠性,采用精簡(jiǎn)指令系統(tǒng)計(jì)算機(jī)risc(reduced instruction set computer)結(jié)構(gòu)和流水線技術(shù),大幅度提高運(yùn)行速度?,F(xiàn)指令速度最高者已達(dá)100mips(million instruction per seconds,即兆指令每秒),并加強(qiáng)了位處理功能、中斷和定時(shí)控制功能,使單片機(jī)的性能

16、明顯地優(yōu)于同類型的微處理器。單片機(jī)集成度進(jìn)步提高,有的單片機(jī)的尋址能力已突破64 kb的限制,8位、16位的單片機(jī)有的尋址能力已達(dá)到1 mb和16 mb。片內(nèi)rom的容量可達(dá)64 kb,ram的容量可達(dá)2 kb。3. 低電壓、低功耗 允許使用的電壓范圍越來(lái)越寬,一般在36v范圍內(nèi)工作,有的已能在1.2v或0.9v電壓下工作。幾乎所有的單片機(jī)都具有省電運(yùn)行方式。單片機(jī)的功耗已從ma級(jí)降到a級(jí),甚至1a以下,在一粒鈕扣電池下就可長(zhǎng)期工作。低功耗化的效應(yīng)不僅是功耗低,而且?guī)?lái)了產(chǎn)品的高可靠性、高抗干擾能力以及產(chǎn)品的便攜化。4. 低價(jià)格 單片機(jī)應(yīng)用的另一顯著特點(diǎn)是量大面廣。促使世界各國(guó)公司在提高單片機(jī)

17、性能的同時(shí),也十分注意降低價(jià)格。如z-8系列的z8600、80c51系列的80c31每片僅售1-1.5美元。提高性能價(jià)格比是各公司競(jìng)爭(zhēng)的主要策略和不懈追求的目標(biāo)。第4章 系統(tǒng)軟件設(shè)計(jì)利用數(shù)組將各數(shù)字字符的編碼存放在寄存器中,在執(zhí)行顯示過程中從寄存器中將對(duì)應(yīng)數(shù)字或字符編碼的數(shù)組一一輪流調(diào)出即可實(shí)現(xiàn)動(dòng)態(tài)。4.1數(shù)字的編碼各個(gè)數(shù)字對(duì)應(yīng)的編碼如下:0x0c,0x12,0x12,0x12,0x12,0x12,0x0c,0x00,/*0,0*/ /顯示數(shù)字0/0x04,0x06,0x04,0x04,0x04,0x04,0x0e,0x00,/*1,1*/ /顯示數(shù)字1/0x0c,0x12,0x10,0x08

18、,0x04,0x02,0x1e,0x00,/*2,2*/ /顯示數(shù)字2/0x0c,0x12,0x10,0x0c,0x10,0x12,0x0c,0x00,/*3,3*/ /顯示數(shù)字3/0x08,0x0c,0x0c,0x0a,0x0a,0x1e,0x08,0x00,/*4,4*/ /顯示數(shù)字4/0x1e,0x02,0x02,0x0e,0x10,0x10,0x0e,0x00,/*5,5*/ /顯示數(shù)字5/0x0c,0x12,0x02,0x0e,0x12,0x12,0x0c,0x00,/*6,6*/ /顯示數(shù)字6/0x1e,0x12,0x10,0x08,0x04,0x04,0x04,0x00,/*7,

19、7*/ /顯示數(shù)字7/0x0c,0x12,0x12,0x0c,0x12,0x12,0x0c,0x00,/*8,8*/ /顯示數(shù)字8/0x0c,0x12,0x12,0x1c,0x10,0x12,0x0c,0x00,/*9,9*/ /顯示數(shù)字9/4.2字母的編碼各個(gè)字母所對(duì)應(yīng)的編碼如下:0x0c,0x12,0x12,0x12,0x1e,0x12,0x12,0x00,/*a,0*/ /顯示字母a/0x0e,0x12,0x12,0x0e,0x12,0x12,0x0e,0x00,/*b,1*/ /顯示數(shù)字b/0x0c,0x12,0x02,0x02,0x02,0x12,0x0c,0x00,/*c,2*/

20、/顯示數(shù)字c/0x0e,0x12,0x12,0x12,0x12,0x12,0x0e,0x00,/*d,3*/ /顯示數(shù)字d/0x1e,0x02,0x02,0x0e,0x02,0x02,0x1e,0x00,/*e,4*/ /顯示數(shù)字e/0x1e,0x02,0x02,0x0e,0x02,0x02,0x02,0x00,/*f,5*/ /顯示數(shù)字f/0x0c,0x12,0x02,0x1a,0x12,0x12,0x0c,0x00,/*g,6*/ /顯示數(shù)字g/0x12,0x12,0x12,0x1e,0x12,0x12,0x12,0x00,/*h,7*/ /顯示數(shù)字h/ 0x0e,0x04,0x04,0x

21、04,0x04,0x04,0x0e,0x00,/*i,8*/ /顯示數(shù)字i/0x10,0x10,0x10,0x10,0x12,0x12,0x0c,0x00,/*j,9*/ /顯示數(shù)字j/0x12,0x12,0x0a,0x06,0x0a,0x12,0x12,0x00,/*k,10*/ /顯示數(shù)字k/0x02,0x02,0x02,0x02,0x02,0x02,0x1e,0x00,/*l,11*/ /顯示數(shù)字l/0x12,0x1e,0x1e,0x12,0x12,0x12,0x12,0x00,/*m,12*/ /顯示數(shù)字m/0x12,0x16,0x16,0x1a,0x1a,0x12,0x12,0x00

22、,/*n,13*/ /顯示數(shù)字n/0x1e,0x12,0x12,0x12,0x12,0x12,0x1e,0x00,/*o,14*/ /顯示數(shù)字o/0x0e,0x12,0x12,0x0e,0x02,0x02,0x02,0x00,/*p,15*/ /顯示數(shù)字p/0x0c,0x12,0x12,0x12,0x16,0x1a,0x1c,0x00,/*q,16*/ /顯示數(shù)字q/0x0e,0x12,0x12,0x0e,0x06,0x0a,0x12,0x00,/*r,17*/ /顯示數(shù)字r/0x0c,0x12,0x02,0x0c,0x10,0x12,0x0c,0x00,/*s,18*/ /顯示數(shù)字s/0x1

23、e,0x04,0x04,0x04,0x04,0x04,0x04,0x00,/*t,19*/ /顯示數(shù)字t/0x12,0x12,0x12,0x12,0x12,0x12,0x0c,0x00,/*u,20*/ /顯示數(shù)字u/0x12,0x12,0x12,0x12,0x0c,0x0c,0x0c,0x00,/*v,21*/ /顯示數(shù)字v/0x12,0x12,0x12,0x12,0x1e,0x1e,0x12,0x00,/*w,22*/ /顯示數(shù)字w/0x12,0x12,0x0c,0x0c,0x0c,0x12,0x12,0x00,/*x,23*/ /顯示數(shù)字x/0x11,0x11,0x0a,0x04,0x0

24、4,0x04,0x04,0x00,/*y,24*/ /顯示數(shù)字y/0x1e,0x10,0x08,0x0c,0x04,0x02,0x1e,0x00,/*z,25*/ /顯示數(shù)字z/tho ,tlo裝入初值開始4.3 程序流程圖調(diào)用數(shù)組賦給p0cnta+cntb+tr0置1 啟動(dòng)t0tmod初始化tf0=1嗎?有復(fù)位鍵按下?tf0=0nyycnta=8?nyncntb=57?y4.4 完整程序#include at89s51.hunsigned char code tab=0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f;unsigned char code digi

25、ttab8=0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,/* ,0*/0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,/* ,0*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,/*_,0*/0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,/*_,0*/0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,/*_,0*/0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,/*_,0*/0x00,0x00,0x

26、00,0xff,0xff,0xff,0xff,0xff,/*_,0*/0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,/*_,0*/0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,/*_,0*/0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,/*_,0*/0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,/*|,0*/0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,/*|,0*/0x04,0x04,0x04,0x04,0x04,0x04,

27、0x04,0x04,/*|,0*/0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,/*|,0*/0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,/*|,0*/0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,/*|,0*/0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,/*|,0*/0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,/*|,0*/0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,/* ,0*/0

28、x08,0x3e,0x7f,0x24,0x1a,0x49,0x78,0x00,/*老,0*/ 0x72,0x24,0xfe,0xae,0xee,0x24,0x22,0x21,/*師,0*/0x0a,0xea,0x9f,0xfa,0x4a,0x44,0x6a,0x51,/*好,0*/0x0c,0x12,0x12,0x12,0x12,0x12,0x0c,0x00,/*0,0*/0x04,0x06,0x04,0x04,0x04,0x04,0x0e,0x00,/*1,1*/0x0c,0x12,0x10,0x08,0x04,0x02,0x1e,0x00,/*2,2*/0x0c,0x12,0x10,0x0

29、c,0x10,0x12,0x0c,0x00,/*3,3*/0x08,0x0c,0x0c,0x0a,0x0a,0x1e,0x08,0x00,/*4,4*/0x1e,0x02,0x02,0x0e,0x10,0x10,0x0e,0x00,/*5,5*/0x0c,0x12,0x02,0x0e,0x12,0x12,0x0c,0x00,/*6,6*/0x1e,0x12,0x10,0x08,0x04,0x04,0x04,0x00,/*7,7*/0x0c,0x12,0x12,0x0c,0x12,0x12,0x0c,0x00,/*8,8*/0x0c,0x12,0x12,0x1c,0x10,0x12,0x0c,0

30、x00,/*9,9*/0x0c,0x12,0x12,0x12,0x1e,0x12,0x12,0x00,/*a,0*/0x0e,0x12,0x12,0x0e,0x12,0x12,0x0e,0x00,/*b,1*/0x0c,0x12,0x02,0x02,0x02,0x12,0x0c,0x00,/*c,2*/0x0e,0x12,0x12,0x12,0x12,0x12,0x0e,0x00,/*d,3*/0x1e,0x02,0x02,0x0e,0x02,0x02,0x1e,0x00,/*e,4*/0x1e,0x02,0x02,0x0e,0x02,0x02,0x02,0x00,/*f,5*/0x0c,0x

31、12,0x02,0x1a,0x12,0x12,0x0c,0x00,/*g,6*/0x12,0x12,0x12,0x1e,0x12,0x12,0x12,0x00,/*h,7*/0x0e,0x04,0x04,0x04,0x04,0x04,0x0e,0x00,/*i,8*/0x10,0x10,0x10,0x10,0x12,0x12,0x0c,0x00,/*j,9*/0x12,0x12,0x0a,0x06,0x0a,0x12,0x12,0x00,/*k,10*/0x02,0x02,0x02,0x02,0x02,0x02,0x1e,0x00,/*l,11*/0x12,0x1e,0x1e,0x12,0x1

32、2,0x12,0x12,0x00,/*m,12*/0x12,0x16,0x16,0x1a,0x1a,0x12,0x12,0x00,/*n,13*/0x1e,0x12,0x12,0x12,0x12,0x12,0x1e,0x00,/*o,14*/0x0e,0x12,0x12,0x0e,0x02,0x02,0x02,0x00,/*p,15*/0x0c,0x12,0x12,0x12,0x16,0x1a,0x1c,0x00,/*q,16*/0x0e,0x12,0x12,0x0e,0x06,0x0a,0x12,0x00,/*r,17*/0x0c,0x12,0x02,0x0c,0x10,0x12,0x0c,

33、0x00,/*s,18*/0x1e,0x04,0x04,0x04,0x04,0x04,0x04,0x00,/*t,19*/0x12,0x12,0x12,0x12,0x12,0x12,0x0c,0x00,/*u,20*/0x12,0x12,0x12,0x12,0x0c,0x0c,0x0c,0x00,/*v,21*/0x12,0x12,0x12,0x12,0x1e,0x1e,0x12,0x00,/*w,22*/0x12,0x12,0x0c,0x0c,0x0c,0x12,0x12,0x00,/*x,23*/0x11,0x11,0x0a,0x04,0x04,0x04,0x04,0x00,/*y,24*

34、/0x1e,0x10,0x08,0x0c,0x04,0x02,0x1e,0x00,/*z,25*/;unsigned int timecount;unsigned char cnta;unsigned char cntb;void main(void) tmod=0x01; th0=(65536-3000)/256; tl0=(65536-3000)%256; tr0=1; et0=1; ea=1; while(1) ; void t0(void) interrupt 1 using 0 th0=(65536-2000)/256; tl0=(65536-2000)%256; p1=0xff;

35、/消除顯示重影問題 p0=digittabcntbcnta; p1=(0x01cnta); cnta+; if(cnta=8) cnta=0; timecount+; if(timecount=500) timecount=0; cntb+; if(cntb=57) cntb=0; 第5章 有關(guān)軟件的介紹5.1 protel電路設(shè)計(jì)及pcb圖制作protel99se是桌面環(huán)境下第一個(gè)以設(shè)計(jì)管理和協(xié)作技術(shù)為核心的全方位印刷電路板設(shè)計(jì)系統(tǒng),它集強(qiáng)大的設(shè)計(jì)能力,復(fù)雜工藝的可生產(chǎn)性和設(shè)計(jì)過程管理于一體,可完整實(shí)現(xiàn)電子產(chǎn)品從概念設(shè)計(jì)到生成物理生產(chǎn)數(shù)據(jù)的全過程,以及中間的所有分析,仿真和驗(yàn)證。整個(gè)過程包括

36、以下幾個(gè)步驟:(1)構(gòu)想電路模型(2)設(shè)計(jì)電路原理圖(3)校對(duì)后輸出原理圖(4)產(chǎn)生網(wǎng)絡(luò)表(5)設(shè)計(jì)印刷電路板(6)檢查后輸出pcb板圖 圖5-1 protel設(shè)計(jì)流程圖1. 原理圖設(shè)計(jì)先進(jìn)入protel99se主界面。執(zhí)行file/new命令,進(jìn)入一個(gè)新的項(xiàng)目設(shè)計(jì),新建一個(gè)設(shè)計(jì)管理數(shù)據(jù)庫(kù)文件。在document 下新建一個(gè)原理圖文件然后進(jìn)入編輯窗口,進(jìn)行原理圖的設(shè)計(jì)與編輯。本設(shè)計(jì)繪制好的原理圖見附錄所示。在調(diào)用元器件時(shí),如果需要用到一些現(xiàn)存庫(kù)中沒有的元件,要對(duì)原理圖設(shè)計(jì)軟件包中的庫(kù)做些補(bǔ)充,添加一些新的元件。以使原理圖上的所有元件都能在庫(kù)中找到。繪制完原理圖需要對(duì)各個(gè)元件進(jìn)行封裝,一般器件封

37、裝庫(kù)內(nèi)都有相應(yīng)的封裝,沒有適當(dāng)?shù)姆庋b時(shí)應(yīng)當(dāng)自己進(jìn)行封裝圖設(shè)計(jì),并將該封裝圖設(shè)計(jì)調(diào)入封裝庫(kù)中,以便自己對(duì)元器件封裝時(shí)可以用到。然后對(duì)所設(shè)計(jì)的電路圖進(jìn)行erc檢查,不通過檢查的話根據(jù)提示進(jìn)行修改,例如沒有接好線,封裝不當(dāng),引腳定義設(shè)定不正確等。如果通過erc檢查,則可以執(zhí)行design/create netlist命令生成網(wǎng)絡(luò)表。2. pcb圖制作對(duì)原理圖生成網(wǎng)絡(luò)表后,就可以在pcb編輯環(huán)境下進(jìn)行pcb圖的設(shè)計(jì)與編輯了,在pcb環(huán)境下導(dǎo)入網(wǎng)絡(luò)表,這時(shí)在pcb設(shè)計(jì)界面內(nèi)將出現(xiàn)所有器件的封裝圖,將所有的元件拖入布線區(qū)進(jìn)行手動(dòng)布局,布局之后設(shè)定好連線寬度,單面或雙面板設(shè)定(本設(shè)計(jì)僅需要單面板即可完成設(shè)計(jì)

38、)等設(shè)定布線規(guī)則后再keepout layer將所有器件框在內(nèi),然后在bottom layer進(jìn)行連線。一般使用auto route命令進(jìn)行進(jìn)行自動(dòng)布線了,自動(dòng)布線之后再進(jìn)行手工的修改。3. 印制板的制作用轉(zhuǎn)印紙打印出pcb圖,將pcb圖熨燙到電路板上,熨燙時(shí)要注意受熱均勻完整,然后用三氯化鐵溶液腐蝕電路板,為加快速度可以加少量熱水和適當(dāng)?shù)倪M(jìn)行晃動(dòng);用天那水把油墨洗干凈,最后焊接元件。焊接前涂上酒精松香溶液,以便到時(shí)候焊接板子更容易和防止銅線被腐蝕。制作好電路板以后要仔細(xì)檢查電路,看看有沒有虛焊、漏焊、短路、斷路等等常見問題,為以后的總體調(diào)試打好基礎(chǔ)。5.2 keil c51 介紹及使用本設(shè)計(jì)

39、中源程序程序的編寫與調(diào)試是在keil c51集成環(huán)境uvision中進(jìn)行的。keil c51是美國(guó)keil software公司出品的51系列兼容單片機(jī)c語(yǔ)言軟件開發(fā)系統(tǒng),與匯編相比,c語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。keil c51軟件提供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全windows界面,界面友好,操作簡(jiǎn)單。另外重要的一點(diǎn)是只要看一下編譯后生成的匯編代碼,就能體會(huì)到keil c51生成的目標(biāo)代碼效率非常之高,多數(shù)語(yǔ)句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語(yǔ)言的優(yōu)勢(shì)。(1)建立一個(gè)新的工程::單擊“ptoject”菜單,在

40、彈出的下拉菜單中選擇“new project”選項(xiàng)。然后選擇你要保存的路徑,輸入工程的名字然后點(diǎn)擊保存。這時(shí)會(huì)彈出一個(gè)對(duì)話框,要求你選擇單片機(jī)的型號(hào),根據(jù)你所用的單片機(jī)來(lái)選擇,keil c51幾乎支持所有的51內(nèi)核的單片機(jī),在本設(shè)計(jì)中選擇的是at89s51。(2)編寫程序:?jiǎn)螕簟癴ile”菜單,在下拉菜單中選擇“new”,這時(shí)編輯窗口會(huì)出現(xiàn)一個(gè)text1窗口,光標(biāo)在該窗口中閃爍,首先保存該空白文檔,單擊菜單上的“file”, 在彈出的下拉菜單中選擇“save as”選項(xiàng),在出現(xiàn)的對(duì)話框中鍵入欲使用的文件名并同時(shí)鍵入正確的后綴名(本設(shè)計(jì)中為.asm),然后保存?;氐骄庉嫿缑婧螅瑔螕簟皌arget

41、 1”前面的“+”,然后在“source group 1”上單擊右鍵,在彈出菜單中選擇“add files to group source group 1”,選中設(shè)計(jì)所需要的源程序文件,然后單擊“add”,這時(shí)注意到“source group 1”文件夾中多了若干個(gè)子項(xiàng),子項(xiàng)的多少跟所增加的源程序的多少相同。這時(shí)就可以鍵入應(yīng)用程序了。keil c51 會(huì)自動(dòng)識(shí)別關(guān)鍵字,并以不同的顏色提醒用戶加以注意,這樣會(huì)使用戶少犯錯(cuò)誤,有利于提高編程效率。(3) 編譯并生成hex文件:程序編寫完成以后,單擊“ptoject”菜單,在下拉菜單中選擇“built target”選項(xiàng),或者使用快捷鍵f7。編譯成功

42、后右擊“target 1”在彈出菜單中選擇“options for target target 1”,在彈出的對(duì)話框中選擇“output”選項(xiàng)中的“creat hex file”選項(xiàng)使程序編譯后產(chǎn)生hex代碼,供下載器軟件使用。5.3 燒錄器的使用本設(shè)計(jì)中程序是用easy 51pro編程器燒寫的。easy 51pro編程器是一款操作簡(jiǎn)單、容易自制、容易擴(kuò)充、非常穩(wěn)定、靈活的isp編程器。它支持hex文件,有重載的文件對(duì)話框,讓你不必到處去找文件而且有熱鍵支持,讓我們調(diào)試程序時(shí)效率更高。接好編程器的硬件電路后,在最上方選擇你要編程的器件后點(diǎn)擊“檢測(cè)器件”,如果檢測(cè)到了器件,左邊的狀態(tài)欄就會(huì)顯示“

43、檢測(cè)到器件”并顯示該器件的rom與編程電壓的大小特性。檢測(cè)到器件以后單擊“操作”中的“自動(dòng)打開文件”選項(xiàng),在彈出的對(duì)話框中打開要燒錄的程序的hex文件,然后單擊“自動(dòng)完成”選項(xiàng),燒寫完畢后如果顯示“0個(gè)單元不對(duì)”就說明程序燒寫成功了。當(dāng)然在燒錄過程中會(huì)碰到一些問題,比如檢測(cè)器件時(shí),時(shí)有時(shí)無(wú),這是下載線不穩(wěn)定的表現(xiàn),如果不能檢測(cè)到器件,但是卻可以正常讀寫,并且效驗(yàn)無(wú)誤,這個(gè)就是單片機(jī)的問題了,可能單片機(jī)已經(jīng)壞了,如果寫器件時(shí)總是寫到某個(gè)地址就停頓,然后報(bào)告失敗;或者可以順利寫完,但效驗(yàn)時(shí)顯示有單元不正確,最可能的原因是電源不穩(wěn)定,電纜太長(zhǎng),線路沒焊好,器件質(zhì)量問題等,也可能與電腦性能有關(guān),特別是

44、開啟了很多程序的時(shí)候。當(dāng)遇到問題的時(shí)候就要根據(jù)這些來(lái)判斷問題的根源并想辦法解決,這樣程序燒寫就沒有問題了。第6章 結(jié)束語(yǔ)本文詳細(xì)介紹了基于單片機(jī)控制的8*8led點(diǎn)陣顯示字形的設(shè)計(jì),其基本思路比較簡(jiǎn)單,文中分別介紹了其系統(tǒng)硬件的設(shè)計(jì)和軟件程序的設(shè)計(jì)。通過自身的努力,本次設(shè)計(jì)算是圓滿成功,但是限于時(shí)間和條件方面的限制,還存在一些不足之處,有待進(jìn)一步完善。本次設(shè)計(jì)經(jīng)近一周,在老師同學(xué)的指導(dǎo)下,我查閱了許多相關(guān)資料,綜合運(yùn)用了大學(xué)中所學(xué)相關(guān)知識(shí),基本上完成了點(diǎn)陣顯示字形的設(shè)計(jì)。在此之間,也遇到了許多難題,通過自學(xué)、請(qǐng)教老師、請(qǐng)教同學(xué)、耐心思考、上網(wǎng)查詢等方式,終于解決了一個(gè)又一個(gè)難題,完成了設(shè)計(jì)。此

45、過程中,我受益頗豐。參考文獻(xiàn) :1劉瑞新主編、單片機(jī)原理及應(yīng)用教程,北京:機(jī)械工業(yè)出版社,2006.72.徐士良編著、c語(yǔ)言程序設(shè)計(jì)教程,北京:人民郵電出版社,2003年8月第二版3.陳明義主編、電子技術(shù)課程設(shè)計(jì)實(shí)用教程s 2002年05第1版.4高鵬主編、protel實(shí)用教程s 1999年第1版.5陸坤等、 電子設(shè)計(jì)技術(shù). s 成都:電子科技大學(xué)出版社,19976. 彭介華主編 蔡明生等編,電子技術(shù)課程設(shè)計(jì)指導(dǎo),索書號(hào):tn/53 出版日期:1997年10月第1版.7及力主編、protel 99 se原理圖與pcb設(shè)計(jì)教程,北京:電子工業(yè)出版社,2004.1附錄一:原理圖附錄二:pcb圖in

46、clude#include#define uint unsigned int#define uchar unsigned charuchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;unsigned char code tabp0=0x00,0x00,0x7c,0x82,0x82,0x82,0x7c,0x00, 0x00,0x00,0x00,0x00,0x84,0xfe,0x80,0x00, 0x00,0x00,0xe4,0xa2,0xa2,0xa2,0

47、x9c,0x00, 0x00,0x00,0x44,0x92,0x92,0x92,0x6c,0x00, 0x00,0x00,0x30,0x28,0x24,0xfe,0x20,0x00, 0x00,0x00,0x5e,0x92,0x92,0x92,0x62,0x00, 0x00,0x00,0x7c,0x92,0x92,0x92,0x64,0x00, 0x00,0x00,0x02,0x02,0x02,0xf2,0x0e,0x00, 0x00,0x00,0x6c,0x92,0x92,0x92,0x6c,0x00, 0x00,0x00,0x4c,0x92,0x92,0x92,0x6c,0x00;unsi

48、gned char code tabp2=0xfe,0xfd,0x0fb,0xf7,0xef,0x0df,0xbf,0x7f;unsigned char code tabp0s=0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80;unsigned char code tabp2s=0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd7,0x97,0x51,0x17,0xef,0x01,0xef,0xef,0xff,0xff,0xff,0xef,0xff,0x07,0xf7,0xf7,0xf7,0xfb,0xfd,0xff,0xff,0xff, 0xef,0xef,0x01,0xef,0xd7,0xbb,0x7d,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff;unsigned char code tabp0z=0x00,0x00

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論