版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上××大學××學院××系××課程設計電子計算器設計 學生姓名學 號所 在 系專業(yè)名稱班 級指導教師成 績 ××大學××學院二一二年七月摘要:智能儀器是計算機技術(shù)與測量技術(shù)以及儀器儀表技術(shù)相結(jié)合的產(chǎn)物。它具有傳統(tǒng)儀器無法比擬的優(yōu)點。在精度,可靠性方面都有了本質(zhì)性的改變。儀器硬件都趨于采用嵌入式系統(tǒng)、片上系統(tǒng)等結(jié)構(gòu)。電子計算器是能進行數(shù)學運算的手持機器,擁有集成電路芯片,采用 來實現(xiàn)電子計算器的各個功能。該電子計算器由按鍵輸入的數(shù)值顯示在7段數(shù)碼管上,但只
2、限4位數(shù);按加、減、乘、除鍵時,第一次輸入的值被存放在緩沖區(qū)中,當做被加、減、乘、除數(shù),且加、減、乘、除相對的運算指示燈會亮;接著輸入一個數(shù),之后若是按下“=”鍵,則此加、減、乘、除數(shù)被存放于另一個緩沖區(qū)中,與剛才輸入的數(shù)做運算,且相對應的運算指示燈熄滅;運算結(jié)果顯示在7段數(shù)碼管上。關(guān)鍵字:智能儀器 片上系統(tǒng) 電子計算器 集成電路芯片 緩沖區(qū)Abstract: Intelligent instrument is the computer technology and measurement technology and instrumentation technology combined w
3、ith the product. It has the incomparable advantage of traditional instruments. In the accuracy, reliability are all essential changes. Instrument hardware are tending to use embedded system, system on chip structure. An electronic calculator is able to perform mathematical operations on handheld mac
4、hine, has integrated circuit chip, used to realize each function of the electronic calculator. The electronic calculator from the key input values displayed in the7digital tube, but only4 digits; according to plus or minus, multiplication, addition to the key, the first input value is stored in the
5、buffer, as is plus or minus, multiplication, addition, subtraction, division, and, in addition to take relative operation indicator light; and then enter a number, then press" if = " button, the plus, minus, multiplication, the divisor is stored in a buffer, and just the number of inputs t
6、o do arithmetic, and the corresponding operation indication lamp is extinguished; calculation results in the7 digital tube on.Key words: Intelligent instrument system on chip electronic calculator integrated circuit chip buffer目 錄前言 11. 概述 1 1.1 應用背景 1 1.2 課題設計目標 1 1.3 課題設計任務與思路 12. 設計方案論述 2 2.1 系統(tǒng)總
7、體方案設計 2 2.2 系統(tǒng)設計框圖 23. 系統(tǒng)硬件設計 3 3.1 單片機最小系統(tǒng) 3 3.2 矩陣鍵盤 3 3.3 顯示部分 44. 程序設計 4 4,1 具體設計內(nèi)容 5 4.1.1 四則運算 5 4.1.2 鍵盤5 4.1.3 執(zhí)行過程5 4.1.4 錯誤提示54.2 主程序流程圖54.3 算數(shù)運算程序設計 75 系統(tǒng)調(diào)試76. 設計總結(jié)87. 參考文獻9附錄 9前言智能儀器是一種先進的技術(shù)產(chǎn)品,是計算機技術(shù)與測試技術(shù)相結(jié)合的產(chǎn)物,儀器內(nèi)部帶有處理能力很強的智能軟件。儀器儀表已不再是簡單的硬件實體,而是硬件、軟件相結(jié)合。近年來,智能儀器已開始從較為成熟的數(shù)據(jù)處理向知識處理發(fā)展,使其功
8、能向更高層次發(fā)展。 現(xiàn)在社會中,電子產(chǎn)品使用越來越廣泛!,本次課程設計就是針對智能儀器所設計的電子計算器。智能儀器是計算機技術(shù)與測量技術(shù)以及儀器儀表技術(shù)相結(jié)合的產(chǎn)物。它具有傳統(tǒng)儀器無法比擬的優(yōu)點,在精度,可靠性方面都有了本質(zhì)性的改變。智能儀器廣泛用于測量、控制、通信、醫(yī)學儀器以及科學研究等多個方面。近年來,隨著計算機技術(shù)與電子技術(shù)的不斷發(fā)展,智能儀器也發(fā)生了很大的變化,儀器硬件都趨于采用嵌入式系統(tǒng)、片上系統(tǒng)等結(jié)構(gòu)。電子計算器是能進行數(shù)學運算的手持機器,擁有集成電路芯片,但結(jié)構(gòu)簡單,比現(xiàn)代電腦結(jié)構(gòu)簡單得多,可以說是第一代的,且功能也較弱,但較為方便與廉價,可廣泛運用于商業(yè)交易中,是必備的之一。該
9、電子計算器包括矩陣鍵盤、LCD液晶顯示、AT89C51單片機以及電源四個部分,可實現(xiàn)加、減、乘、除四種運算,當做加、減、乘、除時相對的運算指示燈會亮,結(jié)果顯示在7段數(shù)碼管上。1概述1.1 應用背景我們的經(jīng)濟活動已經(jīng)到了已經(jīng)到了工業(yè)經(jīng)濟時代,并正在轉(zhuǎn)入高新技術(shù)產(chǎn)業(yè)迅猛發(fā)展時期。儀器是科學技術(shù)發(fā)展的重要“工具”。儀表能改善、擴展或補充人的官能。人們用去視、聽、嘗、摸外部事物,而顯微鏡、望遠鏡、聲級計、高溫計等儀器儀表,可以改善和擴展人的這些官能;另外,有些儀器儀表如、計數(shù)計等可感受和測量到人的感覺器官所不能感受到的物理量;還有些儀器儀表可以超過人的能力去記錄、計算和計數(shù),如高速照相機、
10、計算等。而隨著微電子技術(shù)的不斷發(fā)展,集成了CPU、存儲器、定時器/計數(shù)器、并行和串行接口、看門狗、前置放大器甚至AD、DA轉(zhuǎn)換器等電路在一塊芯片上的超大規(guī)模集成電路芯片(即單片機)出現(xiàn)了。以單片機為主體,將計算機技術(shù)與丈量控制技術(shù)結(jié)合在一起,又組成了所謂的“智能化丈量控制系統(tǒng)”,也就是智能儀器。本次課題就是獲得對智能儀器儀表領(lǐng)域的初步認識,我們小組選擇電子計算器的設計來作為共同探討的內(nèi)容。1.2 課題設計目標本次設計是用AT89S51單片機、LCD顯示器、控制按鍵為元件來設計的計算器。利用此設計熟悉單片機微控制器及C語言編程,對其片資源及各個I/O端口的功能和基本用途的了解。掌握k
11、eil應用程序開發(fā)環(huán)境,常用的LCD顯示器的使用方法和一般鍵盤的使用方法。1.3 課題設計任務與思路在進行一個系統(tǒng)設計時,首先要明確設計任務,本次設計的電子計算器主要完成-數(shù)的加/減/乘/除運算,使用1602LCD顯示器顯示數(shù)據(jù),具體如下:加法運算能運行-之間任何兩數(shù)值之間運算;減法運算結(jié)果可以實現(xiàn)計算結(jié)果的負數(shù)顯示;乘除法運算結(jié)果為-,如有小數(shù),則保留兩位小數(shù);能對錯誤進行提示,比如被除數(shù)是0則顯示“error”;設有清零鍵;可連續(xù)運算;按鍵排布:因為使用的是4*4鍵盤,所以要刪除部分不太重要的鍵,如小數(shù)點不使用,具體按鍵安排如下:0123456789+-×÷=復位2.
12、設計方案論述根據(jù)本次課題設計任務與目標,我們小組選用AT89S51單片機、LCD顯示器、控制按鍵為元件來設計電子計算器。2.1 系統(tǒng)總體設計方案本設計以AT89C51型號單片機為控制核心進行設計。AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器的低電壓,高性能CMOS8位微處理器,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。結(jié)果顯示采用LCD1602液晶,也叫1602字符型液晶它是一種專門用來顯示字母、數(shù)字、符號等的型液晶模塊它有若干
13、個5X7或者5X11等點陣字符位組成,每個點陣字符位都可以顯示一個字符。每位之間有一個點距的間隔每行之間也有間隔起到了字符間距和行間距的作用,正因為如此所以他不能顯示圖形。液晶顯示器以其微功耗、體積小、顯示內(nèi)容豐富、超薄輕巧的諸多優(yōu)點,在袖珍式儀表和低功耗應用系統(tǒng)中得到越來越廣泛的應用。 軟件設計采用C語言編程實現(xiàn),使用Keil開發(fā)環(huán)境,Keil C51是美國Keil Software公司出品的51系列兼容單片機C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護性上有明顯的優(yōu)勢,因而易學易用。用過匯編語言后再使用C來開發(fā),體會更加深刻。Keil C51軟件提供豐富的庫函數(shù)和
14、功能強大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到Keil C51生成的目標代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。2.2 系統(tǒng)設計框圖為體現(xiàn)總體設計方案,我們繪制了如圖1的系統(tǒng)設計框圖,在設計中,單片機處理從鍵盤輸入的數(shù)字并進行計算,計算結(jié)果顯示在LCD上。LCD1602液晶 AT89C51單片機電源矩陣鍵盤 圖1 系統(tǒng)設計框圖3. 系統(tǒng)硬件設計實現(xiàn)3.1單片機最小系統(tǒng) 本系統(tǒng)以AT89C51型號單片機為控制核心, AT89C51是一種可編程可擦除的低電壓,高性能8位
15、微處理器,由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,AT89C51是一種高效微控制器,其最小系統(tǒng)電路如圖2所示。圖2單片機最小系統(tǒng)3.2矩陣鍵盤 在按鍵輸入方面,我們采用4*4的矩陣鍵盤來實現(xiàn),具體連接電路如圖3所示。通過基于狀態(tài)機的按鍵掃描程序設計可實現(xiàn)4*4矩陣鍵盤的按鍵監(jiān)控。圖3 LCD1602連接圖3.3顯示部分在顯示計算結(jié)果上,我們采用字符型液晶LCD1602來顯示結(jié)果,LCD1602能夠同時顯示16x2即32個字符(16列2行),LCD1602的使用很普遍了,市面上字符液晶絕大多數(shù)是基于HD44780液晶芯片的,控制原理是完全相同的,因此HD44780寫的控制程序可以很方
16、便地應用于市面上大部分字符型液晶。字符型LCD通常有14條引腳線或16條引腳線的LCD,多出來的2條線是背光電源線VCC(15腳)地線GND(16腳),其控制原理與14腳的LCD完全一樣。其連接電路如圖4所示。圖4 LCD1602連接圖4.程序設計系統(tǒng)的軟件設計采用C語言編寫,對單片機進行編程實現(xiàn)各功能。程序是在Wnidows 環(huán)境下采用Keil uVision4編寫的,軟件的設計主要完成以下的功能: 矩陣鍵盤輸入檢測模塊; LCD顯示模塊;算術(shù)運算模塊;錯誤處理及提示模塊。4.1 具體設計內(nèi)容4.1.1 四則運算: 由于要設計的是簡單的計算器,可以進行四則運算,為了得到較好的顯示效果,采用L
17、CD 顯示數(shù)據(jù)和結(jié)果。4.1.2 矩陣鍵盤: 另外鍵盤包括數(shù)字鍵(09)、符號鍵(+、-、×、÷)、復位鍵和等號鍵,故只需要16 個按鍵即可,設計中采用集成的計算鍵盤。4.1.3 執(zhí)行過程: 開機顯示零,等待鍵入數(shù)值,當鍵入數(shù)字,通過LCD顯示出來,當鍵入+、-、*、/運算符,計算器在內(nèi)部執(zhí)行數(shù)值轉(zhuǎn)換和存儲,并等待再次鍵入數(shù)值,當再鍵入數(shù)值后將顯示鍵入的數(shù)值,按等號就會在LCD上輸出運算結(jié)果。4.1.4 錯誤提示: 當計算器執(zhí)行過程中有錯誤時,會在LCD上顯示相應的提示,如:當輸入的數(shù)值或計算得到的結(jié)果大于計算器的表示范圍時,計算器會在LCD上提示溢出;當除數(shù)為0時,計算器
18、會在LCD上提示錯誤。4.2主程序流程圖 開始初始化參數(shù)數(shù)據(jù)送顯示緩沖LCD顯示等待數(shù)據(jù)輸入結(jié)果送顯示等待數(shù)據(jù)輸入等待數(shù)據(jù)輸入結(jié)果送顯示結(jié)果送顯示本次按鍵根據(jù)上次功能鍵和輸入數(shù)據(jù)計算結(jié)果狀態(tài)清零輸入數(shù)值功能鍵復位鍵讀取鍵碼數(shù)字鍵有鍵輸入初始化LCD顯示圖5主程序流程圖 如圖5所示為主程序流程:當電源打開的時候,CPU進行復位,寄存器清零,接著LCD顯示清零,這時候我們可以輸入數(shù)值、功能鍵,數(shù)據(jù)送到CPU進行運算,再轉(zhuǎn)換成BCD碼送到顯示部分。這時候程序循環(huán)檢測是否有按鍵信號,如果矩陣鍵盤中有任意鍵按下,再將數(shù)據(jù)傳送至CPU運算,再將結(jié)果送至LCD顯示,如此循環(huán)下去。4.3算數(shù)運算程序設計開始
19、LCD顯示結(jié)果減加除乘運算符是?錯誤信息送顯示緩沖除數(shù)為0?運算結(jié)果溢出? Y Y N N圖6 算數(shù)運算流程圖5 系統(tǒng)調(diào)試 設計時,在仿真環(huán)境中對系統(tǒng)進行了仿真實驗,Proteus是英國Labcenter electronics公司出版的EDA。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機及外圍器件。它是目前最好的仿真單片機及外圍器件的工具。如圖7所示是Proteus仿真的電路截圖,我們根據(jù)設計方案在仿真環(huán)境中搭建了具體電路,并在Keil軟件開發(fā)集成環(huán)境中編寫了系統(tǒng)程序,通過Keil與Proteus的聯(lián)調(diào)實現(xiàn)了對系統(tǒng)的仿真。圖7系統(tǒng)仿真截圖 當開機啟動系統(tǒng)后,按鍵輸入數(shù)值,進行計算,
20、如圖8所示。圖8 LCD顯示 在開發(fā)板上聯(lián)機調(diào)試的過程中,先檢查各個管腳連接無誤,點都連接上了,LCD顯示正確,確認硬件圖檢查無誤后;檢查程序運行,查看各個子程序是否都輸入,各個程序聲明都存在,最后由程序?qū)雙roteus圖,成功下載程序后, LCD顯示正確,一切運行成功。6. 設計總結(jié) 在大家不斷努力下,我們終于圓滿完成了這次設計!每一次的課程那個設計都是在讓我不斷的提升自己親自動手解決問題的能力,充分運用理論和實踐相結(jié)合的鍛煉.隨著科學技術(shù)發(fā)展的日新日異,片上系統(tǒng)已經(jīng)成為當今計算機應用中空前活躍的領(lǐng)域,在生活中可以說得是無處不在。因此作為二十一世紀的大學來說掌握智能儀器的開發(fā)技術(shù)是十分重要
21、的。這一次的課程設計,無論是選題還是寫稿,從理論到實踐,學到很多很多的的東西,同時不僅可以鞏固了以前所學過的知識,而且學到了很多在書本上所沒有學到過的知識。在剛接觸無從下手到后來逐步完善,時刻在每道工序上的不放棄,要求做到自己最好,這一些都得到了回報。一個人能力與精力是有限的,但是團隊則不一樣,我們小組齊心協(xié)力也讓我們更輕松來做,培養(yǎng)我們的團隊合作意識。通過這次課程設計使我懂得了理論與實際相結(jié)合是很重要的,不僅要掌握理論知識,而且要把理論和實踐相結(jié)合起來,從理論中得出結(jié)論,才能學好這技能,從而提高自己的實際動手能力和獨立思考的能力。在設計的過程中難免會遇到過各種各樣的問題,同時在設計的過程中發(fā)
22、現(xiàn)了自己的不足之處,對以前所學過的知識理解得不夠深刻,以后一定會努力學習。 本課題的重點、難點是: (1) 對電子計算器的原理、結(jié)構(gòu)、應用等各方面從頭開始琢磨;(2) 以單片機為控制核心,采用矩陣鍵盤輸入數(shù)據(jù),LCD顯示結(jié)果;(3)軟件仿真做實驗 ;這次系統(tǒng)的開發(fā)可能該系統(tǒng)還存在著許多不盡如人意的地方,尤其是對于以前學過得知識遺忘了很多,在綜合應用上面也缺乏練習,有待進一步改善。7.參考文獻1 李群芳,張士軍,黃建(編著).單片微型計算機與接口技術(shù),北京:電子工業(yè)出版社,20082 例說51單片機(C語言版) 張義和、王敏男等 人民郵電出版社 2003.43 單片機原理與接口技術(shù)(第3版) 李
23、朝青編著 北京航空航天大學出版社 2007.64 MCS-51 系列單片機應用系統(tǒng)設計 系統(tǒng)配置與接口技術(shù) 何利民 北京航空航天大學出版社 5 MCS-51 系列單片機接口電路與應用程序?qū)嵗?沈德金 北京航空航天大學出版社 1999.86 C語言程序設計 黃明 大連理工大學出版社1997:201-2117 王選民.智能儀器原理及設計北京:清華大學出版社,2008附錄:程序代碼:#include "LCD1602.h"/*全局變量*/bit bFlag=0; /用于控制是否掃描按鍵unsigned char chKeystatu=0; /用于記錄按鍵掃描狀態(tài)機當前狀態(tài)unsi
24、gned char A=0; /記錄寫入LCD的字符或數(shù)字對應的地址unsigned char chN=0; /記錄按鍵鍵值unsigned char chOp=0; /記錄當前運算符unsigned char chOp1=0; /記錄上一次運算符float iNum1=0; /記錄當前操作數(shù)float iNum2=0; /記錄前一次操作數(shù)int iNum=0; /記錄運算結(jié)果int iNum0=0;bit bK=0; /用于控制計算的連續(xù)性/LCD1602第一行地址unsignedcharcode rgchAddr16=0x80,0x81,0x82,0x83,0x84,0x85,0x86,0
25、x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F; /LCD1602第二行地址 unsignedcharcode rgchAddr216=0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xcA,0xcB,0xcC,0xcD,0xcE,0xcF; /*函數(shù)聲明*/void Keyscan(void); /按鍵掃描void Timer0_Init(void); /定時器初始化/*主函數(shù)*/ void main()LCD1602_Ini(); /液晶初始化Timer0_Init(); while(1)int
26、i=15; /字符寫入地址循環(huán)計數(shù)變量if(bFlag) /中斷按鍵掃描bFlag=0;Keyscan();/按鍵識別/第一次取運算符和操作if(chOp!=0)&&(chOp!='=')&&(chOp1=0) chOp1=chOp; /取運算符 if(bK=0)iNum2=iNum1; /取操作數(shù)iNum1=0; /準備取第二次操作數(shù)/保證輸出一次計算結(jié)果后計算器能繼續(xù)計算 else if (bK=1) iNum2=iNum2;chOp=0; /準備取第二次操作符/第二次及以上取運算符else if(chOp!=0)&&(chO
27、p!='=')&&(chOp1!=0) switch(chOp1) /執(zhí)行上一次操作符 case '+': iNum2=iNum2+iNum1; break; case '-': iNum2=iNum2-iNum1; break; case '*': iNum2=iNum2*iNum1; break;case '/': iNum2=iNum2/iNum1; break; default: break; chOp1=chOp; /取本次操作符iNum1=0; /準備取下次操作數(shù)chOp=0; /準備取
28、下次操作符if(chOp='=') /輸出計算結(jié)果 EA=0; /關(guān)中斷以保證LCD寫時序 switch(chOp1) /執(zhí)行最后一次操作符case '+': iNum2=iNum2+iNum1; break;case '-': iNum2=iNum2-iNum1; break;case '*': iNum2=iNum2*iNum1; break;case '/': iNum2=iNum2/iNum1; break;default: break; if(iNum2-(int)(iNum2)=0) /計算結(jié)果為整數(shù)iNum=(int)(iNum2); /存輸出數(shù)if(iN
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年智能制造裝備入股合作協(xié)議范本
- 2024-2030年中國安全鞋內(nèi)鋼包頭市場競爭策略分析及發(fā)展趨勢研究報告
- 2024年度智能制造設備融資合作意向協(xié)議書3篇
- 2024-2030年中國反6烯十八酸項目可行性研究報告
- 梅河口康美職業(yè)技術(shù)學院《生態(tài)建筑》2023-2024學年第一學期期末試卷
- 眉山藥科職業(yè)學院《建筑室內(nèi)設計制圖與識圖》2023-2024學年第一學期期末試卷
- 2024年版公司股份轉(zhuǎn)讓及業(yè)務重組專項合同版B版
- 馬鞍山學院《鄉(xiāng)鎮(zhèn)總體規(guī)劃》2023-2024學年第一學期期末試卷
- 2024年度水暖電消防設施改造與節(jié)能降耗服務合同2篇
- 2024年小學三年級數(shù)學(北京版)-簡單分數(shù)的加減法-3學習任務單
- 2024年8月酒店銷售部工作計劃模板
- 大學美育-美育賞湖南(湖南高速鐵路職業(yè)技術(shù)學院)知到智慧樹答案
- 2024-2025學年語文二年級上冊 部編版期末測試卷(含答案)
- 菏澤學院課程與教學論(專升本)復習題
- 電梯井腳手架專項施工方案樣本
- 2024八大特殊作業(yè)安全管理培訓
- 2025年江西省水利投資集團有限公司第二批次校園招聘筆試備考題庫及答案解析
- 2024年小紅書種草營銷師考試題庫
- Unit 4 Plants around us(說課稿)-2024-2025學年人教PEP版(2024)英語三年級上冊
- Unit 5 The colourful world Part A Letters and sounds(說課稿)-2024-2025學年人教PEP版(2024)英語三年級上冊
- 2024年抖音直播平臺搭建合同
評論
0/150
提交評論