資源描述:
《開機(jī)次數(shù)記錄器課設(shè)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、第1章概述1.1系統(tǒng)功能利用AT89C52單片機(jī)芯片和24C02非易失性存儲(chǔ)器芯片,以51系列單片機(jī)為核心,使用24C02串行EEPROM進(jìn)行存儲(chǔ)開機(jī)次數(shù),由LED數(shù)碼管顯示存儲(chǔ)的開機(jī)次數(shù)。單片機(jī)開1次機(jī),從24C02中讀取數(shù)據(jù),然后加1,最終數(shù)碼管顯示的數(shù)字就是開機(jī)次數(shù),當(dāng)數(shù)碼顯示管的數(shù)據(jù)增加到99時(shí),自動(dòng)清零。1.2設(shè)計(jì)內(nèi)容及要求把單片機(jī)和記憶芯片串聯(lián)起來(lái),通過(guò)往單片機(jī)里下載程序,使其可以簡(jiǎn)單的實(shí)現(xiàn)24C02的記憶功能以及單片機(jī)計(jì)數(shù)器的功能。要求焊接好開發(fā)板,并在發(fā)的開發(fā)板上進(jìn)行調(diào)試。第2章系統(tǒng)總體設(shè)計(jì)方案2.1總體思路該系統(tǒng)的功能就是能測(cè)量開機(jī)次數(shù)。要完成此
2、功能,關(guān)鍵在次數(shù)的寫入和讀出,因此只要能累計(jì)關(guān)機(jī)或開機(jī)次數(shù),并且能在開機(jī)后讀出來(lái),即可實(shí)現(xiàn)記錄的功能。采用AT89C52和24C02作為基本元件.以口P3.4和P3.5來(lái)控制24C02的時(shí)鐘信號(hào)線SCL和數(shù)據(jù)線SDA。載入程序,自動(dòng)初始化,在數(shù)碼管上顯示開機(jī)次數(shù),將程序下載到芯片時(shí),顯示的第一次為0。然后進(jìn)行判斷是否有操作:若是開機(jī),則存儲(chǔ)在24C02中的數(shù)據(jù)加1,然后立即讀出顯示在數(shù)碼管上;若是關(guān)機(jī),則24C02里面的數(shù)據(jù)加1,在再次開機(jī)時(shí)將數(shù)據(jù)讀出顯示在數(shù)碼管上。注:本次的系統(tǒng)設(shè)計(jì)采用99溢出,即當(dāng)計(jì)數(shù)99次后自動(dòng)清零。13初始化顯示開關(guān)機(jī)次數(shù)判斷是開機(jī)還是關(guān)
3、機(jī)關(guān)機(jī)24C02存儲(chǔ)數(shù)據(jù)+1檢測(cè)開機(jī)開機(jī)24C02存儲(chǔ)數(shù)據(jù)+1調(diào)用24C02中的數(shù)據(jù)調(diào)用24C02中的數(shù)據(jù)圖2.1主程序流程圖2.2系統(tǒng)工作原理用AT89C52、24C02及其外圍電路構(gòu)成一個(gè)系統(tǒng),完成一個(gè)開機(jī)次數(shù)記錄器的設(shè)計(jì)。每次在按了復(fù)位鍵或開關(guān)鍵后,顯示的開關(guān)機(jī)次數(shù)在前一次的顯示數(shù)值上加1,以此類推,在滿99次后,重新開始計(jì)數(shù)。在此目的實(shí)現(xiàn)過(guò)程中,程序要實(shí)現(xiàn)包括89C52的讀地址、讀24C02子程序和寫入24C02程序、子程序的顯示等主要功能。根據(jù)設(shè)計(jì)要求和設(shè)計(jì)思路,硬件電路包括單片機(jī)按鍵電路,LED顯示器電路以及開機(jī)電路。13硬件電路設(shè)計(jì)如圖所示:?jiǎn)纹瑱C(jī)按
4、鍵電路LED顯示開機(jī)電路大脈沖源圖2.2硬件電路設(shè)計(jì)第3章硬件設(shè)計(jì)3.1單片機(jī)的選擇單片機(jī)它是把中央處理器CPU、隨機(jī)存儲(chǔ)器RAM、只讀存儲(chǔ)器ROM、I/O接口電路、定時(shí)/計(jì)數(shù)器以及輸入輸出適配器都集成在一塊芯片上,構(gòu)成一個(gè)完整的微型計(jì)算機(jī)。本設(shè)計(jì)使用到的元器件包括:AT89C52芯片、數(shù)碼LED顯示器、七段LED數(shù)碼管的譯碼。其中AT89C52是系統(tǒng)的核心,它主要負(fù)責(zé)控制各個(gè)部分的協(xié)調(diào)工作。在其外圍接上復(fù)位電路,上拉電阻,數(shù)碼管,按鈕以及振蕩器,數(shù)碼管段選P0口,位選P2口。3.2開機(jī)電路的設(shè)計(jì)復(fù)位電路是使單片機(jī)初始化,即使單片機(jī)重新開始執(zhí)行程序。當(dāng)復(fù)位開關(guān)按下
5、,RST由高電平變?yōu)榈碗娖剑瑒t程序從頭開始執(zhí)行。通常選擇C=10~30μF,R=1K,本設(shè)計(jì)采用的電容值為22μF的電容和電阻為10k電阻。在此次課程設(shè)計(jì)電路中復(fù)位實(shí)現(xiàn)次數(shù)加一。13圖3.1開機(jī)電路3.3LED顯示電路的設(shè)計(jì)-電源供電電壓為5V,當(dāng)上拉電阻選用1000Ω電阻時(shí)灌電流為22mA。不會(huì)損壞單片機(jī)的I/O口,同時(shí)也可以為數(shù)碼顯示管起到限制電流的保護(hù)作用。圖3.2驅(qū)動(dòng)電路LED顯示接線部分13圖3.4LED顯示電路第4章開發(fā)板焊接及其測(cè)試4.1開發(fā)板的焊接根據(jù)焊接的開發(fā)板上的提示,先將要測(cè)量電阻及電容測(cè)量好,然后根據(jù)先焊接矮的,后焊接高的,焊接電容時(shí)要注意
6、方向,焊接三極管時(shí)要注意有字體的一面朝右朝下,再根據(jù)元器件的性能看準(zhǔn)方向焊接,焊完整個(gè)開發(fā)板。4.2開發(fā)板的測(cè)試根據(jù)端口接線表將開發(fā)板連接好,進(jìn)行測(cè)試,通過(guò)按INT1鍵看開發(fā)板的變化,如果不對(duì)看看接線是否有誤,或者測(cè)量原件的好壞。第5章軟件設(shè)計(jì)及調(diào)試5.1軟件設(shè)計(jì)見(附錄B)5.2軟件調(diào)試仿真測(cè)試13圖5.1仿真圖第6章系統(tǒng)聯(lián)調(diào)及操作說(shuō)明1、先在keil軟件中將程序運(yùn)行,編譯成功后會(huì)產(chǎn)生后綴有.hex的文件,將此文件導(dǎo)入proteus單片機(jī)中,進(jìn)行硬件仿真。仿真結(jié)果如圖5.1。2、當(dāng)點(diǎn)擊按鈕sw1或斷電重啟時(shí),單片機(jī)讀取24c02數(shù)據(jù)顯示仿真如圖圖6.1仿真圖13
7、第7章總結(jié)通過(guò)本次課程設(shè)計(jì)使我對(duì)Proteus仿真軟件的使用和匯編語(yǔ)言還有焊接有了更進(jìn)一步的了解和掌握。并且在三位老師,尤其是趙老師的耐心指導(dǎo)和自己的不懈努力下,我終于順利的完成了這次課程設(shè)計(jì)。在最初學(xué)習(xí)編寫過(guò)程中,我也曾經(jīng)因?yàn)閷?shí)踐經(jīng)驗(yàn)的缺乏失落過(guò),也曾經(jīng)因仿真成功而熱情高漲。特別是Proteus仿真軟件的使用,一開始因?yàn)閷?duì)軟件不熟悉,搞得一頭霧水,都有放棄的想法,后來(lái)慢慢摸索,再加上問了其他同學(xué)后,差不多會(huì)了以后,畫仿真圖又浪費(fèi)了我大量的時(shí)間,最后在不斷努力中終于把仿真圖畫出來(lái)了,最后要把寫好的程序?qū)胄酒?。其?shí)這也是一大難事,由于對(duì)于書本上的很多知識(shí)還不能靈活
8、運(yùn)用,尤其