基于單片機(jī)的電子廣告屏_第1頁
基于單片機(jī)的電子廣告屏_第2頁
基于單片機(jī)的電子廣告屏_第3頁
基于單片機(jī)的電子廣告屏_第4頁
基于單片機(jī)的電子廣告屏_第5頁
已閱讀5頁,還剩24頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、濟(jì)源職業(yè)技術(shù)學(xué)院濟(jì)源職業(yè)技術(shù)學(xué)院 畢畢 業(yè)業(yè) 設(shè)設(shè) 計計題目 基于單片機(jī)的電子廣告屏 系別專業(yè)班級姓名學(xué)號指導(dǎo)教師日期I設(shè)計任務(wù)書設(shè)計題目:設(shè)計題目:基于單片機(jī)的電子廣告屏設(shè)計要求:設(shè)計要求:1.在點陣模塊上顯示,每屏幕顯示四個字。2.在屏幕上顯示“濟(jì)源職業(yè)技術(shù)學(xué)院電氣自動化專業(yè)。 。 。 。 。 。 。 。 。制作” 。3.讓“濟(jì)源職業(yè)技術(shù)學(xué)院電氣自動化專業(yè)。 。 。 。 。 。制作” 移動循環(huán)顯示。設(shè)計進(jìn)度要求:設(shè)計進(jìn)度要求:第一周:在老師的指引下自選設(shè)計題目,指導(dǎo)老師對設(shè)計題目進(jìn)行大致講解;第二周:查資料,收集信息,寫出初步設(shè)計方案;第三周:硬件電路設(shè)計; 第四周:流程圖的設(shè)計、程序設(shè)計

2、;第五周:程序設(shè)計,并在 PROTEUS 中進(jìn)行仿真調(diào)試;第六周:在 PROTEUS 中進(jìn)行仿真調(diào)試;第七周:撰寫設(shè)計論文。第八周:指導(dǎo)老師對設(shè)計報告進(jìn)行檢查、修改,設(shè)計論文定稿,準(zhǔn)備答辯。 指導(dǎo)教師(簽名):指導(dǎo)教師(簽名): 濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計目 錄摘 要.1 總體方案設(shè)計.12 系統(tǒng)硬件設(shè)計.22.1 元件的選用.22.2 單片機(jī) AT89S51.22.3 點陣模塊.52.4 譯碼器 74HC154.62.5 集成電路 74HC595.73 系統(tǒng)軟件設(shè)計.103.1 系統(tǒng)軟件設(shè)計思路.103.2 系統(tǒng)程序設(shè)計.104 調(diào)試與仿真.154.1 偉幅仿真軟件.154.2 PROTEUS

3、仿真軟件.164.3 字模軟件.21致 謝.24參考文獻(xiàn).25濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計摘 要LED 顯示即為發(fā)光二極管顯示,具有顯示醒目、成本低、配置靈活、接口方便等特點。目前,LED 點陣顯示器應(yīng)用十分廣泛,如廣告活動字幕機(jī),股票顯示屏,活動布告欄等。本設(shè)計的主要內(nèi)容是漢字滾動 LED 點陣顯示的設(shè)計,以實現(xiàn)設(shè)定漢字的滾動顯示控制并進(jìn)行軟硬件交互仿真,即主要包括硬件設(shè)計和軟件設(shè)計與分析和軟、硬件交互仿真幾個環(huán)節(jié)。軟件設(shè)計與分析環(huán)節(jié)中分析掌握硬件電路,熟悉 LED 點陣顯示、綜合 89S51 單片機(jī)的原理及特點,掌握字模軟件取模方法,通過修改單片機(jī)程序控制顯示漢字的滾動內(nèi)容,實現(xiàn)循環(huán)顯示或單次

4、顯示,保證顯示的穩(wěn)定性和完整性,完成“濟(jì)源職業(yè)技術(shù)學(xué)院電氣自動化技術(shù)專業(yè)王爽制作”21 個字從屏幕中滾進(jìn)左邊之后,右邊再次出現(xiàn)第一個字等滾動顯示控制。軟、硬件交互仿真環(huán)節(jié)主要指將相應(yīng)軟件設(shè)計環(huán)節(jié)所得程序?qū)氲?Proteus 仿真環(huán)境中進(jìn)行調(diào)試,以實現(xiàn)字符的滾動顯示,并向左移動循環(huán)顯示的效果。關(guān)鍵詞:點陣顯示,AT89S51 芯片,Proteus 軟件,字模庫濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計11 總體方案設(shè)計硬件電路由 AT89S51 單片機(jī)、點陣顯示電路、驅(qū)動電路、晶振電路和復(fù)位電路等幾部分組成。使用四個 88LED 點陣可構(gòu)成一個 1616 的 LED 點陣,可由單片機(jī)控制譯碼器 74HC154

