51單片機(jī)數(shù)碼管計算器課設(shè)報告(DOC)_第1頁
51單片機(jī)數(shù)碼管計算器課設(shè)報告(DOC)_第2頁
免費預(yù)覽已結(jié)束,剩余24頁可下載查看

下載本文檔

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

文檔簡介

1、課程名稱:微機(jī)原理課程設(shè)計題目51單片機(jī)共陰極數(shù)碼管計算器課程設(shè)計報告2摘要近幾年來隨著科技的飛速發(fā)展,單片機(jī)的應(yīng)用正在不斷深入,同時帶動傳統(tǒng)控制檢測技術(shù)日益更新。在實時檢測和自動控制的單片機(jī)應(yīng)用系統(tǒng)中,單片機(jī)往往作為一個核心部件來使用,僅單片機(jī)方面的知識是不夠的,還應(yīng)根據(jù)具體硬件結(jié)合,加以完善。本設(shè)計是基于51系列的單片機(jī)進(jìn)行的十進(jìn)制計算器系統(tǒng)設(shè)計可以完成計算器的鍵盤輸入進(jìn)行加、減、乘、 除的簡單四則運算 并在4位數(shù)碼管上相應(yīng)的顯示結(jié)果。 硬件方面從功能考慮首先選擇內(nèi)部存儲資源豐富的STC89C52單片機(jī)輸入采用4X4矩陣鍵盤。顯示采用4位7段共陰極數(shù)碼 管動態(tài)顯示。軟件方面從分析計算器功能

2、、流程圖設(shè)計再到程序的編寫進(jìn)行系統(tǒng)設(shè)計。編程語言方面選用C語言進(jìn)行編寫,并選用全球編譯效率最高的KEIL公司的 卩Vision2軟件,采用C語言進(jìn)行編程并用Proteus仿真。通過最后的調(diào)試和測試,本計算器可以實現(xiàn)簡單的 四位數(shù)的加減乘除功能。關(guān)鍵詞:單片機(jī),計算器,共陰極數(shù)碼管,矩陣鍵盤3目錄一、設(shè)計任務(wù)要求.4.1.1設(shè)計任務(wù) .41.2設(shè)計的目的 .41.3設(shè)計要求 .4二、方案總體設(shè)計.5.2.1系統(tǒng)模塊圖 .52.2總體方案工作原理 .5三、硬件設(shè)計.6.3.1整個單片機(jī)的接口電路 .63.2單片機(jī)STC89C52說明 .63.3引腳說明 .73.4計算器系統(tǒng)現(xiàn)狀 .83.5最小系統(tǒng)

3、原理圖 .93.6顯示電路 .113.7按鍵輸入電路 .13四、軟件設(shè)計 .1.5.五、系統(tǒng)仿真與調(diào)試 .1.6.5.1采用KEIL開發(fā)的89c52單片機(jī)應(yīng)用程序步驟 .165.2硬件電路圖的接法操作 .165.3單片機(jī)系統(tǒng)Proteus設(shè)計與仿真過程 .165.4 STC-ISP程序燒錄軟件 .175.5實物圖 .185.6仿真圖 .195.7計算展示 .19六、設(shè)計總結(jié) .2.2.七、參考文獻(xiàn) .2.3.4、設(shè)計任務(wù)要求1.1 設(shè)計任務(wù)滿足計算器的基本要求,可以基本的運算(加減乘除),數(shù)據(jù)歸零,利用51系列單片機(jī)設(shè)計符合功能的計算器,并用LED碼管顯示數(shù)據(jù),4*4的矩陣鍵盤實現(xiàn)數(shù)據(jù)輸入。在

4、進(jìn)行運算時,按等號鍵能將最后結(jié)果輸送給數(shù)碼管并顯示出來。設(shè)計仿真和調(diào)試要用到Protues、Keil等軟件。1.2 設(shè)計的目的通過對簡易計算器的設(shè)計制作與調(diào)試,學(xué)習(xí)掌握1)單片機(jī)系統(tǒng)的整體設(shè)計流程;2)單片機(jī)系統(tǒng)的硬件、軟件調(diào)試方法及相關(guān)工具的使用;3)Protues繪制電路原理圖的方法;4)各種常見元器件的選擇及使用。1.3 設(shè)計要求通過簡易計算器制作,使計算器能夠進(jìn)行加、減、乘、除簡單的四則運算。5、方案總體設(shè)計本設(shè)計是基于52系列單片機(jī)來進(jìn)行的數(shù)字計算器系統(tǒng)設(shè)計,可以完成計算器的鍵盤輸 入,鍵盤電路采用4*4矩陣鍵盤電路,進(jìn)行加、減、乘、除基本四則運算,并在4位共陰極數(shù)碼管顯示相應(yīng)的結(jié)果

