版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、目 錄1 方案選擇及總體設計11.1 方案確定11.1.1 功能要求11.2.2 方案確定11.2 器件選擇12 控制系統設計22.1 控制系統硬件設計22.1.1整體模塊設計22.2 晶振電路設計22.3 復位電路設計32.4 驅動電路設計42.5 led點陣顯示設計53 控制系統軟件設計63.1 軟件設計思想63.2 主程序流程圖64 系統仿真及性能分析84.1 系統仿真84.2調試結果84.3 性能分析9總 結10參考文獻11附 錄12附錄a 硬件結構圖12附錄b 主程序清單121 方案選擇及總體設計1.1 方案確定 1.1.1 功能要求 1、采用stc-52單片機作為微處理器。 2、設
2、計一個5×7點陣led數碼字符顯示器。 3、在目測條件下led顯示屏各點亮度均勻、充足、穩(wěn)定、清晰無串擾。 4、動態(tài)顯示“ac”幾個字符。 1.2.2 方案確定 采用st89c52單片機作為微處理器,將共陽極二極管用共陰型接法連接成5×7點陣led數碼字符陣列,通過程序控制,采用動態(tài)顯示,建立字符庫“09”。1.2 器件選擇微處理器采用st89c52系列單片機,st89c52單片機是這幾年在我國非常流行的單片機,是一種帶4k字節(jié)閃爍可編程可擦除只讀存儲器(fperomflash programmable and erasable read only memory)高性能單片
3、機,可擦除只讀存儲器可以反復擦除100次,具有低功耗、高性能的特點。 2 控制系統設計2.1 控制系統硬件設計2.1.1整體模塊設計本設計行、列驅動電路,顯示器電路,運用單片機的智能化,系統的將每個功能電路模塊連接在一起,總體結構設計如圖2.1所示。圖2.1 硬件系統框圖此次需要實現的功能是利用一個st89c52,一個5×7led點陣,動態(tài)顯示“ac”10個字,采用pc上位機驅動顯示電路。st89c52單片機最小系統電路由復位電路、晶振電路兩部分組成。2.2 晶振電路設計st89c52單片機芯片內部設有一個由反向放大器構成的振蕩器,xtal1和xtal2分別為振蕩電路的的輸入端和輸出
4、端,時鐘可有內部或外部生成,在xtal1和xtal2引腳上外接定時元件,內部振蕩電路就會產生自激振蕩。系統采用的定時元件為石英晶體和電容組成的并聯諧振回路。晶振頻率采用12mhz,c1、c2的電容值取30pf,電容的大小起頻率微調的作用。晶振電路圖如圖所示。圖2.2 晶振電路圖2.3 復位電路設計st89c52單片機在啟動運行時或者出現死機時需要復位,使cpu以及其他功能部件處于一個確定的初始狀態(tài),并從這個狀態(tài)開始工作。單片機有多種復位方式,常用的復位操作有上電復位和手動復位方式。本設計采用最簡單的上電復位方式,電路如圖3所示。上電復位是通過外部復位電路的電容充電來實現的,復位電路產生的復位信
5、號(高電平有效)由rst引腳送入到內部的復位電路,對st89c52單片機進行復位,復位信號要持續(xù)兩個機器周期(24個時鐘周期)以上,才能使st89c52單片機可靠復位。當上電時,c1相當于短路,有時碰到干擾時會造成錯誤復位,可在復位端加個去耦電容,可以取得很好的效果。 st89c52單片機復位電路如下圖所示: 圖2.3 上電復位電路圖 圖2.4 按鍵電平復位電路圖復位電路工作原理: 上電瞬間rst引腳的電位與vcc等電位,rst引腳為高電平,隨著電容c5充電電流的減少,rst引腳的電位不斷下降,可以保持rst引腳在為高電平的時間內完成復位操作。當單片機已在運行當中時,按下復位鍵s5后再松開,也
6、能使rst引腳為一段時間的高電平,從而實現st89c52單片機復位。2.4 驅動電路設計正向點亮一顆led,至少也要1020ma,若電流不夠大,則led不夠大。而不管是st89c52的i/o口,還是ttl、cmos的輸出端,其高態(tài)輸出電流都不是很高,不過12ma而已。因此很難直接高態(tài)驅動led,這時候就需要額外的驅動電路,通常有共陽型與共陰型led陣列驅動電路,本設計才用共陰型高態(tài)掃描信號驅動電路。共陰型led陣列驅動電路采用高態(tài)掃描,也就是任何時間只有一個高態(tài)信號,其它則為低態(tài)。一行掃描完成后,再把高態(tài)信號轉化到近鄰的其他行,掃描信號接用一個反向驅動器,st89c52本身內置一個反向驅動器,
7、本設計將st89c52作為點矩陣顯示控制系統的控制核心,通過點矩陣實時顯示并移動字符。單片機的串口與行驅動器相連,用來發(fā)送顯示數據信息。p0口與led陣列的行引腳相連,送出數據、地址以及系統控制信號。輸出低態(tài)時,最大可吸取0.5a,即500ma,若每個led取30ma,7個led同時點亮,需要210ma,完全滿足led點亮的基本條件。圖2.5 驅動電路圖所要顯示的信號送入74hc573芯片,然后連接到led陣列的列陣腳。對于高態(tài)的顯示信號,將可提供其所連接led的驅動電流,而這個驅動電流經過led到輸出端,形成正向回路,即可點亮該led。其中每個晶體管任何時間只需負責驅動一個led,所以選擇3
8、0ma射極電流的晶體管。驅動電路如圖5所示。2.5 led點陣顯示設計 本設計采用atmel公司的at89c51作矩陣顯示控制系統控制核心,12mhz晶振,57點陣共陽led顯示器。其中,p1口作為字符數據輸出口,p3口為字符顯示掃描輸出口,第31腳(ea)接電源,改變電阻(270*8)的大小可改變顯示字符的亮度,驅動用74hc573芯片。本設計led矩陣顯示器電路選用5×7點陣模塊,系統由單片機控制。 led顯示屏是將發(fā)光二極管按行按列布置的,在掃描驅動方式下可以按行掃描按列控制,也可以按列掃描按行控制。本文就是使用1塊5×7點陣,采用按列掃描按行控制控制方式,掃描順序自
9、左向右,以滿足漢字顯示的要求。圖2.8 5×7點陣led等效電路一個5×7點陣是由35個發(fā)光二極管按規(guī)律組成的,如圖2.8所示。圖中,行接低電平,列接高電平,發(fā)光二極管導通發(fā)光。3 控制系統軟件設計3.1 軟件設計思想 主程序先進行設置中斷,并啟動,再進行鍵盤掃描載入“09”字型,然后判斷一組字型是否掃描完,按不同情況進行循環(huán)調用子程序。進入子程序后,首先設置相應的程序,反復調用顯示子程序,并在顯示過程中反復調用鍵盤掃描子程序進行延時,判斷是否退出相應的方式顯示子程序。設計過程中,能很好得提高按鍵響應速度。如圖3.1所示為軟件系統框圖。圖3.1 軟件系統框圖字符編碼:5
10、215;7點陣可以看成是從上至下8個字節(jié),每個字節(jié)8位,因為該點陣為共陰型點陣,因此若該燈亮,則該位為“1”;該燈不亮,則該位為“0”。3.2 主程序流程圖主程序首先設置并啟動t0中斷,然后調用初始化程序,為后面程序要用到的數據調入,并清零一些用到的數據單元,然后載入“ac”字型,進行掃描。圖3.2為主程序流程圖,詳細主程序清單及子程序設計見附錄b。開 始初 始 化讀取顯示數據依次選通列,行74ls164的clock端置低,鎖存器禁止輸出對應行數組元素與0x01相與,相與結果寫入單片機端口輸出數組元素右移一位,對應74ls164 clock端置高n右移次數是否為7?y鎖存器允許輸出圖3.2 主
11、程序流程圖4 系統仿真及性能分析4.1 系統仿真本設計是以wave與proteus.isis相結合方式來實現本led點矩陣顯示器的仿真實現過程。電路的核心是單片機st89c52。單片機的p0口八個引腳通過總線連接到led矩陣顯示器的段選碼和位選碼(a、b、c、d、e、f、g和1、2、3、4、5、6、7、8)的引腳上,來作為控制信號的來源。如圖11、12所示。圖 4.1 動態(tài)顯示程序調試結果圖 4.2 延時程序調試結果4.2調試結果經軟件調試-仿真器proteus調試通過,得到所要求的設計結果 圖4.3 調試結果4.3 性能分析此次系統設計結果較好,led顯示屏能很好的顯示信息。led顯示屏由1
12、塊8×8的led小模塊組成,整個顯示屏可以動態(tài)顯示8×8的“09”字型。這個方案設計的88的點陣led圖文顯示屏,電路簡單,成本較低,且較易擴展;顯示屏各點亮度均勻、充足;顯示圖形或文字穩(wěn)定、清晰無串擾。總 結本次課程設計到現在有一個多星期,回顧這些天我感到學到了很多東西,在寫這個心得的時候,我想就這些天的收獲,說一說自己內心的想法。本設計是一個8x8的點陣led數碼顯示器,能夠在目測條件下led顯示屏各點亮度均勻、充足,可顯示圖形和文字,顯示圖形和文字應穩(wěn)定、清晰無串擾。圖形或文字顯示有靜止、移入移出等顯示方式。本系統具有硬件少,結構簡單,容易實現,性能穩(wěn)定可靠,成本低等
13、特點。 總結本文的研究工作,主要做了下面幾點工作: 一、通過查閱大量的相關資料,詳細了解了led的發(fā)光原理和led顯示屏的原理,了解了led的現狀,清楚地了解了led顯示屏與其它顯示屏相比較有那些優(yōu)點,明確了研究目標。并且通過對單片機資料的查閱和應用,更進一步增加了對單片機知識的理解和運用能力。并證實了自己的思路:“查資料思考總結運用找出差錯,再查資料和向別人詢問再次運用”的正確性。二,本文設計的led顯示屏能夠實現在目測條件下led顯示屏各點亮度均勻、充足,可顯示圖形和文字,顯示圖形和文字應穩(wěn)定、清晰無串擾。三,本文列出了系統具體的硬件設計方案,硬件結構電路圖,軟件流程圖和具體匯編語言程序設
14、計與調試等方面。四,在這次課程設計的過程中學會了 proteus 的基本使用,感到proteus對電子專業(yè)的同學來說是一個很有用的軟件。在運用proteus時可以運用一些快捷的標號,總線的方法畫圖,這樣既能使電路圖清晰,簡單,更能大大提高畫圖速度五,通過這次課程設計,重新復習并進一步增強了動手的能力,學以致用,把只是運用到實際生活中才是根本目的??傮w來說這次的科研實踐很成功,達到了預想的目的:學到了知識,提高了能力,完成了任務。有點缺憾是時間有限,不能進一步深入和擴散學習和研究。希望有時間可以對程序和電路圖作更進一步的改進,譬如實現點陣的上下移動,對角線移動,多色顯示等。參考文獻1 張靖武,周
15、靈彬 單片機系統的proteus設計與仿真北京 電子工業(yè)出版社2 吳金戌,沈慶陽,郭庭吉 8051單片機實踐與應用北京 清華大學出版社3 李群芳,肖看 單片機原理、接口及應用北京 清華大學出版社4 張毅剛,彭喜元等 新編mcs-51單片機應用設計 黑龍江 哈爾濱工業(yè)大學出版社 5 張義和,陳敵北編著 例說8051北京 人民郵電出版社 附 錄附錄a 硬件結構圖附錄b 主程序清單org 0000h ljmp start org 0003hljmp interupt org 0100hstart: /*初始化寄存器*/setb eaclr it0setb ex0mov a,#00h mov r0,#
16、20hmov r1,#6eh ;調入數據到內存的數據長度 (tab數據量決定)mov r2,#00hmov r3,#20h ;a顯示時長mov r4,#20h ;b顯示時長mov r5,#20h ;c顯示時長mov dptr,#tabacall initljmp maininit:mov a,r2 ;將數據調入內存(使用r0數據儲存器儲存數據)movc a,a+dptrmov r0,ainc r0inc r2djnz r1,initret org 0200hinterupt:/*中斷函數:移位操作*/ ;由于寄存器使用數量較大,用循環(huán)地 址加5需加寄存器數據儲存讀取 clr ea ;已無法達到
17、簡化效果,故使用固定地址mov r5,#02h work_1: mov r0,#2fh ;移位循環(huán) 1lcall boot_inmov r0,#34hlcall boot_inmov r0,#39hlcall boot_inmov r0,#3ehlcall boot_inmov r0,#43hlcall boot_indjnz r5,work_1mov r5,#02h work_2:mov r0,#48h ;移位循環(huán) 2 右移 ;lcall boot_inmov r0,#4dhlcall boot_inmov r0,#52hlcall boot_in mov r0,#57hlcall boot
18、_in mov r0,#5chlcall boot_indjnz r5,work_2mov r5,#02h work_3:mov r0,#61h ;移位循環(huán) 3右移 lcall boot_inmov r0,#66hlcall boot_inmov r0,#6bh lcall boot_inmov r0,#70h lcall boot_inmov r0,#75hlcall boot_indjnz r5,work_3work_2:mov r0,#48h ;移位循環(huán) 2上移lcall boot_inmov r0,#4dhlcall boot_inmov r0,#52hlcall boot_inmov
19、 r0,#57hlcall boot_inmov r0,#5chlcall boot_inmov r0,#61hlcall boot_inmov r0,#66hlcall boot_indjnz r5,work_2mov r5,#02hwork_3:mov r0,#6bh ;移位循環(huán) 3 下移lcall boot_inmov r0,#70hlcall boot_inmov r0,#75hlcall boot_inmov r0,#7ahlcall boot_inmov r0,#7fhlcall boot_inmov r0,#84hlcall boot_inmov r0,#89hlcall boo
20、t_indjnz r5,work_3mov r3,#20h ;中斷返回重新初始化mov r4,#20hmov r5,#20hsetb ea retiboot_in:mov a,r0 ;顯示輸出初始化 mov r3,amov r4,#10h loop_in:mov a,r3 ;輸出循環(huán)使字符“穩(wěn)定”mov r0,amov r1,#01h mov r2,#05hpio_in:mov a,r0 ;輸出一個完整字符mov p0,amov a,r1mov p2,alcall delaymov p0,#0ffh ;p0口清零消除顯示誤差rl amov r1,aclr ainc r0djnz r2,pio_
21、indjnz r4,loop_inret org 0300hmain:/*a,b,c循環(huán)顯示*/led_a:mov r0,#20h;r0地址為20h24h時r0內儲存的數據為a的顯示數據ajmp bootled_b: mov r0,#25h;r0地址為25h29h時r0內儲存的數據為b的顯示數據ajmp bootled_c: mov r0,#2ah;r0地址為2ah2eh時r0內儲存的數據為c的顯示數據boot:mov r1,#01h ;顯示輸出初始化 mov r2,#05h ;輸出循環(huán)使字符“穩(wěn)定”pio:mov a,r0 ;輸出一個完整字符mov p0,amov a,r1mov p2,al
22、call delaymov p0,#0ffh ;p0口清零消除顯示誤差rl amov r1,aclr ainc r0djnz r2,pioajmp workwork:djnz r3,led_a ;顯示數據切換函數mov r3,#01hdjnz r4,led_bmov r4,#01hdjnz r5,led_cmov r3,#20hmov r4,#20hmov r5,#20hljmp led_adelay:mov r7,#01fhdel: mov r6,#05ah djnz r6,$ djnz r7,del rettab:db 03h, 61h, 64h, 61h, 03h ;adb 00h, 36h, 36h, 36h, 49h ;bdb 41h, 3eh, 3eh, 3eh, 5dh ;cdb 0ffh, 5dh, 40h, 5fh, 0ffh ;1 右移db 0ffh, 0ffh, 5dh, 40h, 5fhdb 5fh, 0ff
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 精準識別課件教學課件
- 智慧養(yǎng)老中心解決方案
- 頸椎病解刨結構
- 2024年超高速加工中心投資項目資金申請報告書
- 車場停電應急預案
- 第六章 機械能守恒定律-功能關系與能量守恒 2025年高考物理基礎專項復習
- 2-1-4 微專題1-碳酸鈉與碳酸氫鈉的相關計算 高一上學期化學人教版(2019)必修第一冊
- 骨水泥在糖尿病足的應用
- 醫(yī)療器械合作協議書范本
- 社交網絡鉤機租賃合同
- 年產6000萬塊粉煤灰煤矸石燒結磚項目節(jié)能評估報告書
- 秘書五級總復習3 (收文發(fā)文+事務管理+自動化100)附答案
- 人教版英語九全 Unit 8 It must belong to Carla. Section A(3a-3c)教案
- 移植物抗宿主病課件
- 全面解讀2020年《中華人民共和國民法典》之物權編PPT
- 高中生物必修一新教材課后習題與參考答案
- 水利部水利建設經濟定額站
- 大班數學《貪心的三角形》課件
- 金屬和半導體材料電導(材料物理性能)
- 最新八年級道法上冊概括與評論題角度匯編
- 酒店組織架構圖以及各崗位職責(完整版)
評論
0/150
提交評論