5、輸出控制行,列由集成電路 74HC595 串入并出構(gòu)成列驅(qū)動電路,單片機(jī)的 P1 口輸出 LED 的行并控制寄存器的移位。在單片機(jī)中寫入正確的程序后會在顯示模塊上顯示“濟(jì)源職業(yè)技術(shù)學(xué)院電氣自動化技術(shù)專業(yè)王爽制作”并且向左移動循環(huán)顯示的效果,電路如圖 1.1 所示。圖 1.1 設(shè)計原理圖單片機(jī)的主要功能是:存儲程序、對存儲程序進(jìn)行相應(yīng)的處理并從 I/O 口輸出。復(fù)位電路:在單片機(jī)上有一輸入復(fù)位引腳 RST,外部用電容和電阻控制 RST。晶振電路:是時鐘電路的外接部分,為單片機(jī)提供時鐘信號。時鐘周期就是單片機(jī)外接晶振的倒數(shù)。驅(qū)動電路:由于顯示電路部分發(fā)光二極管比較多,而單片機(jī)所提供的+5V 電源不

6、足矣帶動,所以要用三極管放大信號。顯示電路:用以實現(xiàn)漢字顯示的結(jié)果。濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計2電源部分:采用5V 的電源供電。2 系統(tǒng)硬件設(shè)計2 2.1 元件的選用元件的選用根據(jù)設(shè)計題目要求選用的主要是 AT89S51 芯片和點陣顯示模塊,總體設(shè)計分為5 個模塊:使系統(tǒng)恢復(fù)初始狀態(tài)的復(fù)位電路模塊;穩(wěn)定頻率和選擇頻率的晶振電路模塊;驅(qū)動電路模塊;儲存系統(tǒng)程序的 89S51 芯片以及顯示效果的 LCD 點陣顯示模塊,這 5 個功能模塊電路組成了我們的設(shè)計。2.2 單片機(jī)單片機(jī) AT89S511性能、特點AT89S51 是一種低功耗、高性能的片內(nèi)含有 4KB 快閃可編程/擦除只讀存儲器的8 位 CO

7、MS 微控制器,使用高密度,非易失存儲技術(shù)制造,并且與 AT89C51 引腳和指令系統(tǒng)完全兼容。芯片上的 FPEROM 允許在線編程或采用通用的非易失存儲編程器對存儲器重復(fù)編程。AT89S51 具有多種功能的 8 位 CPU 與閃存結(jié)合在一個芯片上,為很多嵌入式控制應(yīng)用提供了非常靈活而又便宜的方案。單片機(jī)的可擦除只讀存儲器可以反復(fù)擦除100 次。該器件采用 ATMEL 高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的 MCS-51 指令集和輸出管腳相兼容。由于將多功能 8 位 CPU 和閃爍存儲器組合在單個芯片中。AT89S51 是一種高效微控制器,主要特點有:(1)與 MCS-51 微控制器產(chǎn)品

8、系列兼容。(2)片內(nèi)有 4KB 可在線重復(fù)編程的快閃擦寫存儲器(Flash Memory)。(3)存儲器可循環(huán)寫入/擦除 1000 次。(4)存儲數(shù)據(jù)保存時間為 10 年。(5)寬工作電壓范圍:Vcc 可為 2.7V6V。(6)全靜態(tài)工作:可從 0HZ 到 16MHZ。(7)程序存儲器具有 3 級加密保護(hù)。濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計3(8)1288 位內(nèi)部 RAM。(9)32 條可編程 I/O 線。(10)兩個 16 位定時器/計數(shù)器。(11)中斷結(jié)構(gòu)具有 5 個中斷源和 2 個優(yōu)先級。(12)可編程全雙工串行通道。(13)空閑狀態(tài)維持低功耗和掉電狀態(tài)保存存儲內(nèi)容。2主要管腳P0 口(39 腳至

9、 32 腳):是雙向 8 位三態(tài) I/O 口,在外接存儲器時,與地址總線的低 8 位及數(shù)據(jù)總線復(fù)用。P1 口(1 腳至 8 腳):是準(zhǔn)雙向 8 位 I/O 口。由于這種接口輸出沒有高阻狀態(tài),輸入也不能鎖存,故不是真正的雙向 I/O 口。P2 口(21 腳至 28 腳):是準(zhǔn)雙向 8 位 I/O 口。在訪問外部存儲器時,它可以作為擴(kuò)展電路高 8 位地址總線送出高 8 位地址。P3 口(10 腳至 17 腳):是準(zhǔn)雙向 8 位I/O 口,在 MCS-51 中,這 8 個引腳還用于專門功能,是復(fù)用雙功能口。P3 各口的第二功能定義如圖 2.1 所示。 P3.0 - RXD(串行輸入口) P3.1 -