5、;設(shè)計電路采用STC89C52單片機(jī)為主要控制芯片,利用軟件方面使用C語言編程,并用Protues仿真。2.1 系統(tǒng)模塊圖圖1系統(tǒng)模塊圖2.2 總體方案工作原理本系統(tǒng)選用以STC89C52C單片機(jī)為主控機(jī)。通過擴(kuò)展必要的外圍接口電路,實現(xiàn)對計 算器的設(shè)計。系統(tǒng)框圖如下圖2圖2系統(tǒng)框圖三、硬件設(shè)計單片機(jī)微型計算機(jī)是微型計算機(jī)的一個重要分支, 也是頗具生命力的機(jī)種。 單片機(jī)微型 計算機(jī)簡稱單片機(jī), 特別適用于控制領(lǐng)域,故又稱為微控制器。通常, 單片機(jī)由單塊集成電 路芯片構(gòu)成,內(nèi)部包含有計算機(jī)的基本功能部件:中央處理器、存儲器和I/O接口電路等。 因此,單片機(jī)只需要和適當(dāng)?shù)能浖巴獠吭O(shè)備相結(jié)合,便可

6、成為一個單片機(jī)控制系統(tǒng)。通常, 單片機(jī)由單個集成電路芯片構(gòu)成, 內(nèi)部包含有計算機(jī)的基本功能部件, 中央處理 器,存儲器和I/O接口電路等。因此,單片機(jī)只需要和適當(dāng)?shù)能浖巴獠吭O(shè)備相結(jié)合,便可 成為一個單片機(jī)控制系統(tǒng)。隨著6社會的發(fā)展,科學(xué)的進(jìn)步,人們的生活水平在逐步的提高, 尤其是微電子技術(shù)的發(fā)展, 猶如雨后春筍般的變化。 單片機(jī)的應(yīng)用已經(jīng)越來越貼近生活, 用 單片機(jī)來實現(xiàn)一些電子設(shè)計也變得容易起來。 計算器在人們的日常中是比較的常見的電子產(chǎn) 品之一??墒撬€在發(fā)展之中, 以后必將出現(xiàn)功能更加強(qiáng)大的計算器, 基于這樣的理念,本 次設(shè)計是用單片機(jī)來設(shè)計的計算器。3.1 整個單片機(jī)的接口電路P0用

7、于顯示輸出;P1用于鍵掃描輸入;P2用于數(shù)碼管位選控制。3.2 單片機(jī) STC89C52 說明STC89C52是STC公司生產(chǎn)的一種低功耗、 高性能CMOS8位微控制器, 具有8K在 系統(tǒng)可編程Flash存儲器。STC89C52使用經(jīng)典的MCS-51內(nèi)核,但做了很多的改進(jìn)使得芯 片具有傳統(tǒng)51單片機(jī)不具備的功能。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。具有以下標(biāo)準(zhǔn)功能:8k字節(jié)Flash,512字節(jié)RAM,32位I/O口線, 看門狗定時器, 內(nèi)置4KB EEPROM,MAX810復(fù)位電路,3個16位定時

