版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告目錄課程設(shè)計(jì)目的……………硬件電路設(shè)計(jì)……………2.1AT89C51的功能介紹……………2.1.1簡單概述…………2.1.2主要功能特性·……………………2.1.3AT89C51的引腳介紹………………2.2顯示電路·………………2.2.1LM016L的結(jié)構(gòu)及功能……………2.2.2LM016L的引腳功能介紹…………2.2.3LM016L的電路接線圖……………2.3振蕩電路設(shè)計(jì)………………………2.4鍵盤電路設(shè)計(jì)………………2.5鍵盤掃描子程序設(shè)計(jì)…………………2.6總電路……………程序設(shè)計(jì)與說明…………3.1程序主流程圖………………結(jié)論……………體會與收獲……………………參考文獻(xiàn)……………單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第1頁。單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第1頁。一.課程設(shè)計(jì)的目的
單片機(jī)的出現(xiàn)是計(jì)算機(jī)制造技術(shù)高速發(fā)展的產(chǎn)物,它是嵌入式控制系統(tǒng)的核心,如今,它已廣泛的應(yīng)用到我們生活的各個(gè)領(lǐng)域,電子、科技、通信、汽車、工業(yè)等。本次設(shè)計(jì)是設(shè)計(jì)一個(gè)簡易計(jì)算器,能夠進(jìn)行多位簡單的加減運(yùn)算,同時(shí)它能支持2位整數(shù)運(yùn)算。它主要由STC89C52單片機(jī)、數(shù)碼管,鍵盤等模塊組成。本計(jì)算器是將鍵盤輸入信息經(jīng)處理通過緩存,送入數(shù)碼管顯示,鍵盤采用行列式,數(shù)碼管采用動(dòng)態(tài)掃描方式,計(jì)算功能通過軟件實(shí)現(xiàn),用匯編語言對單片機(jī)可編
芯片進(jìn)行編程,實(shí)現(xiàn)對計(jì)算器的設(shè)計(jì)。二、硬件電路設(shè)計(jì)2.1AT89C51的功能介紹2.1.1簡單概述AT89C51是一種帶4K字節(jié)閃存可編程可擦除只讀存儲器FPEROM—FlashProgrammableandErasableReadOnlyMemory的低電壓、高性能CMOS8位微處理器俗稱單片機(jī)。AT89C51是一種帶2K字節(jié)閃存可編程可擦除只讀存儲器的單片機(jī)。單片機(jī)的可擦除只讀存儲器可以反復(fù)擦除1000次。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造與工業(yè)標(biāo)準(zhǔn)MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個(gè)芯片中ATMEL的AT89C51是一種高效微控制器AT89C2051是它的一種精簡版本AT89C51單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。外形及引腳排列如圖2.1所示。圖2.1AT89C51芯片模型2.1.2主要功能特性(1)4K字節(jié)可編程閃爍存儲器。單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第2頁。(2)32個(gè)雙向I/O口128×8位內(nèi)部RAM。單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第2頁。(3)2個(gè)16位可編程定時(shí)/計(jì)數(shù)器中斷時(shí)鐘頻率0-24MHz。(4)可編程串行通道。(5)5個(gè)中斷源。(6)2個(gè)讀寫中斷口線。(7)低功耗的閑置和掉電模式。(8)片內(nèi)振蕩器和時(shí)鐘電路。2.1.3AT89C51的引腳介紹(1)電源引腳。電源引腳接入單片機(jī)的工作電源。VCC(40引腳)電源。GND(20引腳)接地。(2)時(shí)鐘引腳。XTAL1(19引腳)反相放大器和時(shí)鐘發(fā)生器電路的輸入端。XTAL2(20引腳)片內(nèi)振蕩器反相放大器的輸出端。(3)復(fù)位RST(9引腳)。在振蕩器運(yùn)行時(shí)有兩個(gè)機(jī)器周期24個(gè)振蕩周期以上的高電平出現(xiàn)在此引腳時(shí)將使單片機(jī)復(fù)位只要這個(gè)腳保持高電平,51芯片便循環(huán)復(fù)位。(4)EA/Vpp(31引腳)。EA為外部程序存儲器訪問允許控制端。當(dāng)它為高電平時(shí)單片機(jī)讀片內(nèi)程序存儲器在PC值超過0FFFH后將自動(dòng)轉(zhuǎn)向外部程序存儲器。當(dāng)它為低電平時(shí)只限定在外部程序存儲器地址為0000H~FFFFH。Vpp為該引腳的第二功能為編程電壓輸入端。(5)ALE/PROG(30引腳)。ALE為低八位地址鎖存允許信號。在系統(tǒng)擴(kuò)展時(shí)ALE的負(fù)跳沿將發(fā)出的第八位地址鎖存在外接的地址鎖存器然后再作為數(shù)據(jù)端口。PROG為該引腳的第二功能在對片外存儲器編程時(shí)此引腳為編程脈沖輸入端。(6)PSEN(29引腳)。片外程序存儲器的讀選通信號。在單片機(jī)讀片外程序存儲器時(shí)此引腳輸出脈沖的負(fù)跳沿作為讀片外程序存儲器的選通信號。(7)pin39-pin32為P0.0-P0.7輸入輸出腳稱為P0口。P0是一個(gè)8位漏極開路型雙向I/O口。內(nèi)部不帶上拉電阻,當(dāng)外接上拉電阻時(shí)P0口能以吸收電流的方式驅(qū)動(dòng)八個(gè)LSTTL負(fù)載電路。通常在使用時(shí)外接上拉電阻用來驅(qū)動(dòng)多個(gè)數(shù)碼管。在訪問外部程序和外部數(shù)據(jù)存儲器時(shí)P0口是分時(shí)轉(zhuǎn)換的地址(低8位)/數(shù)據(jù)總線不需要外接上拉電阻。(8)Pin1-Pin8為P1.0-P1.7輸入輸出腳稱為P1口。P1口是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/0口。P1口能驅(qū)動(dòng)4個(gè)LSTTL負(fù)載。單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第3頁。(9)Pin21-Pin28為P2.0-P2.7輸入輸出腳稱為P2口。P2口是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口P2口能驅(qū)動(dòng)4個(gè)LSTTL負(fù)載。端口置1時(shí)內(nèi)部上拉電阻將端口拉到高電平作輸入用。對內(nèi)部Flash程序存儲器編程時(shí)接收高8位地址和控制信息。在訪問外部程序和16位外部數(shù)據(jù)存儲器時(shí)P2口送出高8位地址。而在訪問8位地址的外部數(shù)據(jù)存儲器時(shí)其引腳上的內(nèi)容在此期間不會改變。單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第3頁。(10)Pin10-Pin17為P3.0-P3.7輸入輸出腳稱為P3口。P3口是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口P2口能驅(qū)動(dòng)4個(gè)LSTTL負(fù)載這8個(gè)引腳還用于專門的第二功能。端口置1時(shí)內(nèi)部上拉電阻將端口拉到高電平作輸入用。對內(nèi)部Flash程序存儲器編程時(shí)接控制信息。2.2顯示電路2.2.1LM016L的結(jié)構(gòu)及功能LM016L液晶模塊采用HD44780控制器,HD44780具有簡單而功能較強(qiáng)的指令集,可以實(shí)現(xiàn)字符移動(dòng)閃爍等功能,LM016L與單片機(jī)MCU通訊可采用8位或4位并行傳輸兩種方式,HD44780控制器由兩個(gè)8位寄存器,指令寄存器IR和數(shù)據(jù)寄存器DR。IR用于寄存指令碼只能寫入不能讀出DR用于寄存數(shù)據(jù),數(shù)據(jù)由內(nèi)部操作自動(dòng)寫入DDRAM和CGRAM,或者暫存從DDRAM和CGRAM讀出的數(shù)據(jù),BF為1時(shí)液晶模塊處于內(nèi)部模式,不響應(yīng)外部操作指令和接受數(shù)據(jù),DDTAM用來存儲顯示的字符能存儲80個(gè)字符碼,CGROM由8位字符碼生成5*7點(diǎn)陣字符160中和5*10點(diǎn)陣字符32種。CGRAM是為用戶編寫特殊字符留用的,它的容量僅64字節(jié),可以自定義8個(gè)5*7點(diǎn)陣字符或者4個(gè)5*10點(diǎn)陣字符,AC可以存儲DDRAM和CGRAM的地址。如果地址碼隨指令寫入IR,則IR自動(dòng)把地址碼裝入AC同時(shí)選擇DDRAMCGRAM單元。2.2.2LM016L的引腳功能介紹1602字符型LCD通常有14條引腳線或16條引腳線的LCD多出來的2條線是背光電源線。VCC(15腳)和地線GND(16腳)其控制原理與14腳的LCD完全一樣其中。(1)VSS一般接地。(2)VDD接電源+5V。(3)V0液晶顯示器對比度調(diào)整端接正電源時(shí)對比度最弱接地電源時(shí)對比度最高對比度過高時(shí)會產(chǎn)生“鬼影”使用時(shí)可以通過一個(gè)10K的電位器調(diào)整對比度。(4)RSRS為寄存器選擇高電平1時(shí)選擇數(shù)據(jù)寄存器、低電平0時(shí)選擇指令寄存器。(5)R/WR/W為讀寫信號線高電平(1)時(shí)進(jìn)行讀操作低電平(0)時(shí)進(jìn)行寫操作。當(dāng)RS和R/W共同為低電平時(shí)可以寫入指令或者顯示地址。當(dāng)RS為低電平R/W為高電平時(shí)可以讀忙信號。當(dāng)RS為高電平R/W為低電平時(shí)可以寫入數(shù)據(jù)。(6)EE(或EN)端為使能(enable)端下降沿使能。單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第4頁。單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第4頁。2.2.3LM016L的電路接線圖2.3振蕩電路設(shè)計(jì)單片機(jī)內(nèi)部有一個(gè)高增益、反相放大器其輸入端為芯片引腳XTAL1其輸出端為引腳XTAL2。通過這兩個(gè)引腳在芯片外并接石英晶體振蕩器。大小為1MHZ和兩只電容電容和一般取30pF。這樣就構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。振蕩電路脈沖經(jīng)過二分頻后作為系統(tǒng)的時(shí)鐘信號再在二分頻的基礎(chǔ)上三分頻產(chǎn)生ALE信號此時(shí)得到的信號時(shí)機(jī)器周期信號。2.4鍵盤電路設(shè)計(jì)計(jì)算器所需按鍵有:
數(shù)字鍵:’1’,’2’,’3’,’4’,’5’,’6’,’7’,’8’,’9’,’0’,’.’
功能鍵:‘+’,‘-’,‘*’‘/’‘=’
單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第5頁。共計(jì)16個(gè)按鍵,采用4*4矩陣鍵盤,鍵盤的行和列之間都有公共端相連,四行和四列的8個(gè)公共端分別接P3.0~P3.7,這樣掃描P3口就可以完成對矩陣鍵盤的掃描,通過對16個(gè)按鍵進(jìn)行編碼,從而得到鍵盤的口地址,對比P3口的掃描結(jié)果和各按鍵的地址,我們就可以得到是哪個(gè)鍵按下,從而完成鍵盤掃描的功能。單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第5頁。2.5鍵盤掃描子程序設(shè)計(jì)要進(jìn)行數(shù)據(jù)的計(jì)算就必須先進(jìn)行數(shù)據(jù)的輸入,也就必須確定按鍵輸入的數(shù)值是什么,這就需要對鍵盤進(jìn)行掃描,從而確定究竟是哪個(gè)鍵按下。
對于鍵盤的掃描,這里采用行列掃描的方法來完成對鍵盤的掃描。原理就是先確定按鍵在哪一行,接著再確定是哪一列,這樣就可以知道是哪個(gè)按鍵被按下了。我是將P3口作為按鍵掃描口的,比如,先使行線輸出全“0”,讀列線,再使列線輸出全為“0”,讀行線。兩次結(jié)果再相與,則得到一個(gè)值為鍵值。同理,每個(gè)按鍵都會有一個(gè)對應(yīng)的十六進(jìn)制值,我把它們列出來進(jìn)行一一對應(yīng)就行了,下面是掃描按鍵圖。
單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第6頁。2.6總電路單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第6頁。三、程序設(shè)計(jì)與說明單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第7頁。3.1程序主流程圖單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第7頁。單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第8頁。程序主流程圖單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第8頁。四、結(jié)論完成硬件和軟件的設(shè)計(jì)和制作后,進(jìn)行系統(tǒng)的調(diào)試,并處理不斷出現(xiàn)的問題。對于計(jì)算器的性能,主要的衡量指標(biāo)就在于計(jì)算的精度,本次制作的計(jì)算器性能情況如下:加法運(yùn)算:四位整數(shù)加法運(yùn)算,和值不超過999999,若超過上限,則顯示錯(cuò)誤提示。單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第9頁。減法運(yùn)算:四位正整數(shù)減法運(yùn)算。單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第9頁。乘法運(yùn)算:積不超過999999的整數(shù)乘法運(yùn)算,若超出上限,顯示錯(cuò)誤提示。除法運(yùn)算:整數(shù)除法,既計(jì)算結(jié)果為可顯示小數(shù)。五、體會與收獲通過這次課程設(shè)計(jì),最大的一點(diǎn)體會是單片機(jī)學(xué)的不夠扎實(shí),不會的很多啊,當(dāng)然這次的課程設(shè)計(jì)做計(jì)算器程序用的是c語言,不是課上初學(xué)的匯編,所以很難適應(yīng),盡管大家都知道匯編編這個(gè)程序也很困難,但還是互相學(xué)習(xí),到處找資料看,問同學(xué),所以我的軟件主程序才能編譯成功,系統(tǒng)才能調(diào)試出結(jié)果。很感謝那些熱心教導(dǎo)我的同學(xué)和指導(dǎo)我的老師。首先在硬件電路的制作中,也就是焊板子,由于我的粗心,我芯片插槽的一個(gè)管腳沒焊進(jìn)去,別的都好了,就這個(gè)腳沒有用了,后來在老師的幫助下,我將插槽里德那個(gè)管腳拔出來,換了個(gè)腳在插進(jìn)去,然后用萬用表測試后證明是有效的,心里還是很高興的。整個(gè)硬件電路還是做得令自己比較滿意的。單片機(jī)簡易計(jì)算器課程設(shè)計(jì)報(bào)告全文共11頁,當(dāng)前為第10頁。在軟件方面,感覺困難更多一些,一開始真的很著急,毫無頭緒啊,一時(shí)間,百度,論壇,貼吧逛了個(gè)遍,找了很多資料,也參考了同學(xué)的程序,其中每一個(gè)子程序模塊都認(rèn)真去讀,去分析,化為己用,最重要的按鍵掃描和顯示程序,還有包括加減乘除的運(yùn)算程序,還了解了c語言在單片機(jī)編程中的一些特點(diǎn),包括函數(shù)的聲明和調(diào)用等等。而且在用uvison編譯的時(shí)候出了很多問題,其中一個(gè)就是關(guān)于頭文件的,要加上“#include<STC12C5410AD.H>”,不僅如此,還要將有關(guān)STC12C5410AD的文件覆蓋在
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 年終工作總結(jié)個(gè)人報(bào)告(10篇)
- 中專自我鑒定合集15篇
- 標(biāo)準(zhǔn)設(shè)備購買合同
- 西安邁科商業(yè)中心連體超高層結(jié)構(gòu)設(shè)計(jì)-龍輝元張曉宇王福安
- 師德師風(fēng)個(gè)人學(xué)習(xí)心得范文
- 班級建設(shè)目標(biāo)
- 2023六年級語文上冊 第八單元 28 有的人-紀(jì)念魯迅有感教學(xué)實(shí)錄新人教版
- 簡愛讀后感10篇【100-1000字】
- 教師的辭職報(bào)告15篇
- 餐廳服務(wù)員辭職申請書集錦6篇
- 傲盾抗DDOS防火墻安裝使用手冊
- 衛(wèi)生部健康體檢項(xiàng)目目錄
- 最新國家開放大學(xué)電大《工程數(shù)學(xué)》期末題庫及答案
- 《碗中日月》:作家丁立梅親自示范中考、高考真題作文60篇
- 警犬訓(xùn)導(dǎo)專業(yè)士兵職業(yè)技能鑒定理論考試題庫(帶答案)
- 流行病學(xué)簡答題匯總含答案
- 海底噴流沉積型礦床-sedex
- 青島版二年級上冊數(shù)學(xué)知識點(diǎn)匯總
- 學(xué)校安保服務(wù)管理理念及服務(wù)內(nèi)容措施
- 醫(yī)院感染監(jiān)測清單
- Q∕SY 05592-2019 油氣管道管體修復(fù)技術(shù)規(guī)范
評論
0/150
提交評論