10、 TXD(串行輸出口)P3.2 - INT0(外部中斷 0)P3.3 - INT1(外部中斷 1) P3.4 - T0(定時器 0 外部輸入)P3.5 - T1(定時器 1 外部輸入) P3.6 - WR(外部數(shù)據(jù)存儲器寫脈沖)P3.7 - RD(外部數(shù)據(jù)存儲器讀脈沖) 圖 2.1 引腳圖RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持 RST 腳兩個機(jī)器周期的高電平時間。濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計4ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。XTAL2:來自反向振蕩器的輸出。XTAL1 和 XTAL2

11、 分別為反向放大器的輸入和輸出。3.復(fù)位電路AT89C51 單片機(jī)的復(fù)位是由外部的復(fù)位電路來實現(xiàn)的。 復(fù)位電路的基本功能是:系統(tǒng)上電時提供復(fù)位信號,直至系統(tǒng)電源穩(wěn)定后,撤銷復(fù)位信號。為可靠起見,電源穩(wěn)定后還要經(jīng)一定的延時才撤銷復(fù)位信號,以防電源開關(guān)或電源插頭分-合過程中引起的抖動而影響復(fù)位。單片機(jī)復(fù)位的條件是:必須使 RST/Vpd 或 RST 引腳(9)加上持續(xù)兩個機(jī)器周期(即 24 個振蕩周期)的高電平。例如,若時鐘頻率為 12MHz,每機(jī)器周期為 1us,則只需 2us 以上時間的高電平,在 RST 引腳出現(xiàn)高電平后的第二個機(jī)器周期執(zhí)行復(fù)位。單片機(jī)常用的復(fù)位電路如圖 2.2 所示。圖 2

12、.2 按鍵復(fù)位電路圖 2.2 為按鍵復(fù)位電路。該電路除具有上電復(fù)位功能外,若要復(fù)位,只需按圖中的 SW1 鍵,此時電源 VCC 經(jīng)電阻 R1、R6 分壓,在 RESET 端產(chǎn)生復(fù)位高電平。4.晶振電路石英晶體振蕩器也稱石英晶體諧振器,它用來穩(wěn)定頻率和選擇頻率,是一種可以取代 LC 諧振回路的晶體諧振元件。本設(shè)計所用的晶體振蕩電路,如圖 2.3 晶體振蕩電路。濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計5此晶振電路所選用的石英晶振頻率為 12MHZ。時鐘周期就是單片機(jī)外接晶振的倒數(shù),例如 12MHz 的晶振,它的時間周期就是(1/12 us),是計算機(jī)中最基本的、最小的時間單位。圖 2.3 晶振電路在一個時鐘周期內(nèi)

13、,CPU 僅完成一個最基本的動作。對于某種單片機(jī),若采用了 1MHZ 的時鐘頻率,則時鐘周期為 1us;若采用 4MHZ 的時鐘頻率,則時鐘周期為250us。由于時鐘脈沖是計算機(jī)的基本工作脈沖,它控制著計算機(jī)的工作節(jié)奏(使計算機(jī)的每一步都統(tǒng)一到它的步調(diào)上來)。顯然,對同一種機(jī)型的計算機(jī),時鐘頻率越高,計算機(jī)的工作速度就越快。但是,由于不同的計算機(jī)硬件電路和器件的不完全相同,所以其所需要的時鐘周頻率范圍也不一定相同。我們學(xué)習(xí)的 51 系列單片機(jī)的時鐘范圍是 1.2MHz-12MHz。2.3 點陣模塊點陣模塊LED 點陣顯示模塊是由一串發(fā)光或不發(fā)光的點狀顯示器按矩陣的方式排列組成的,其發(fā)光體是(L

14、ED 發(fā)光二極管)。目前,LED 點陣顯示器應(yīng)用十分廣泛,如廣告活動字幕機(jī),股票顯示屏,活動布告欄等。LED 點陣顯示器的分類有多種方法:按陣列點數(shù)可以分為57、58、68、88,按發(fā)光顏色可以分為單色、雙色、三色,按極性排列方式又可以分為共陰極和共陽極。如圖 2.4 所示,只要讓某些 LED 發(fā)光二極管點亮,就可以組成數(shù)字、字母、圖形、漢字等,但要顯示漢字則需要多個 LED 點陣顯示器濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計6組合,最常見的組合方式有 1514、1615、1616 等。 在設(shè)計中選用的是極性排列為共陰極的 88 LED 點陣顯示器,采用 1616 的組合方式。由于設(shè)計要求讓同時顯示 4 個字

