版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 自動化系</b></p><p> 單片機(jī)系統(tǒng)課程設(shè)計報告</p><p> 設(shè)計完成日期: 2012年 11月30日</p><p><b> 目 錄</b></p><p> 1 設(shè)計分析和性能指標(biāo)...........................
2、.....................................4</p><p><b> 1.1設(shè)計任務(wù)4</b></p><p><b> 1.2任務(wù)分析4</b></p><p><b> 2 設(shè)計方案5</b></p><p><b>
3、 2.1方案論證5</b></p><p> 2.2總體方案設(shè)計框圖6</p><p><b> 3 硬件介紹7</b></p><p> 3.1單片機(jī)系統(tǒng)及其外圍電路7</p><p> 3.1.1單片機(jī)管腳說明7</p><p> 3.3行驅(qū)動電路9<
4、/p><p> 3.4 點(diǎn)陣顯示原理10</p><p> 3.4.1點(diǎn)陣模塊10</p><p> 3.4.2LED驅(qū)動顯示10</p><p> 3.5系統(tǒng)的總體電路11</p><p><b> 4 軟件設(shè)計12</b></p><p> 4.1 顯
5、示驅(qū)動程序13</p><p> 4.2系統(tǒng)主程序13</p><p><b> 5 系統(tǒng)調(diào)試14</b></p><p> 5.1軟件調(diào)試14</p><p> 5.2硬件調(diào)試14</p><p><b> 6 設(shè)計總結(jié)16</b></p>
6、<p><b> 參考文獻(xiàn)17</b></p><p><b> 附錄 源程序18</b></p><p> 1 任務(wù)分析和性能指標(biāo)</p><p><b> 1.1設(shè)計任務(wù)</b></p><p> 設(shè)計一個16×16的LED點(diǎn)陣圖文顯示
7、屏,可顯示圖形和文字,顯示圖形和文字應(yīng)穩(wěn)定、清晰,各點(diǎn)亮度均勻。圖形和文字顯示有靜態(tài)、移入和移出等顯示方式。掉電時能保存顯示的信息。</p><p><b> 1.2任務(wù)分析</b></p><p> LED顯示屏是利用發(fā)光二極管點(diǎn)陣模塊或像素單元組成的平面式顯示屏幕。它具有發(fā)光效率高、使用壽命長、組態(tài)靈活、色彩豐富以及對室內(nèi)外環(huán)境適應(yīng)能力強(qiáng)等優(yōu)點(diǎn)。并廣泛的應(yīng)用于
8、公交汽車,碼頭,商店,學(xué)校和銀行等公共場合的信息發(fā)布和廣告宣傳。LED顯示屏經(jīng)歷了從單色,雙色圖文顯示屏到現(xiàn)在的全彩色視頻顯示屏的發(fā)展過程,自20世紀(jì)八十年代開始,LED顯示屏的應(yīng)用領(lǐng)域已經(jīng)遍布交通、電信、教育、證券、廣告宣傳等各方面。</p><p><b> 2 設(shè)計方案</b></p><p><b> 2.1方案論證</b></
9、p><p> 16×16的點(diǎn)陣顯示屏共有256個發(fā)光二極管,顯然單片機(jī)沒有這么多端口,如果我們采用鎖存器來擴(kuò)展端口,按8位的鎖存器來計算,16×16的點(diǎn)陣需要256/8=32個鎖存器。這個數(shù)字很龐大,因?yàn)槲覀儍H僅是16×16的點(diǎn)陣,在實(shí)際應(yīng)用中的顯示屏往往要大的多,這樣在鎖存器上花的成本將是一個很龐大的數(shù)字。因此在實(shí)際應(yīng)用中的顯示屏幾乎都不采用這種設(shè)計,而采用另一種稱為動態(tài)掃描的顯示方
10、法。</p><p> 動態(tài)掃描的意思簡單地說就是逐行輪流點(diǎn)亮,這樣掃描驅(qū)動電路就可以實(shí)現(xiàn)多行(比如16行)的同名列共用一套列驅(qū)動器。具體就16×16的點(diǎn)陣來說,我們把所有同一行的發(fā)光管的陽極連在一起,把所有同一列的發(fā)光管的陰極連在一起(共陽的接法),先送出對應(yīng)第一行發(fā)光管亮滅的數(shù)據(jù)并鎖存,然后選通第一行使其燃亮一定的時間,然后熄滅;再送出第二行的數(shù)據(jù)并鎖存,然后選通第二行使其燃亮相同的時間,然后熄滅
11、;…… 第十六行之后又重新燃亮第一行,這樣反復(fù)輪回。當(dāng)這樣輪回的速度足夠快(每秒24次以上),由于人眼的視覺暫留現(xiàn)象,我們就能看到顯示屏上穩(wěn)定的圖形了。</p><p> 采用串行傳輸?shù)姆椒?,控制電路可以只用一根信號線,將列數(shù)據(jù)一位一位傳往列驅(qū)動器,在硬件方面無疑是十分經(jīng)濟(jì)的。但是,串行傳輸過程較長,數(shù)據(jù)按順序一位一位地輸出給列驅(qū)動器,只有當(dāng)一行的各列數(shù)據(jù)都已傳輸?shù)轿恢?,這一行的各列才能并行地進(jìn)行顯示。這樣,
12、對于一行的顯示過程就可以分解成列數(shù)據(jù)準(zhǔn)備(傳輸)和列數(shù)據(jù)顯示兩個部分。對于串行傳輸方式來說,列數(shù)據(jù)準(zhǔn)備時間可能相當(dāng)長,在行掃描周期確定的情況下,留給行顯示的時間就太少了,以至影響到LED的亮度。</p><p> 解決串行傳輸中列數(shù)據(jù)準(zhǔn)備和列數(shù)據(jù)顯示的時間矛盾問題,可以采用重疊處理的方法。即在顯示本行各列數(shù)據(jù)的同時,傳送下一行的列數(shù)據(jù)。為了達(dá)到重疊處理的目的,列數(shù)據(jù)的顯示就需要具有鎖存功能。經(jīng)過上述分析,可以歸
13、納出列驅(qū)動器電路應(yīng)具備的主要功能。對于列數(shù)據(jù)準(zhǔn)備來說,它應(yīng)能實(shí)現(xiàn)串入并出的移位功能;對于列數(shù)據(jù)顯示來說,應(yīng)具有并行鎖存的功能。這樣,本行已準(zhǔn)備好的數(shù)據(jù)打入并行鎖存器進(jìn)行顯示時,串并移位寄存器就可以準(zhǔn)備下一行的列數(shù)據(jù),而不會影響本行的顯示。</p><p> 2.2總體方案設(shè)計框圖</p><p> 圖2.1系統(tǒng)的總體框圖</p><p><b> 3
14、 硬件介紹</b></p><p> 3.1單片機(jī)系統(tǒng)及其外圍電路</p><p> 3.1.1單片機(jī)管腳說明</p><p><b> VCC:供電電壓。</b></p><p><b> GND:接地。</b></p><p> P0口:P0口為一個
15、8位漏級開路雙向I/O口,每腳可吸收8TTL門電流</p><p> P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。</p><p> P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當(dāng)P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。 </p><
16、;p> P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。 </p><p> P3口也可作為AT89C51的一些特殊功能,如下 圖3.1單片機(jī)管腳</p><p><b> 列所示:</b></p>
17、;<p> P3.0 RXD(串行輸入口)</p><p> P3.1 TXD(串行輸出口)</p><p> P3.2 /INT0(外部中斷0)</p><p> P3.3 /INT1(外部中斷1)</p><p> P3.4 T0(記時器0外部輸入)</p><p> P3.5 T1(記時
18、器1外部輸入)</p><p> P3.6 /WR(外部數(shù)據(jù)存儲器寫選通)</p><p> P3.7 /RD(外部數(shù)據(jù)存儲器讀選通)</p><p> P3口同時為閃爍編程和編程校驗(yàn)接收一些控制信號。</p><p> RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機(jī)器周期的高電平時間。</p><p&
19、gt; ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。</p><p> PSEN:外部程序存儲器的選通信號</p><p> EA/VPP:當(dāng)/EA保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器</p><p> XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。&l
20、t;/p><p> XTAL2:來自反向振蕩器的輸出</p><p><b> 3.1.2復(fù)位電路</b></p><p> 當(dāng)開關(guān)不閉合式 ,為低電平此時不復(fù)位。當(dāng)開關(guān)閉合時,電源提供電壓使RST為高電平,則單片機(jī)復(fù)位。</p><p> 圖3.1單片機(jī)復(fù)位電路</p><p><b&
21、gt; 3.1.3時鐘電路</b></p><p> 單片機(jī)的最小系統(tǒng)如下圖所示,18引腳和19引腳接時鐘電路,X1接外部晶振和微調(diào)電容的一端,在片內(nèi)它是振蕩器倒相放大器的輸入,X2接外部晶振和微調(diào)電容的另一端,在片內(nèi)它是振蕩器倒相放大器的輸出[9]。第9引腳為復(fù)位輸入端,接上電容,電阻及開關(guān)后夠上電復(fù)位電路,20引腳為接地端,40引腳為電源端時鐘電路。</p><p>&
22、lt;b> 圖3.2時鐘電路</b></p><p><b> 3.2列驅(qū)列電路</b></p><p> 列驅(qū)動有集成電路74HC595構(gòu)成。它具有一個8位串入并出的移位寄存器和一個8位輸出鎖存器的結(jié)構(gòu)動電路,兩片595級聯(lián)構(gòu)成此電路。</p><p><b> 圖3.3列驅(qū)動電路</b><
23、;/p><p><b> 3.3行驅(qū)動電路</b></p><p> 單片機(jī)P1口低4位輸出的行號經(jīng)4/16線譯碼器74LS154譯碼后生成16條行選通信號線,再經(jīng)過驅(qū)動器驅(qū)動對應(yīng)的行線。一條行線上要帶動16列的LED進(jìn)行顯示。</p><p><b> 圖3.4行驅(qū)動電路</b></p><p>
24、; 3.4 點(diǎn)陣顯示原理</p><p><b> 3.4.1點(diǎn)陣模塊</b></p><p> 四個8×8的點(diǎn)陣構(gòu)成一個16×16的點(diǎn)陣共由256個LED構(gòu)成。如果LED的陰極與行相連而陽極與列相連那么只要給該LED對應(yīng)的行以低電平列以高電平那么對應(yīng)的LED就發(fā)光。 圖5畫出了可顯示一個漢字的16×16的點(diǎn)陣屏模塊。這種
25、模塊由256個發(fā)光LED以16×16的形式構(gòu)成一個正方形模塊 然后引出2列16針的引腳將內(nèi)部電路接口引出供驅(qū)動電路使用。</p><p> 圖 5 四塊8×8的LED點(diǎn)陣組成16×16的LED點(diǎn)陣</p><p> 3.4.2LED驅(qū)動顯示</p><p> LED驅(qū)動顯示采用動態(tài)掃描方法,動態(tài)掃描方式是逐行輪流點(diǎn)亮,這樣掃描
26、驅(qū)動電路就可以實(shí)現(xiàn)多行的同名列共用一套列驅(qū)動器。以16×16點(diǎn)陣為例,把所有同一行的發(fā)光管的陽極連在一起,把所有同一列的發(fā)光管的陰極連在一起(共陽的接法),先送出對應(yīng)第1行發(fā)光管亮滅的數(shù)據(jù)并鎖存,然后選通第1行使其燃亮一定的時間,然后熄滅;再送出第2行的數(shù)據(jù)并鎖存,然后選通第2行使其燃亮相同的時間,然后熄滅;….第16行之后,又重新燃亮第1行,反復(fù)輪回。</p><p> 3.5系統(tǒng)的總體電路<
27、/p><p><b> 圖6總體電路圖</b></p><p><b> 4 軟件設(shè)計</b></p><p> 此設(shè)計的主要功能是向屏體提供顯示數(shù)據(jù),并產(chǎn)生各種控制信號,使屏幕按設(shè)計的要求顯示,顯示驅(qū)動程序負(fù)責(zé)向屏體送顯示數(shù)據(jù),并負(fù)責(zé)產(chǎn)生行掃描信號和其它控制信號,配合完成LED顯示屏的掃描顯示工作。顯示驅(qū)動程序由定時器
28、T0中斷程序?qū)崿F(xiàn)。系統(tǒng)應(yīng)用程序完成系統(tǒng)環(huán)境設(shè)置(初始化)、顯示效果處理等工作,由主程序來實(shí)現(xiàn)。 所有的程序都采用匯編語言編寫。</p><p> 4.1 顯示驅(qū)動程序</p><p> 示驅(qū)動程序在進(jìn)入中斷后首先要對定時器T0重新賦初值,以保證顯示屏刷新率的穩(wěn)定,1/16掃描顯示屏的刷新率(幀頻)計算公式如下:</p><p> 刷頻率(幀頻)=1/16
29、15;T0溢出率=1/16×f/12(65536-t) </p><p> 其中f位晶振頻率,t為定時器T0初值(工作在16位定時器模式)。</p><p> 然后顯示驅(qū)動程序查詢當(dāng)前燃亮的行號,從顯示緩存區(qū)內(nèi)讀取下一行的顯示數(shù)據(jù),并通過串口發(fā)送給移位寄存器。為消除在切換行顯示數(shù)據(jù)的時候產(chǎn)生拖尾現(xiàn)象,驅(qū)動程序先要關(guān)閉顯示屏,即消隱,等顯示數(shù)據(jù)打入輸出鎖存器并鎖存,然后再輸出新
30、的行號,重新打開顯示。圖7為顯示驅(qū)動程序(顯示屏掃描函數(shù))流程圖。 </p><p> 圖7 顯示驅(qū)動程序流程圖</p><p><b> 4.2系統(tǒng)主程序</b></p><p> 本設(shè)計的系統(tǒng)軟件能使系統(tǒng)LED顯示屏各點(diǎn)亮度均勻、充足,可顯示文字,顯文字應(yīng)穩(wěn)定、清晰無串?dāng)_。文字顯示有應(yīng)該逐字顯示。</p><p&
31、gt; 圖8系統(tǒng)的主程序流程圖</p><p><b> 5 系統(tǒng)調(diào)試</b></p><p><b> 5.1軟件調(diào)試</b></p><p> 長時間沒用單片機(jī)匯編語言,而這個系統(tǒng)在編寫程序過程中都采用匯編語言編寫。剛剛開始,編寫不會一次性通過,經(jīng)過仔細(xì)分析修改最后編譯成功。但是,在實(shí)際寫如S51中,LED顯示
32、屏出現(xiàn)各種各樣的亂碼,通過再次認(rèn)真仔細(xì)分析,多次修改程序后能正常運(yùn)行。</p><p> protuse軟件仿真及調(diào)試可以很清楚的順次顯示出“機(jī)電信息工程”六個字,但是顯示的每個字停留的時間過短,通過改變程序中的靜止顯示時間控制,來延長顯示時間,問題得到解決。</p><p><b> 5.2硬件調(diào)試</b></p><p> 在焊接電路
33、板的時候,應(yīng)該從最基本的最小系統(tǒng)開始,分模塊,逐個進(jìn)行焊接測試,16×16點(diǎn)陣LED電子顯示屏的電路系統(tǒng)較小,但是線路頗為麻煩,特別是在焊接點(diǎn)陣屏?xí)r,龐大的電路系統(tǒng)中只要出現(xiàn)一處的錯誤,則會對整個電路帶來麻煩且對檢測造成很大的不便,而且電路的交線較多,對于各種鋒利的引腳要注意處理,否則會刺破帶有包皮的導(dǎo)線,則會對電路造成短路現(xiàn)象。</p><p> 等到完全按照仿真電路焊接完各個部分時,調(diào)試時沒有出現(xiàn)
34、字符顯示,用萬用表再三檢測各點(diǎn)是否短路時,也不曾發(fā)現(xiàn)問題,沒有一個點(diǎn)是虛焊狀態(tài)。但是調(diào)試時就是不出現(xiàn)現(xiàn)象。后來經(jīng)過多次嘗試,問題仍是得不到解決。硬件顯示失敗。</p><p><b> 6 設(shè)計總結(jié)</b></p><p> 硬件電路焊接不是問題,因?yàn)樵谌ツ?電子工業(yè)實(shí)習(xí)中,我們已經(jīng)熟練掌握焊接這門技藝,所以在這次試驗(yàn)中,焊接工作進(jìn)行的十分順利,在焊接的過程中沒有
35、出現(xiàn)虛焊和錯焊的問題。</p><p> 在焊接板子之前需要弄懂8x8點(diǎn)陣的結(jié)構(gòu),需要弄懂怎么樣將4個8x8點(diǎn)陣并成一個16x16的點(diǎn)陣,這是我初次接觸,需要努力的去分析,經(jīng)過我們大家共同的研究我們沒有把行列接錯,這點(diǎn)我們很開心,因?yàn)槿绻渝e,這個重新焊接的過程將非常龐大。</p><p> 焊接板子過程中需要考慮布局,怎么樣布局能讓板子焊接起來輕松點(diǎn)并且美觀點(diǎn)。我們經(jīng)過規(guī)劃,成品看起
36、來十分美觀,沒有線路糾纏錯亂的請況。</p><p> 不過最令人沮喪的是我們雖說焊完了,但是最后一步硬件調(diào)試卻沒有出現(xiàn)該出的現(xiàn)象,雖說我們用萬用表反復(fù)檢查仍然沒有解決問題。我認(rèn)為可能是我們的學(xué)習(xí)過程中缺乏實(shí)踐,導(dǎo)致調(diào)試過程不成功,所以在以后的學(xué)習(xí)過程中,我們應(yīng)該加強(qiáng)此方面的訓(xùn)練。</p><p><b> 參考文獻(xiàn)</b></p><p>
37、; [1] 任濤等.閃速存儲器數(shù)據(jù)及應(yīng)用簡明速查手冊.電子工業(yè)出版社,1997 </p><p> [2] 張毅剛等.MCS-51單片機(jī)應(yīng)用設(shè)計.哈爾濱工業(yè)電子出版社,1996 </p><p> [3] 鄔寬明.單片機(jī)外圍器件實(shí)用手冊.北京航空航天大學(xué)出版社,1998</p><p> [4] 張凱.LED介紹完全手冊.北京航空航天大學(xué)出版社,2000 &
38、lt;/p><p> [5] 張友德等.單片微型機(jī)原理應(yīng)用與實(shí)驗(yàn).復(fù)旦大學(xué)出</p><p> [6] 郭文川.單片機(jī)原理與接口技術(shù).中國農(nóng)業(yè)出版社,2007</p><p> [7] 周景潤. Proteus在MCS-51&ARM7系統(tǒng)中的應(yīng)用百例[M].電子工業(yè)出版社,2006</p><p> [8] 馬忠梅等.單片機(jī)的C語
39、言應(yīng)用程序設(shè)計[M].北京航空航天大學(xué)出版社,2006</p><p> [9] 何立民.MCS-51系列單片機(jī)應(yīng)用系統(tǒng)設(shè)計與接口技術(shù).北京航空航天大學(xué)出版社,1990.</p><p> [10] 何立民.單片機(jī)應(yīng)用技術(shù)選編.北京航空航天大學(xué)出版社,2000</p><p> [11] 張新成.楊志邦.c語言程序設(shè)計.河南科學(xué)技術(shù)出版社,2009</p
40、><p> [12] 余發(fā)山.王福忠.單片機(jī)原理及應(yīng)用技術(shù).中國礦大出版社,2004</p><p> [13] 課程組.單片機(jī)與案例一接口技術(shù).大連民族學(xué)院</p><p> [14] 韓桂英.數(shù)字電子技術(shù).清華大學(xué)出版社,2011</p><p> 附錄 源程序 </p><
41、p> ORG 0000H</p><p> LJMP START</p><p> ORG 0003H</p><p><b> RETI</b></p><p> ORG 000BH</p><p> LJMP INTT0</p>
42、<p> ORG 0013H</p><p><b> RETI</b></p><p> ORG 001BH</p><p><b> RETI</b></p><p> ORG 0023H</p><p><b>
43、 RETI</b></p><p> ORG 002BH</p><p><b> RETI</b></p><p><b> ;</b></p><p> ;************;</p><p><b> ; 初始化程序 ;&
44、lt;/b></p><p> ;************;</p><p><b> ;</b></p><p><b> ;</b></p><p> ;************;</p><p> ; 主程序 ;</p><p
45、> ;************;</p><p><b> ;</b></p><p> START: MOV 20H,#00H ;清標(biāo)志,00H為第16行開始掃描標(biāo)志,01為1幀掃描結(jié)束標(biāo)志</p><p> MOV A,#0FFH ;端口初始化</p><p&g
46、t; MOV P1,A</p><p> MOV P2,A</p><p> MOV P3,A</p><p> MOV P0,#0ffh</p><p> CLR P1.6 ;串行寄存器輸入打入輸出控制位</p><p> MOV TMOD,#
47、01H ;使用T0作16位定時器,行掃描用。</p><p> MOV TH0,#0FCH ;1ms初值(12MHZ)</p><p> MOV TL0,#18H</p><p> MOV SCON,#00H ;串口0方式傳送顯示字節(jié)</p><p> MOV IE,#82H
48、 ;T0中斷允許,總中斷允許</p><p> MOV SP,#70H</p><p> MAIN: LCALL DIS1 ;顯示準(zhǔn)備,黑屏,1.5秒</p><p> MOV DPTR,#TAB</p><p> LCALL MOVDISP ;向上滾動
49、顯示一頁(8個字)</p><p> INC DPH</p><p> LCALL MOVDISP ;向上滾動顯示一頁(8個字)</p><p> INC DPH</p><p> LCALL MOVDISP ;向上滾動顯示一頁(8個字)</p><p>
50、 AJMP MAIN</p><p><b> ;</b></p><p><b> ;</b></p><p> ;********************;</p><p> ; 多字滾動顯示子程序 ;</p><p> ;***************
51、*****;</p><p> ;每次8個字,入口時定義好DPTR值</p><p><b> ;</b></p><p> MOVDISP: MOV B,#00H ;向上移動顯示,查表偏址暫存(從00開始)</p><p> DISLOOP: MOV R3,#07H ;移動速度
52、</p><p> DISMOV: MOV R2,#00H ;第0行開始</p><p> MOV R1,B ;</p><p> SETB TR0 ;開掃描(每次一幀)</p><p> WAITMOV: JBC 01H,DISMOV1 ;標(biāo)
53、志為1掃描一幀結(jié)束(16毫秒為1幀,每行1毫秒)</p><p> AJMP WAITMOV</p><p> DISMOV1: DJNZ R3,DISMOV ;1幀重復(fù)顯示(控制移動速度)</p><p> INC B ;顯示字的下一行(每行2字節(jié))</p><p> INC B
54、 ;</p><p> MOV A,R1 ;R1為0,8個字顯示完</p><p> JZ MOVOUT ;</p><p> AJMP DISLOOP ;</p><p> MOVOUT: RET
55、 ;移動顯示結(jié)束</p><p><b> ;</b></p><p><b> ;</b></p><p> ;*****************;</p><p> ; 單字顯示子程序 ;</p><p> ;*****************;</p&
56、gt;<p><b> ;顯示表中某個字</b></p><p> DIS1: MOV R3,#6AH ;靜止顯示時間控制(16MS*#=1.6秒)</p><p> DIS11 MOV R2,#00H ;一幀掃描初始值(行地址從00-0FH)</p><p> MOV DPTR,#
57、TAB ;取表首址</p><p> MOV R1,#00H ;查表偏址(顯示第一個字)</p><p> SETB TR0 ;開掃描(每次一幀)</p><p> WAIT11: JBC 01H,DIS111 ;為1,掃描一幀結(jié)束</p><p> AJMP WAIT11</p
58、><p> DIS111: DJNZ R3,DIS11</p><p><b> RET</b></p><p><b> ;</b></p><p><b> ;</b></p><p> ;************;<
59、;/p><p> ; 掃描程序 ;</p><p> ;************;</p><p> ;1MS刷新一次,每行顯示1秒</p><p> INTT0: PUSH ACC</p><p> MOV TH0,#0FCH ;1ms初值重裝</p>
60、<p> MOV TL0,#18H</p><p> JBC 00H,GOEND ;16行掃描標(biāo)志為1,結(jié)束</p><p> INC R1 ;取行右邊字節(jié)偏址</p><p> MOV A,R1</p><p> MOVC A,@A+DPT
61、R ;查表</p><p> MOV SBUF,A ;串口0方式發(fā)送</p><p> WAIT: JBC TI,GO ;等待發(fā)送完畢</p><p> AJMP WAIT ;</p><p> GO:
62、 DEC R1 ;取行左邊字節(jié)偏址</p><p> MOV A,R1</p><p> MOVC A,@A+DPTR</p><p> MOV SBUF,A</p><p> WAIT1: JBC TI,GO1</p><p&g
63、t; AJMP WAIT1</p><p> GO1: SETB P1.7 ;關(guān)行顯示,準(zhǔn)備刷新</p><p> NOP ;串口寄存器數(shù)據(jù)穩(wěn)定</p><p> SETB P1.6 ;產(chǎn)生上升沿,行數(shù)據(jù)打入輸出端</p><p>
64、; NOP ;</p><p> NOP ;</p><p> CLR P1.6 ;恢復(fù)低電平</p><p> MOV A,R2 ;修改顯示行地址</p><p> ORL A,#0F
65、0H ;修改顯示行地址</p><p> MOV R2,A ;修改顯示行地址</p><p> MOV A,P1 ;修改顯示行地址</p><p> ORL A,#0FH ;修改顯示行地址</p><p> ANL A,R2
66、 ;修改顯示行地址</p><p> MOV P1,A ;修改完成</p><p> CLR P1.7 ;開行顯示</p><p> INC R2 ;下一行掃描地址值</p><p> INC R1
67、 ;</p><p> INC R1 ;下一行數(shù)據(jù)地址</p><p> MOV A,R2</p><p> ANL A,#0FH</p><p> JNZ GO2</p><p> SETB 00H ;R2為10H,現(xiàn)為末行掃
68、描,置標(biāo)志</p><p> GO2: POP ACC</p><p><b> RETI</b></p><p> GOEND: CLR TR0 ;一幀掃描完,關(guān)掃描</p><p> SETB 01H
69、 ;一幀掃描完,置結(jié)束標(biāo)志</p><p> POP ACC</p><p> RETI ;退出</p><p><b> ;</b></p><p><b> ;</b></p><p> ;*************
70、**;</p><p> ; 掃描文字表 ;</p><p> ;***************;</p><p><b> ;</b></p><p> TAB: db 08H,20H,08H,0C0H,0BH,00H,0FFH,0FFH</p><p> db 09H,01H,
71、08H,82H,00H,04H,3FH,0F8H</p><p> db 20H,00H,20H,00H,20H,00H,7FH,0FCH</p><p> db 20H,02H,00H,02H,00H,0EH,00H,00H</p><p> db 00H,00H,1FH,0E0H,12H,40H,12H,40H</p><p>
72、db 12H,40H,12H,40H,0FFH,0FCH,12H,42H</p><p> db 12H,42H,12H,42H,12H,42H,3FH,0E2H</p><p> db 10H,02H,00H,0EH,00H,00H,00H,00H</p><p> db 01H,00H,02H,00H,04H,00H,1FH,0FFH</p>
73、<p> db 0E0H,00H,24H,80H,24H,0BFH,24H,0A2H</p><p> db 0A4H,0A2H,64H,0A2H,24H,0A2H,24H,0A2H</p><p> db 2DH,0BFH,64H,80H,20H,00H,00H,00H</p><p> db 00H,02H,00H,0CH,00H,00H,3
74、FH,0EEH</p><p> db 25H,21H,65H,21H,0A5H,31H,25H,29H</p><p> db 25H,2DH,25H,21H,25H,21H,7FH,0E7H</p><p> db 20H,00H,00H,08H,00H,06H,00H,00H</p><p> db 00H,04H,20H,04
75、H,20H,04H,20H,04H</p><p> db 20H,04H,20H,04H,20H,04H,3FH,0FCH</p><p> db 20H,04H,20H,04H,20H,04H,20H,04H</p><p> db 60H,04H,20H,0CH,00H,04H,00H,00H</p><p> db 24H,1
76、0H,24H,60H,25H,80H,7FH,0FFH</p><p> db 0C5H,00H,44H,0C2H,04H,82H,7EH,92H</p><p> db 42H,92H,42H,92H,42H,0FEH,42H,92H</p><p> db 42H,0B2H,0FEH,96H,40H,82H,00H,00H</p><p
77、> db 02H,20H,0CH,20H,88H,20H,69H,20H</p><p> db 09H,20H,09H,22H,89H,21H,69H,7EH</p><p> db 09H,60H,09H,0A0H,19H,20H,28H,20H</p><p> db 0C8H,20H,0AH,60H,0CH,20H,00H,00H</p&
78、gt;<p> db 00H,00H,7FH,0FFH,44H,20H,5AH,10H</p><p> db 69H,0E1H,30H,81H,24H,82H,24H,8CH</p><p> db 0A4H,0F0H,64H,80H,24H,0FCH,2CH,82H</p><p> db 25H,82H,28H,82H,30H,0EH,0
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)控制led點(diǎn)陣顯示器---開題報告
- 單片機(jī)課程設(shè)計--漢字液晶顯示器顯示
- 單片機(jī)課程設(shè)計----led點(diǎn)陣漢字顯示
- 單片機(jī)課程設(shè)計-字符液晶顯示器設(shè)計
- 基于單片機(jī)的led點(diǎn)陣顯示課程設(shè)計
- 單片機(jī)課程設(shè)計--時鐘及液晶顯示器設(shè)計
- 單片機(jī)課程設(shè)計--電子日歷時鐘顯示器設(shè)計
- 液晶課程設(shè)計--單片機(jī)液晶顯示器系統(tǒng)設(shè)計
- 單片機(jī)課程設(shè)計---點(diǎn)陣電子顯示屏設(shè)計
- 單片機(jī)課程設(shè)計--1616點(diǎn)陣顯示實(shí)驗(yàn)
- 單片機(jī)課程設(shè)計--點(diǎn)陣設(shè)計
- 單片機(jī)課程設(shè)計--點(diǎn)陣led電子顯示屏
- 單片機(jī)課程設(shè)計---點(diǎn)陣led電子顯示屏
- 單片機(jī)課程設(shè)計報告--- led點(diǎn)陣動態(tài)顯示屏設(shè)計
- 單片機(jī)字符點(diǎn)陣課程設(shè)計
- 16乘16點(diǎn)陣顯示單片機(jī)課程設(shè)計
- 單片機(jī)課程設(shè)計---16乘16點(diǎn)陣顯示
- 單片機(jī)課程設(shè)計---液晶點(diǎn)陣顯示屏程序設(shè)計
- 畢業(yè)設(shè)計---基于單片機(jī)的led點(diǎn)陣字符顯示器的設(shè)計
- 單片機(jī)課程設(shè)計---led點(diǎn)陣電子顯示屏的設(shè)計
評論
0/150
提交評論