8、器/計數(shù)器,4個外部中斷,一個7向量4級 中斷結(jié)構(gòu)(兼容傳統(tǒng)51的5向量2級中斷結(jié)構(gòu)) ,全雙工串行口。另外STC89C52可降至0Hz靜態(tài)邏輯操作, 支持2種軟件可選擇節(jié)電模式。 空閑模式下,CPU停止工作,允許RAM、 定時器/計數(shù)器、 串口、 中斷繼續(xù)工作。 掉電保護(hù)方式下,RAM內(nèi)容被保存, 振蕩器被凍結(jié), 單片機(jī)一切工作停止,直到下一個中斷或硬件復(fù)位為止。最高運作頻率35MHz,6T/12T可選。STC89C52主要管腳有:XTAL1(19腳)和XTAL2(18腳)為振蕩器輸入輸出端口, 外接12MHz晶振。RST/Vpd(9腳)為復(fù)位輸入端口, 外接電阻電容組成的復(fù)位電路。VCC(

9、40腳)和VSS(20腳)為供電端口,分別接+5V電源的正負(fù)端。P0P3為可編程通用I/O腳,其功能用途由軟件定義,在本設(shè)計中,P0端口(3239腳)被定義為N1功能控 制端口,分別與N1的相應(yīng)功能管腳相連接,13腳定義為IR輸入端,10腳和11腳定義為I2C總線控制端口,分別連接N1的SDAS(18腳)和SCLS(19腳)端口,12腳、27腳及28腳定義為握手信號功能端口,連接主板CPU的相應(yīng)功能端,用于當(dāng)前制式的檢測及會聚 調(diào)整狀態(tài)進(jìn)入的控制功能。3.3 引腳說明1)P0口:P0口是一組8位漏極開路型雙向I/O口, 也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出 口用時,每位7能吸收電流的方式驅(qū)動8個

10、TTL邏輯門電路,對端口P0寫 “1”時, 可作為高阻抗輸入端用;在訪問外部數(shù)據(jù)存儲器或程序存儲器時,這組口線分時轉(zhuǎn)換地址(低8位)和數(shù) 據(jù)總線復(fù)用,在訪問期間激活內(nèi)部上拉電阻;在Flash編程時,P0口接收指令字節(jié),而在程序校驗時,輸出指令字節(jié),校驗時, 要求外接上拉電阻。2)P1口:P1是一個帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級可驅(qū)動 (吸收或 輸出電流)4個TTL邏輯門電路。 對端口寫 “1,”通過內(nèi)部的上拉電阻把端口拉到 高電平,此時可作輸入口。 作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被 外部信號拉低時會輸出一個電流(IIL);與AT89C51不同之處是,P1.0