15、,每個 1616 矩陣顯示一個字,則需要4 個 1616 矩陣組成(即 16 個 88LED 矩陣)。圖 2.4 點陣顯示結(jié)構(gòu)圖2.4 譯碼器譯碼器 74HC154 譯碼器是能實現(xiàn)將表示特定意義信息的二進(jìn)制代碼功能的集成電路。譯碼器的輸入為二進(jìn)制代碼,輸出為與輸入代碼對應(yīng)的特定信息,它可以是脈沖,也可以是電平。而在此次設(shè)計中應(yīng)用的是輸出高電平。174HC154 引腳圖及功能濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計7圖 2.5 74HC154 引腳圖功能如下:1-11 13-17 :譯碼器輸出端。(outputs (active LOW))12:GND 接地端(ground (0 V))18-19:使能輸入端

16、(enable inputs (active LOW)20-23:地址信號輸入端 (address inputs)24:VCC 電源 (positive supply voltage)在設(shè)計中由單片機(jī) P1 口輸出信號控制譯碼器的 2023 號管腳(地址信號輸入端),經(jīng)譯碼器后由譯碼器輸出端控制顯示電路,譯碼器輸出低電平(0)有效。2譯碼器功能由表 2.1 可知,所示當(dāng)使能輸入端 G1、G2 均接低電平時,輸入信號 DCBA 高電平有效且按 8421 碼實現(xiàn)加一時,輸出 0-15 端實現(xiàn)低電平并左移。例如:當(dāng)G1G2=0,DCBA=0001 時,輸出端 Y1 輸出有效。當(dāng)使能輸入端 G1、G2

17、 其中任意一端接高電平時,不論輸入斷如何,均輸出高平。 表 2.1 74HC154 譯碼器功能表2.5 集成電路集成電路 74HC595列驅(qū)動電路由集成電路 74HC595 構(gòu)成。它具有一個 8 位串入并出的移位寄濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計8存器和一個 8 位輸出鎖存器的結(jié)構(gòu),而且移位寄存器和輸出鎖存器的控制是各自獨(dú)立的,可以實現(xiàn)在顯 示本行各列數(shù)據(jù)的同時,傳送下一行的列數(shù)據(jù),即達(dá)到重疊處理的目的 。1.引腳及功能74HC595 的引腳如圖 2.6 所示:圖 2.6 74HC595 引腳圖QA-QH: 八位并行輸出端,可以直接用于輸出控制。QH1: 級聯(lián)輸出端。在設(shè)計中將它接下一個 595 的

18、SER 端。SER: 串行數(shù)據(jù)輸入端。SRCLR: 清零端。低電平時將移位寄存器的數(shù)據(jù)清零。通常接 Vcc。SRCK:數(shù)據(jù)輸入端。上升沿時數(shù)據(jù)寄存器的數(shù)據(jù)移位,下降沿移位寄存器數(shù)據(jù)不變。G: 高電平時禁止輸出(高阻態(tài))。RCK:上升沿時移位寄存器的數(shù)據(jù)進(jìn)入數(shù)據(jù)存儲寄存器,下降沿時存儲寄存器數(shù)據(jù)不變,將 RCK 置為低電平,當(dāng)移位結(jié)束后,在 RCK 端產(chǎn)生一個正脈沖更新顯示數(shù)據(jù)。2.集成電路功能74HC595 的輸入側(cè)有 8 個串行移位寄存器,每個移位寄存器的輸出都連接一個輸出鎖存器,引腳 SER 是串行數(shù)據(jù)的輸入端。如表 2.2 所示引腳 SCK 是移位寄存器的移位時鐘脈沖,在其上升沿發(fā)生移位

19、,并將 SER 的下一個數(shù)據(jù)打入最低位。移位后的各位信號出現(xiàn)在各移位寄存器的輸出端,也就是輸出鎖存器的輸入端。RCK 是濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計9輸出鎖存器的打入信號,其上升沿將移位寄存器的輸出打入到輸出鎖存器。引腳 G是輸出三態(tài)門的開放信號,只有當(dāng)其為低時鎖存器的輸出才開放,否則為高阻態(tài)。SRCLR 信號是移位寄存器的靖 0 輸入端,當(dāng)其為低時移位寄存器的輸出全部為 0。由于 SRCK 和 RCK 兩個信號是互相獨(dú)立的,所以能夠做到輸入串行移位與輸出鎖存互不干擾。芯片的輸出端為 QAQH最高位 QH 可作為多片 74HC595 級聯(lián)應(yīng)用時,向上一級的級聯(lián)輸出。表 2.2 74HC595 真值

20、表輸入管腳SERSRCKSCLRRCKG輸出HQHQA 輸出為高阻態(tài)LQHQA 輸出有效值L移位寄存器清零LH移位寄存器存儲 LHH移位寄存器存儲 HH移位寄存器狀態(tài)保持輸出存儲寄存器鎖存移位寄存器中的狀態(tài)值輸出存儲器狀態(tài)保持濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計103 系統(tǒng)軟件設(shè)計3.1 系統(tǒng)軟件設(shè)計思路系統(tǒng)軟件設(shè)計思路 由于設(shè)計要求要顯示 21 個字,每次顯示 4 個字需用用 6 屏顯示,所以要有以下程序:1.主程序:是程序的基本結(jié)構(gòu)框架。開始先清除屏幕,以防出現(xiàn)亂碼。2.顯示程序:此次設(shè)計所選用的是 LED 矩陣是 1616 點陣組合,每一屏需要128 個數(shù)據(jù)碼。3.讀碼程序:讀程序的作用是當(dāng)?shù)谝粩?shù)據(jù)

21、碼輸出后能夠查詢送出下一個,并保證數(shù)據(jù)連續(xù)循環(huán)送出。4.移動程序:當(dāng)?shù)谝黄溜@示結(jié)束后能實現(xiàn)向左移動。3.2 系統(tǒng)程序設(shè)計系統(tǒng)程序設(shè)計1.主程序主程序框圖如圖 3.1 所示。圖 3.1 主程序框圖ORG 00HSTART:MOV A,#00H濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計11 MOV P0,AMOV P2,A ;清屏 CALL DIS ;調(diào)顯示子程序 CALL MOVE ;調(diào)移動子程序 JMP START ;循環(huán)如圖 3.1 所示,當(dāng)程序開始運(yùn)行后,系統(tǒng)現(xiàn)對點陣顯示器進(jìn)行初始化。然后清屏,為輸出數(shù)據(jù)做準(zhǔn)備。然后調(diào)用中文顯示程序,在顯示屏上顯示數(shù)據(jù),延時過后調(diào)顯示下一屏顯示數(shù)據(jù),再調(diào)用移動子程序?qū)?shù)據(jù)進(jìn)

22、行向左移動,如此循環(huán)。2顯示程序 圖 3.2 顯示程序框圖如圖 3.2 所示,當(dāng)程序運(yùn)行至顯示程序時,會在字庫中查找字符碼并計算字模地址,在計算一列的位置后,程序依次從字庫中調(diào)出一列字模的數(shù)據(jù)輸出到顯示屏上,直到這一屏寫完為止。寫完一頁后,程序會進(jìn)行清屏、換屏。然后繼續(xù)依次調(diào)一列字模數(shù)據(jù)輸出到顯示屏上,直到寫完這一頁。程序可以不停運(yùn)行,可以用延時濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計12來控制每幕停留時間,程序如下:DIS:MOV R2,#06H ;每個畫面四個字,21 個字分 6 次顯示 MOV 20H,#00 ;取碼指針暫存地址 20H 初值為 00D4:MOV R4,#00H ;掃描指針設(shè)初值 MOV

23、 R1,#0FFH ;每幕停留的時間D5:MOV R6,#64 ;每幕 4 個字 64 個數(shù)據(jù)碼 MOV R0,20H ;取碼指針存入 R0D2:LCALL READ1 ;調(diào)用取碼子程序 INC R4 ;掃描下一列DJNZ R6,D2 ;顯示一幕?MOV R4,#00 ;清除掃描指針DJNZ R1,D5 ;每幕停留時間到了嗎?MOV 20H,R0 ;保留取碼指針存入 20H 地址DJNZ R2,D4 ;6 幕顯示完畢了? RET3讀碼子程序根據(jù)硬件設(shè)計需要設(shè)計如 3.3 所示讀碼程序框圖編寫如下讀碼子程序:READ1:MOV A,R4 ;掃描指針載入 AMOV P1,A ;P1 掃描輸出MOV