11、和P1.1還可分別作為定時/計數(shù)器2的外部計數(shù)輸 入 (P1.0/T2)和輸入(P1.1/T2EX),Flash編程和程序校驗期間,P1接收低8位地址。3)P2口:P2是一個帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級可驅(qū)動(吸收 或輸出電流)4個TTL邏輯門電路。對端口P2寫“1,”通過內(nèi)部的上拉電阻把端 口拉到高電平, 此時可作輸入口,作輸入口使用時,因為內(nèi)部存在上拉電阻,某個 引腳被外部信號拉低時會輸出一個電流(IIL);在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器 (例如執(zhí)行MOVX DPTR指令)時,P2口送出高8位地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲器(如 執(zhí)行MOV

12、X RI指令)時,P2口輸出P2鎖存器的內(nèi)容;Flash編程或校驗時,P2亦接收高位地址和一些控制信號。4)P3口:8P3口是一組帶有內(nèi)部上拉電阻的8位雙向I/O口。P3口輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。對P3口寫入“1時,它們被內(nèi)部上拉電阻 拉高并可作為輸入端口。 此時,被外部拉低的P3口將用上拉電阻輸出電流(IIL);P3口除了作為一般的I/O口線外,更重要的用途是它的第二功能;P3口還接收一些用于Flash閃速存儲器編程和程序校驗的控制信號。5)其它的控制或復(fù)用引腳:(ALE/PROG 30訪問外部存儲器時,ALE(地址鎖存允許)的輸出用于鎖存地址的 低位字節(jié)。即

13、使不訪問外部存儲器,ALE端仍以不變的頻率輸出脈沖信號(此頻率是振蕩器頻率的1/6)。在訪問外部數(shù)據(jù)存儲器時,出現(xiàn)一個ALE脈沖。對Flash存儲器編程時,這個引腳用于輸入編程脈沖PROG;PSEN 29該引是外部程序存儲器的選通信號輸出端。當(dāng)AT89C51由外部程序存儲器取指令或常數(shù)時,每個機(jī)器周期輸出2個脈沖即兩次有效。但訪問外部數(shù)據(jù)存儲 器時,將不會有脈沖輸出;EA/Vpp 31夕卜部訪問允許端。當(dāng)該引腳訪問外部程序存儲器時,應(yīng)輸入低電平。要使AT89S51只訪問外部程序存儲器(地址為0000H-FFFFH),這時該引腳必須保 持低電平。對Flash存儲器編程時,用于施加Vpp編程電壓;

14、RST引腳:復(fù)位輸入。當(dāng)振蕩器工作時,RST引腳出現(xiàn)兩個機(jī)器周期以上高電平將使單片機(jī)復(fù)位。圖3單片機(jī)引腳3.4 計算器系統(tǒng)現(xiàn)狀計算器一般由運算器、控制器、存儲器、鍵盤、顯示器、電源和一些可選外圍設(shè)備及電(T2 P1.0匚(T2EX) P1.1CF1.JEP1.4EiMOSl .Pl.t C(SCK)P1.7CRSTE:網(wǎng)助P32U ;TirrT.P3.3c|:TC;P3.4 C(T1JF3.5C桶ft)F*3jeriXTAL2CXTAL1CShD匚1402393384375e76站32103130122Q132S1427153J1&251724182320ci VCC PCC PD 1

15、 (AD卄 PC2inxi gramF3Arm WEei#TiPhmu耐I T0FD4ZELUT圖21按下=后顯示的結(jié)果25六、設(shè)計總結(jié)通過這次單片機(jī)課程設(shè)計, 不僅加深了對單片機(jī)理論的理解, 將理論很好地應(yīng)用到實際 當(dāng)中去,而且還學(xué)會了如何去培養(yǎng)我們的創(chuàng)新精神,從而不斷地戰(zhàn)勝自己, 超越自己。 創(chuàng)新 可以是在原有的基礎(chǔ)上進(jìn)行改進(jìn), 使之功能不斷完善, 成為真己的東西。 設(shè)計結(jié)果能夠符合 題意,成功完成了此次課程設(shè)計要求,不只在乎這一結(jié)果,更加在乎的,是這個過程。這個 過程中, 花費了大量的時間和精力。 在高老師的精心指導(dǎo)和嚴(yán)格要求下, 獲得了豐富的理論 知識,極大地提高了實踐能力,單片機(jī)領(lǐng)域

16、這對我今后進(jìn)一步學(xué)習(xí)及工作有極大的幫助。然而我們也有許多不足之處。 在軟件編程時一定要考慮周到, 要有耐心要仔細(xì)。 還要與 硬件相聯(lián)系起來, 脫離了實物一切都是假的。 在理論上往往是可行的, 然而當(dāng)把程序燒入芯 片,進(jìn)行調(diào)試時就會遇到這樣那樣的的問題。 最糟的是當(dāng)我們辛苦把實物完成, 而那電路有 完全沒反應(yīng), 與我們的設(shè)想完全不同, 而我們又不知道是軟件問題還是硬件問題時, 就要靜 下心來, 一步一步來, 從硬件的芯片開始檢查是否短路等等, 而軟件又要不斷地進(jìn)行仿真調(diào) 試。然而我們遇到的問題除了焊接時可能導(dǎo)致的短路外, 還應(yīng)電壓不穩(wěn)定或過大而導(dǎo)致芯片 被燒毀, 總而言之, 我們還是缺少對芯片和各種器件的了解, 無法準(zhǔn)確的判斷出什么樣的現(xiàn) 象將是由原因引起的。就拿我來說吧, 一開始在繪制仿真和洞洞圖的時候就走了彎路, 本來有現(xiàn)成的模版, 我 只要在現(xiàn)成模版上加入4*4的鍵盤就可以, 但是一開始沒有認(rèn)真聽到老師說的, 就自己從繪 制最小系統(tǒng)開始,浪費的時間, 到后來也沒有模版繪制的好, 最后還是用了模版。 在焊板子 的時候, 錫絲和烙鐵接觸的時間也沒有把握好, 導(dǎo)致出現(xiàn)了虛焊, 后來還是得一點一點重新 焊過。 在焊的時候沒有看清楚洞洞圖, 結(jié)果導(dǎo)致了一小段連接口沒焊, 在下載程序

溫馨提示

  • 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

提交評論