24、 A,R0 ;取碼指針載入 AMOV DPTR,#TABLE ;查表MOVC A,A+DPTR ;取上半部數(shù)據(jù)碼MOV P0,A ;輸出至 P0 顯示INC R0 ;取下一個碼 MOV A,R0 ;取碼指針載入 AMOV DPTR,#TABLE ;查表MOVC A,A+DPTR ;取下半部數(shù)據(jù)碼濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計13圖 3.3 讀碼子程序框圖MOV P2,A ;輸出至 P2 顯示INC R0 ;取下一個碼MOV R3,#25 ;延時DJNZ R3,$ MOV A,#00H MOV A,#00H ;清屏MOV P0,A MOV P2,A RET 4移動子程序 MOVE:MOV 20H,#0

25、0 ;取碼指針暫存地址 20H 初值為 00MOV R4,#00H ;掃描指針設(shè)初值M1:MOV R1,#0FFH ;每幕停留的時間濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計14圖 3.4 移動程序框圖M2:MOV R6,#64 ;每幕 4 個字 64 個數(shù)據(jù)碼MOV R0,20H ;取碼指針存入 R0M3:CALL READ1 ;調(diào)用取碼子程序INC R4 ;掃描下一列 DJNZ R6,M3 ;顯示一幕? MOV R4,#00 ;清除掃描指針為 00 DJNZ R1,M2 ;每幕停留的時間到了嗎? MOV A,20H ;取碼指針載入 A ADD A,#08 ;取碼指針加 8 MOV 20H,A ;取碼指針再存

26、如 20H XRL A,#336 ;21 個字是否都左移完畢了? JNZ M1 RET濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計15 4 調(diào)試與仿真4.1 偉幅仿真軟件偉幅仿真軟件偉幅 WINDOWS 調(diào)試軟件提供了一個全集成環(huán)境,具有統(tǒng)一的界面,它的項目文件有仿真器的設(shè)置、模塊和包含文件。其仿真器的設(shè)置有仿真器類型設(shè)置、仿真頭設(shè)置、CPU 設(shè)置、顯示格式設(shè)置和產(chǎn)生的目標(biāo)文件類型等設(shè)置。在設(shè)計中用到的是軟件調(diào)試的一種,先將源程序輸入,編譯成功后將文件添加到 Proteus 軟件中已經(jīng)設(shè)計好的項目中,仿真運(yùn)行,調(diào)試無誤后,將調(diào)試好的程序存入磁盤中。將編好的程序通過偉福仿真軟件來驗證。先打開偉福仿真軟件的界面,選擇

27、仿真器、仿真頭和 CPU 的類型。其設(shè)置如圖 4.1 所示:圖 4.1 仿真器的選擇然后點目標(biāo)文件,在生成 BIN 和 HEX 文件(即二進(jìn)制和十六進(jìn)制文件)前選擇對號,其設(shè)置如圖 4.2 所示,設(shè)置完成后點“好”。濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計16圖 4.2 目標(biāo)文件的設(shè)置然后在偉福里面輸入編譯好的程序進(jìn)行調(diào)試,經(jīng)改正錯誤后運(yùn)行,如圖 4.3 所示:圖 4.3 編譯通過后的界面4.2 Proteus 仿真軟件仿真軟件1.Proteus 仿真軟件的使用濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計17(1)在桌面上找到快捷圖標(biāo),雙擊打開,或在開始菜單程序下的。(2)軟件運(yùn)行后會自動打開一個空白文件,用戶也可以在文件菜單下

28、選擇“新建設(shè)計”,在出新的選擇窗口中選擇,來新建一個空白文件。(3)放置元件設(shè)計仿真圖中的元件列表如表 4.1 所示:表 4.1 元件列表類別數(shù)量元件MicroprocessorICs189S51Optoelectronics8MATRTX 88 Green LEDTTL74HCserise274HC154TTL74 HCserise174HC04Resistors1Respack-81)選擇元件在最左側(cè)的工具欄中選擇圖標(biāo),并選擇中的 P 按鈕,將會出現(xiàn)選擇元件對話框。在該對話框左側(cè)選擇,然后在右側(cè)的窗口中雙擊選擇 AT89S51 單片機(jī),使該元件出現(xiàn)在下面的列表中,至此列表中應(yīng)該出現(xiàn)一個元件

29、。按此方法添加 LED,在對話框左側(cè)選在右側(cè)窗口選擇88,或者(有 4 種顏色,可隨便選擇)。再添加排阻元件。在對話框左側(cè)選,在右側(cè)選擇。至此在下面應(yīng)該出現(xiàn) 3 種元件2)放置元件濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計18在對象選擇器中添加元件之后,就要在原理圖中放置元件。在對象選擇器中單擊 AT89C52 單片機(jī),然后在原理圖中點左鍵放置該元件,點右鍵可以撤銷放置本元件的操作。3)移動元件在原理圖編輯窗口,右擊選擇對象,在出現(xiàn)的菜單中選擇第 1 項拖曳功能,移動元件到目標(biāo)位置后,單擊左鍵固定元件,在空白處再單擊左鍵結(jié)束移動操作。4)刪除元件用右鍵雙擊該元件即可。如果不小心刪除了,用恢復(fù)按鈕恢復(fù)。5)調(diào)整元

30、件方位右擊元件,在菜單中選擇相應(yīng)的旋轉(zhuǎn)方式。6)編輯元件左鍵雙擊元件,出現(xiàn)對話框后可以修改(一般很少修改) 。(4)連線ISIS 環(huán)境沒有專門的連線工具。在 2 個元件間連線很簡單,只需要直接單擊 2個元件的連接點,ISIS 即可自動定出走線路經(jīng)并完成 2 個連接點的連線操作。如果覺得連線不合適,也可以自己定,方法是在需要拐彎的地方單擊,然后再連接另一個元件的連接點。注意放置拐點的地方鼠標(biāo)會呈現(xiàn) X 樣式。布線結(jié)束后如果需要改變連線的樣式,可以用左鍵拖動拐點即可改變。(5)調(diào)入文件 在源代碼菜單中選擇第 1 項,在出現(xiàn)的窗口中選擇編譯器,再選擇源代碼文件名下面的按鈕,在出現(xiàn)的窗口中改變地址選擇

31、已經(jīng)編譯好的“濟(jì)源.asm”文件并確定。(6) 調(diào)試點擊窗口左下角的按鈕,可以觀察到程序的效果。2. Proteus 提供的資源濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計19(1)Proteus 軟件提供的元件資源Proteus 軟件提供了 30 多個元件庫,數(shù)千種元件,涉及到數(shù)字和模擬、交流和直流等,具體情況如表 4.2 所示。表 4.2 Proteus 中的主要元器件庫庫名元件類型或系列庫名元件類型或系列Analog ICs電源電路、555、電壓基準(zhǔn)芯片等Microprocessor ICs處理器,有 51 系列、6800 系列、PIC16 系列等Data ConvertersA/D 轉(zhuǎn)換、D/A轉(zhuǎn)換芯片T

32、ransistors三極管,有2N、BC、FZTIRF 等系列及場效應(yīng)管等Diode穩(wěn)壓二極管,有1N, 3EZ,BAS,BZX, MMBZ 等系列Optoelectronics發(fā)光二極管,數(shù)碼管有 16seg、7seg 系列,LM 液晶系列、點陣系列等(2)Proteus 提供的仿真儀表資源在 Proteus 軟件包中,包含了大量的不同類型的高質(zhì)量測試儀表,同類儀表可以重復(fù)使用,不存在使用數(shù)量的問題,具體情況如表 4.3 所示。表 4.3 Proteus 提供的仿真儀表名稱虛擬儀器名稱虛擬儀器Oscilloscope示波器Signal generator信號發(fā)生器Logic analyzer

33、邏輯分析儀Pattern generator序列發(fā)生器Counter timer計數(shù)/定時器DC/AC voltmeter直 流(交流)電壓表Virtual terminal串口終端DC/AC ammeter直流(交流)電流表SPI DebuggerSPI 總線調(diào)試器I2C DebuggerI2C 總線調(diào)試器濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計20除了現(xiàn)實存在的儀器外,Proteus 還提供了一個圖形顯示功能,可以將線路上變化的信號,以圖形的方式實時地顯示出來,其作用與示波器相似但功能更多。這些虛擬儀器儀表具有理想的參數(shù)指標(biāo),例如極高的輸入阻抗、極低的輸出阻抗,這些都盡可能減少了儀器對測量結(jié)果的影響。3.

34、在設(shè)計中的運(yùn)用在脫離硬件的情況下可以把在韋幅仿真器中已經(jīng)編譯正確后的程序?qū)氲絇roteus 仿真環(huán)境里已經(jīng)設(shè)計好的項目中,這樣就可以驗證我們所編程序是否是能實現(xiàn)設(shè)計效果的正確程序。設(shè)計的仿真圖如圖 4.4 所示:圖 4.4 仿真設(shè)計圖在項目文件建好后,將在韋幅中已經(jīng)編輯好的程序添加到 Proteus 仿真環(huán)境中,濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計21運(yùn)行后觀察效果如圖 4.5 所示,如果出現(xiàn)錯誤或者不能運(yùn)行,則要刪除原項目文件重新添加即可。圖 4.5 仿真效果圖4.3 字模軟件字模軟件字模提取工具是版本為 PCtoLCD2002 版的字模提取器,他可以按照我們想要的取模方式對所輸入漢字進(jìn)行字模提取,這

35、樣獲取字模數(shù)據(jù)簡單、方便。取模設(shè)置如圖 4.6 所示,在設(shè)計中的取模說明:(1)由于設(shè)計中用的是共陰極的 LED 矩陣即輸入高電平有效,所以在設(shè)置中選陰碼。(2)所編程序中的取模是按列取的,則在取模方式欄選逐列式。(3)原理圖中設(shè)計是從高到低控制,所以在取模走向中選順向。濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計22圖 4.6 取模設(shè)置圖字體設(shè)置為長寬為 1616 的宋體,字模數(shù)據(jù)如下:DB 08H 20H 86H 20H 60H 7FH 03H 80H 0CH 01H 21H 02H 21H 0CH 32H F0H;DB AAH 00H 64H 00H 2AH 00H 32H FFH 21H 00H 21H

36、00H 21H 00H 00H 00H;濟(jì)DB 08H 20H 84H 3FH 60H C0H 07H 02H 00H 0CH 7FH F0H 40H 04H 4FH 88H;DB 5AH B2H 6AH 81H 4AH FEH 4AH 80H 4AH A0H 4FH 90H 40H 0CH 00H 00H;源DB 40H 08H 40H 08H 7FH F0H 49H 10H 49H 10H 7FH FFH 40H 20H 00H 22H;DB 7FH 84H 41H 38H 41H 10H 41H 00H 41H 20H 7FH 90H 00H 0CH 00H 00H;職DB 00H 04

37、H 08H 04H 06H 04H 01H C4H 00H 84H FFH FCH 00H 04H 00H 04H;DB 00H 04H FFH FCH 00H 44H 01H 84H 06H 04H 1CH 0CH 08H 04H 00H 00H;業(yè)DB 10H 80H 10H 82H 11H 01H FFH FEH 12H 00H 14H 02H 00H 02H 13H 04H;DB 12H C8H 12H 30H FEH 30H 12H 48H 13H 84H 12H 06H 10H 04H 00H 00H;技DB 08H 08H 08H 08H 08H 10H 08H 20H 08H

38、40H 09H 80H 0AH 00H FFH FEH;DB 0AH 00H 09H 00H 48H 80H 28H 60H 08H 30H 08H 18H 08H 10H 00H 00H;術(shù)DB 02H 00H 0CH 40H 08H 40H 48H 40H 3AH 40H 2AH 40H 0AH 42H 8AH 41H;DB 7AH FEH 2BH 40H 0AH 40H 18H 40H EAH 40H 4CH 40H 08H 40H 00H 00H;學(xué)DB 7FH FFH 40H 00H 4CH 40H 52H 20H 61H C1H 30H 82H 24H 8CH 24H F0H;DB

39、 A4H 80H 64H 80H 24H FEH 24H 81H 24H 81H 30H 81H 20H 8FH 00H 00H;院DB 00H 00H 00H 00H 1FH F0H 12H 20H 12H 20H 12H 20H 12H 20H FFH FCH;濟(jì)源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計23DB 12H 22H 12H 22H 12H 22H 12H 22H 1FH F2H 00H 02H 00H 0EH 00H 00H;電DB 00H 00H 04H 00H 08H 00H 31H 00H E5H 00H 25H 00H 25H 00H 25H 00H;DB 25H 00H 25H 00H

40、 25H 00H 25H F0H 24H 0CH 20H 02H 20H 0FH 00H 00H;氣DB 00H 00H 00H 00H 00H 00H 1FH FFH 12H 22H 12H 22H 32H 22H D2H 22H;DB 52H 22H 12H 22H 12H 22H 12H 22H 1FH FFH 00H 00H 00H 00H 00H 00H;自DB 04H 10H 24H 38H 24H D0H 27H 10H 24H 30H 24H A0H 24H 72H 04H 24H;DB 08H 08H 08H 30H FFH C0H 08H 04H 08H 02H 0FH FCH 00

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論