




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、大學(xué)學(xué)院系課程設(shè)計(jì)報(bào)告大學(xué)學(xué)院系課程設(shè)計(jì)電子計(jì)算器設(shè)計(jì) 學(xué)生姓名學(xué) 號(hào)所 在 系專業(yè)名稱班 級(jí)指導(dǎo)教師成 績(jī) 大學(xué)學(xué)院二一二年七月摘要:智能儀器是計(jì)算機(jī)技術(shù)與測(cè)量技術(shù)以及儀器儀表技術(shù)相結(jié)合的產(chǎn)物。它具有傳統(tǒng)儀器無(wú)法比擬的優(yōu)點(diǎn)。在精度,可靠性方面都有了本質(zhì)性的改變。儀器硬件都趨于采用嵌入式系統(tǒng)、片上系統(tǒng)等結(jié)構(gòu)。電子計(jì)算器是能進(jìn)行數(shù)學(xué)運(yùn)算的手持機(jī)器,擁有集成電路芯片,采用 來(lái)實(shí)現(xiàn)電子計(jì)算器的各個(gè)功能。該電子計(jì)算器由按鍵輸入的數(shù)值顯示在7段數(shù)碼管上,但只限4位數(shù);按加、減、乘、除鍵時(shí),第一次輸入的值被存放在緩沖區(qū)中,當(dāng)做被加、減、乘、除數(shù),且加、減、乘、除相對(duì)的運(yùn)算指示燈會(huì)亮;接著輸入一個(gè)數(shù),之后若
2、是按下“=”鍵,則此加、減、乘、除數(shù)被存放于另一個(gè)緩沖區(qū)中,與剛才輸入的數(shù)做運(yùn)算,且相對(duì)應(yīng)的運(yùn)算指示燈熄滅;運(yùn)算結(jié)果顯示在7段數(shù)碼管上。關(guān)鍵字:智能儀器 片上系統(tǒng) 電子計(jì)算器 集成電路芯片 緩沖區(qū)Abstract: Intelligent instrument is the computer technology and measurement technology and instrumentation technology combined with the product. It has the incomparable advantage of traditional instrume
3、nts. 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 machine, has integrated circuit chip, used to realize each function of the el
4、ectronic 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 buffer, as is plus or minus, multiplication, addition, subtraction, divisi
5、on, 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 to do arithmetic, and the corresponding operation indication lamp is extinguished; calcu
6、lation results in the7 digital tube on.Key words: Intelligent instrument system on chip electronic calculator integrated circuit chip buffer目 錄前言 11. 概述 1 1.1 應(yīng)用背景 1 1.2 課題設(shè)計(jì)目標(biāo) 1 1.3 課題設(shè)計(jì)任務(wù)與思路 12. 設(shè)計(jì)方案論述 2 2.1 系統(tǒng)總體方案設(shè)計(jì) 2 2.2 系統(tǒng)設(shè)計(jì)框圖 23. 系統(tǒng)硬件設(shè)計(jì) 3 3.1 單片機(jī)最小系統(tǒng) 3 3.2 矩陣鍵盤 3 3.3 顯示部分 44. 程序設(shè)計(jì) 4 4,1 具體設(shè)計(jì)內(nèi)容
7、 5 4.1.1 四則運(yùn)算 5 4.1.2 鍵盤5 4.1.3 執(zhí)行過(guò)程5 4.1.4 錯(cuò)誤提示54.2 主程序流程圖54.3 算數(shù)運(yùn)算程序設(shè)計(jì) 75 系統(tǒng)調(diào)試76. 設(shè)計(jì)總結(jié)87. 參考文獻(xiàn)9附錄 9前言智能儀器是一種先進(jìn)的技術(shù)產(chǎn)品,是計(jì)算機(jī)技術(shù)與測(cè)試技術(shù)相結(jié)合的產(chǎn)物,儀器內(nèi)部帶有處理能力很強(qiáng)的智能軟件。儀器儀表已不再是簡(jiǎn)單的硬件實(shí)體,而是硬件、軟件相結(jié)合。近年來(lái),智能儀器已開(kāi)始從較為成熟的數(shù)據(jù)處理向知識(shí)處理發(fā)展,使其功能向更高層次發(fā)展。 現(xiàn)在社會(huì)中,電子產(chǎn)品使用越來(lái)越廣泛!,本次課程設(shè)計(jì)就是針對(duì)智能儀器所設(shè)計(jì)的電子計(jì)算器。智能儀器是計(jì)算機(jī)技術(shù)與測(cè)量技術(shù)以及儀器儀表技術(shù)相結(jié)合的產(chǎn)物。它具有傳
8、統(tǒng)儀器無(wú)法比擬的優(yōu)點(diǎn),在精度,可靠性方面都有了本質(zhì)性的改變。智能儀器廣泛用于測(cè)量、控制、通信、醫(yī)學(xué)儀器以及科學(xué)研究等多個(gè)方面。近年來(lái),隨著計(jì)算機(jī)技術(shù)與電子技術(shù)的不斷發(fā)展,智能儀器也發(fā)生了很大的變化,儀器硬件都趨于采用嵌入式系統(tǒng)、片上系統(tǒng)等結(jié)構(gòu)。電子計(jì)算器是能進(jìn)行數(shù)學(xué)運(yùn)算的手持機(jī)器,擁有集成電路芯片,但結(jié)構(gòu)簡(jiǎn)單,比現(xiàn)代電腦結(jié)構(gòu)簡(jiǎn)單得多,可以說(shuō)是第一代的電子計(jì)算機(jī),且功能也較弱,但較為方便與廉價(jià),可廣泛運(yùn)用于商業(yè)交易中,是必備的辦公用品之一。該電子計(jì)算器包括矩陣鍵盤、LCD液晶顯示、AT89C51單片機(jī)以及電源四個(gè)部分,可實(shí)現(xiàn)加、減、乘、除四種運(yùn)算,當(dāng)做加、減、乘、除時(shí)相對(duì)的運(yùn)算指示燈會(huì)亮,結(jié)果顯
9、示在7段數(shù)碼管上。1概述1.1 應(yīng)用背景我們的經(jīng)濟(jì)活動(dòng)已經(jīng)到了已經(jīng)到了工業(yè)經(jīng)濟(jì)時(shí)代,并正在轉(zhuǎn)入高新技術(shù)產(chǎn)業(yè)迅猛發(fā)展時(shí)期。儀器是科學(xué)技術(shù)發(fā)展的重要“工具”。儀器儀表能改善、擴(kuò)展或補(bǔ)充人的官能。人們用感覺(jué)器官去視、聽(tīng)、嘗、摸外部事物,而顯微鏡、望遠(yuǎn)鏡、聲級(jí)計(jì)、酸度計(jì)、高溫計(jì)等儀器儀表,可以改善和擴(kuò)展人的這些官能;另外,有些儀器儀表如磁強(qiáng)計(jì)、射線計(jì)數(shù)計(jì)等可感受和測(cè)量到人的感覺(jué)器官所不能感受到的物理量;還有些儀器儀表可以超過(guò)人的能力去記錄、計(jì)算和計(jì)數(shù),如高速照相機(jī)、計(jì)算器等。而隨著微電子技術(shù)的不斷發(fā)展,集成了CPU、存儲(chǔ)器、定時(shí)器/計(jì)數(shù)器、并行和串行接口、看門狗、前置放大器甚至AD、DA轉(zhuǎn)換器等電路在
10、一塊芯片上的超大規(guī)模集成電路芯片(即單片機(jī))出現(xiàn)了。以單片機(jī)為主體,將計(jì)算機(jī)技術(shù)與丈量控制技術(shù)結(jié)合在一起,又組成了所謂的“智能化丈量控制系統(tǒng)”,也就是智能儀器。本次課題就是獲得對(duì)智能儀器儀表領(lǐng)域的初步認(rèn)識(shí),我們小組選擇電子計(jì)算器的設(shè)計(jì)來(lái)作為共同探討的內(nèi)容。1.2 課題設(shè)計(jì)目標(biāo)本次設(shè)計(jì)是用AT89S51單片機(jī)、LCD顯示器、控制按鍵為元件來(lái)設(shè)計(jì)的計(jì)算器。利用此設(shè)計(jì)熟悉單片機(jī)微控制器及C語(yǔ)言編程,對(duì)其片資源及各個(gè)I/O端口的功能和基本用途的了解。掌握keil應(yīng)用程序開(kāi)發(fā)環(huán)境,常用的LCD顯示器的使用方法和一般鍵盤的使用方法。1.3 課題設(shè)計(jì)任務(wù)與思路在進(jìn)行一個(gè)系統(tǒng)設(shè)計(jì)時(shí),首先要明確設(shè)計(jì)任務(wù),本次設(shè)
11、計(jì)的電子計(jì)算器主要完成-999999999999數(shù)的加/減/乘/除運(yùn)算,使用1602LCD顯示器顯示數(shù)據(jù),具體如下:加法運(yùn)算能運(yùn)行-999999999999之間任何兩數(shù)值之間運(yùn)算;減法運(yùn)算結(jié)果可以實(shí)現(xiàn)計(jì)算結(jié)果的負(fù)數(shù)顯示;乘除法運(yùn)算結(jié)果為-999999999999,如有小數(shù),則保留兩位小數(shù);能對(duì)錯(cuò)誤進(jìn)行提示,比如被除數(shù)是0則顯示“error”;設(shè)有清零鍵;可連續(xù)運(yùn)算;按鍵排布:因?yàn)槭褂玫氖?*4鍵盤,所以要?jiǎng)h除部分不太重要的鍵,如小數(shù)點(diǎn)不使用,具體按鍵安排如下:0123456789+-=復(fù)位2. 設(shè)計(jì)方案論述根據(jù)本次課題設(shè)計(jì)任務(wù)與目標(biāo),我們小組選用AT89S51單片機(jī)、LCD顯示器、控制按鍵為元
12、件來(lái)設(shè)計(jì)電子計(jì)算器。2.1 系統(tǒng)總體設(shè)計(jì)方案本設(shè)計(jì)以AT89C51型號(hào)單片機(jī)為控制核心進(jìn)行設(shè)計(jì)。AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的低電壓,高性能CMOS8位微處理器,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。結(jié)果顯示采用LCD1602液晶,也叫1602字符型液晶它是一種專門用來(lái)顯示字母、數(shù)字、符號(hào)等的點(diǎn)陣型液晶模塊它有若干個(gè)5X7或者5X11等點(diǎn)陣字符位組成,每個(gè)點(diǎn)陣字符位都可以顯示一個(gè)字符。每位之間有一個(gè)點(diǎn)距的間隔
13、每行之間也有間隔起到了字符間距和行間距的作用,正因?yàn)槿绱怂运荒茱@示圖形。液晶顯示器以其微功耗、體積小、顯示內(nèi)容豐富、超薄輕巧的諸多優(yōu)點(diǎn),在袖珍式儀表和低功耗應(yīng)用系統(tǒng)中得到越來(lái)越廣泛的應(yīng)用。 軟件設(shè)計(jì)采用C語(yǔ)言編程實(shí)現(xiàn),使用Keil開(kāi)發(fā)環(huán)境,Keil C51是美國(guó)Keil Software公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開(kāi)發(fā)系統(tǒng),與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。用過(guò)匯編語(yǔ)言后再使用C來(lái)開(kāi)發(fā),體會(huì)更加深刻。Keil C51軟件提供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開(kāi)發(fā)調(diào)試工具,全Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼
14、,就能體會(huì)到Keil C51生成的目標(biāo)代碼效率非常之高,多數(shù)語(yǔ)句生成的匯編代碼很緊湊,容易理解。在開(kāi)發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語(yǔ)言的優(yōu)勢(shì)。2.2 系統(tǒng)設(shè)計(jì)框圖為體現(xiàn)總體設(shè)計(jì)方案,我們繪制了如圖1的系統(tǒng)設(shè)計(jì)框圖,在設(shè)計(jì)中,單片機(jī)處理從鍵盤輸入的數(shù)字并進(jìn)行計(jì)算,計(jì)算結(jié)果顯示在LCD上。LCD1602液晶 AT89C51單片機(jī)電源矩陣鍵盤 圖1 系統(tǒng)設(shè)計(jì)框圖3. 系統(tǒng)硬件設(shè)計(jì)實(shí)現(xiàn)3.1單片機(jī)最小系統(tǒng) 本系統(tǒng)以AT89C51型號(hào)單片機(jī)為控制核心,AT89C51是一種可編程可擦除的低電壓,高性能8位微處理器,由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,AT89C51是一種高效微控制器,其最小系統(tǒng)電
15、路如圖2所示。圖2單片機(jī)最小系統(tǒng)3.2矩陣鍵盤 在按鍵輸入方面,我們采用4*4的矩陣鍵盤來(lái)實(shí)現(xiàn),具體連接電路如圖3所示。通過(guò)基于狀態(tài)機(jī)的按鍵掃描程序設(shè)計(jì)可實(shí)現(xiàn)4*4矩陣鍵盤的按鍵監(jiān)控。圖3 LCD1602連接圖3.3顯示部分在顯示計(jì)算結(jié)果上,我們采用字符型液晶LCD1602來(lái)顯示結(jié)果,LCD1602能夠同時(shí)顯示16x2即32個(gè)字符(16列2行),LCD1602的使用很普遍了,市面上字符液晶絕大多數(shù)是基于HD44780液晶芯片的,控制原理是完全相同的,因此HD44780寫的控制程序可以很方便地應(yīng)用于市面上大部分字符型液晶。字符型LCD通常有14條引腳線或16條引腳線的LCD,多出來(lái)的2條線是背光
16、電源線VCC(15腳)地線GND(16腳),其控制原理與14腳的LCD完全一樣。其連接電路如圖4所示。圖4 LCD1602連接圖4.程序設(shè)計(jì)系統(tǒng)的軟件設(shè)計(jì)采用C語(yǔ)言編寫,對(duì)單片機(jī)進(jìn)行編程實(shí)現(xiàn)各功能。程序是在Wnidows 環(huán)境下采用Keil uVision4編寫的,軟件的設(shè)計(jì)主要完成以下的功能: 矩陣鍵盤輸入檢測(cè)模塊; LCD顯示模塊;算術(shù)運(yùn)算模塊;錯(cuò)誤處理及提示模塊。4.1 具體設(shè)計(jì)內(nèi)容4.1.1 四則運(yùn)算: 由于要設(shè)計(jì)的是簡(jiǎn)單的計(jì)算器,可以進(jìn)行四則運(yùn)算,為了得到較好的顯示效果,采用LCD 顯示數(shù)據(jù)和結(jié)果。4.1.2 矩陣鍵盤: 另外鍵盤包括數(shù)字鍵(09)、符號(hào)鍵(+、-、)、復(fù)位鍵和等號(hào)鍵
17、,故只需要16 個(gè)按鍵即可,設(shè)計(jì)中采用集成的計(jì)算鍵盤。4.1.3 執(zhí)行過(guò)程: 開(kāi)機(jī)顯示零,等待鍵入數(shù)值,當(dāng)鍵入數(shù)字,通過(guò)LCD顯示出來(lái),當(dāng)鍵入+、-、*、/運(yùn)算符,計(jì)算器在內(nèi)部執(zhí)行數(shù)值轉(zhuǎn)換和存儲(chǔ),并等待再次鍵入數(shù)值,當(dāng)再鍵入數(shù)值后將顯示鍵入的數(shù)值,按等號(hào)就會(huì)在LCD上輸出運(yùn)算結(jié)果。4.1.4 錯(cuò)誤提示: 當(dāng)計(jì)算器執(zhí)行過(guò)程中有錯(cuò)誤時(shí),會(huì)在LCD上顯示相應(yīng)的提示,如:當(dāng)輸入的數(shù)值或計(jì)算得到的結(jié)果大于計(jì)算器的表示范圍時(shí),計(jì)算器會(huì)在LCD上提示溢出;當(dāng)除數(shù)為0時(shí),計(jì)算器會(huì)在LCD上提示錯(cuò)誤。4.2主程序流程圖 開(kāi)始初始化參數(shù)數(shù)據(jù)送顯示緩沖LCD顯示等待數(shù)據(jù)輸入結(jié)果送顯示等待數(shù)據(jù)輸入等待數(shù)據(jù)輸入結(jié)果送顯
18、示結(jié)果送顯示本次按鍵根據(jù)上次功能鍵和輸入數(shù)據(jù)計(jì)算結(jié)果狀態(tài)清零輸入數(shù)值功能鍵復(fù)位鍵讀取鍵碼數(shù)字鍵有鍵輸入初始化LCD顯示圖5主程序流程圖 如圖5所示為主程序流程:當(dāng)電源打開(kāi)的時(shí)候,CPU進(jìn)行復(fù)位,寄存器清零,接著LCD顯示清零,這時(shí)候我們可以輸入數(shù)值、功能鍵,數(shù)據(jù)送到CPU進(jìn)行運(yùn)算,再轉(zhuǎn)換成BCD碼送到顯示部分。這時(shí)候程序循環(huán)檢測(cè)是否有按鍵信號(hào),如果矩陣鍵盤中有任意鍵按下,再將數(shù)據(jù)傳送至CPU運(yùn)算,再將結(jié)果送至LCD顯示,如此循環(huán)下去。4.3算數(shù)運(yùn)算程序設(shè)計(jì)開(kāi)始 LCD顯示結(jié)果減加除乘運(yùn)算符是?錯(cuò)誤信息送顯示緩沖除數(shù)為0?運(yùn)算結(jié)果溢出? Y Y N N圖6 算數(shù)運(yùn)算流程圖5 系統(tǒng)調(diào)試 設(shè)計(jì)時(shí),在
19、仿真環(huán)境中對(duì)系統(tǒng)進(jìn)行了仿真實(shí)驗(yàn),Proteus軟件是英國(guó)Labcenter electronics公司出版的EDA工具軟件。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機(jī)及外圍器件。它是目前最好的仿真單片機(jī)及外圍器件的工具。如圖7所示是Proteus仿真的電路截圖,我們根據(jù)設(shè)計(jì)方案在仿真環(huán)境中搭建了具體電路,并在Keil軟件開(kāi)發(fā)集成環(huán)境中編寫了系統(tǒng)程序,通過(guò)Keil與Proteus的聯(lián)調(diào)實(shí)現(xiàn)了對(duì)系統(tǒng)的仿真。圖7系統(tǒng)仿真截圖 當(dāng)開(kāi)機(jī)啟動(dòng)系統(tǒng)后,按鍵輸入數(shù)值,進(jìn)行計(jì)算,如圖8所示。圖8 LCD顯示 在開(kāi)發(fā)板上聯(lián)機(jī)調(diào)試的過(guò)程中,先檢查各個(gè)管腳連接無(wú)誤,點(diǎn)都連接上了,LCD顯示正確,確認(rèn)硬件圖
20、檢查無(wú)誤后;檢查程序運(yùn)行,查看各個(gè)子程序是否都輸入,各個(gè)程序聲明都存在,最后由程序?qū)雙roteus圖,成功下載程序后, LCD顯示正確,一切運(yùn)行成功。6. 設(shè)計(jì)總結(jié) 在大家不斷努力下,我們終于圓滿完成了這次設(shè)計(jì)!每一次的課程那個(gè)設(shè)計(jì)都是在讓我不斷的提升自己親自動(dòng)手解決問(wèn)題的能力,充分運(yùn)用理論和實(shí)踐相結(jié)合的鍛煉.隨著科學(xué)技術(shù)發(fā)展的日新日異,片上系統(tǒng)已經(jīng)成為當(dāng)今計(jì)算機(jī)應(yīng)用中空前活躍的領(lǐng)域,在生活中可以說(shuō)得是無(wú)處不在。因此作為二十一世紀(jì)的大學(xué)來(lái)說(shuō)掌握智能儀器的開(kāi)發(fā)技術(shù)是十分重要的。這一次的課程設(shè)計(jì),無(wú)論是選題還是寫稿,從理論到實(shí)踐,學(xué)到很多很多的的東西,同時(shí)不僅可以鞏固了以前所學(xué)過(guò)的知識(shí),而且學(xué)到
21、了很多在書本上所沒(méi)有學(xué)到過(guò)的知識(shí)。在剛接觸無(wú)從下手到后來(lái)逐步完善,時(shí)刻在每道工序上的不放棄,要求做到自己最好,這一些都得到了回報(bào)。一個(gè)人能力與精力是有限的,但是團(tuán)隊(duì)則不一樣,我們小組齊心協(xié)力也讓我們更輕松來(lái)做,培養(yǎng)我們的團(tuán)隊(duì)合作意識(shí)。通過(guò)這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,不僅要掌握理論知識(shí),而且要把理論和實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論,才能學(xué)好這技能,從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過(guò)程中難免會(huì)遇到過(guò)各種各樣的問(wèn)題,同時(shí)在設(shè)計(jì)的過(guò)程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過(guò)的知識(shí)理解得不夠深刻,以后一定會(huì)努力學(xué)習(xí)。 本課題的重點(diǎn)、難點(diǎn)是: (1) 對(duì)電子計(jì)算器的
22、原理、結(jié)構(gòu)、應(yīng)用等各方面從頭開(kāi)始琢磨;(2) 以單片機(jī)為控制核心,采用矩陣鍵盤輸入數(shù)據(jù),LCD顯示結(jié)果;(3)軟件仿真做實(shí)驗(yàn) ;這次系統(tǒng)的開(kāi)發(fā)可能該系統(tǒng)還存在著許多不盡如人意的地方,尤其是對(duì)于以前學(xué)過(guò)得知識(shí)遺忘了很多,在綜合應(yīng)用上面也缺乏練習(xí),有待進(jìn)一步改善。7.參考文獻(xiàn)1 李群芳,張士軍,黃建(編著).單片微型計(jì)算機(jī)與接口技術(shù),北京:電子工業(yè)出版社,20082 例說(shuō)51單片機(jī)(C語(yǔ)言版) 張義和、王敏男等 人民郵電出版社 2003.43 單片機(jī)原理與接口技術(shù)(第3版) 李朝青編著 北京航空航天大學(xué)出版社 2007.64 MCS-51 系列單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì) 系統(tǒng)配置與接口技術(shù) 何利民 北京航
23、空航天大學(xué)出版社 5 MCS-51 系列單片機(jī)接口電路與應(yīng)用程序?qū)嵗?沈德金 北京航空航天大學(xué)出版社 1999.86 C語(yǔ)言程序設(shè)計(jì) 黃明 大連理工大學(xué)出版社1997:201-2117 王選民.智能儀器原理及設(shè)計(jì)北京:清華大學(xué)出版社,2008附錄:程序代碼:#include LCD1602.h/*全局變量*/bit bFlag=0; /用于控制是否掃描按鍵unsigned char chKeystatu=0; /用于記錄按鍵掃描狀態(tài)機(jī)當(dāng)前狀態(tài)unsigned char A=0; /記錄寫入LCD的字符或數(shù)字對(duì)應(yīng)的地址unsigned char chN=0; /記錄按鍵鍵值unsigned ch
24、ar chOp=0; /記錄當(dāng)前運(yùn)算符unsigned char chOp1=0; /記錄上一次運(yùn)算符float iNum1=0; /記錄當(dāng)前操作數(shù)float iNum2=0; /記錄前一次操作數(shù)int iNum=0; /記錄運(yùn)算結(jié)果int iNum0=0;bit bK=0; /用于控制計(jì)算的連續(xù)性/LCD1602第一行地址unsignedcharcode rgchAddr16=0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F; /LCD1602第二行地址 unsignedcharco
25、de 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í)器初始化/*主函數(shù)*/ void main()LCD1602_Ini(); /液晶初始化Timer0_Init(); while(1)int i=15; /字符寫入地址循環(huán)計(jì)數(shù)變量if(bFlag) /中斷按鍵掃描bFlag=0;Keyscan();/按鍵識(shí)別/第一次取運(yùn)算符和操作if(
26、chOp!=0)&(chOp!=)&(chOp1=0) chOp1=chOp; /取運(yùn)算符 if(bK=0)iNum2=iNum1; /取操作數(shù)iNum1=0; /準(zhǔn)備取第二次操作數(shù)/保證輸出一次計(jì)算結(jié)果后計(jì)算器能繼續(xù)計(jì)算 else if (bK=1) iNum2=iNum2;chOp=0; /準(zhǔn)備取第二次操作符/第二次及以上取運(yùn)算符else if(chOp!=0)&(chOp!=)&(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; /準(zhǔn)備取下次操作數(shù)chOp=0; /準(zhǔn)備取下次操作符if(chOp=) /輸出計(jì)算結(jié)果 EA=0; /關(guān)中斷以保證LCD寫時(shí)序 switch(chOp1) /執(zhí)行最后一次操作符case
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度解除雙方影視制作合作合同
- 2025年度科幻電影總導(dǎo)演專業(yè)聘用合同
- 二零二五年度電子商務(wù)平臺(tái)軟件使用及推廣許可協(xié)議
- 2025年度生態(tài)果園產(chǎn)權(quán)及種植技術(shù)引進(jìn)合同
- 2025年度紡織品普通采購(gòu)合同書
- 二零二五年度醫(yī)療健康行業(yè)業(yè)務(wù)員委托合同
- 二零二五年度手農(nóng)機(jī)售后服務(wù)與技術(shù)支持合同
- 2025年度環(huán)保項(xiàng)目投資欠款付款協(xié)商協(xié)議書
- 二零二五年度民間借貸合同-跨境電商供應(yīng)鏈融資
- 二零二五年度員工股權(quán)激勵(lì)與股權(quán)鎖定期協(xié)議
- GA/T 761-2024停車庫(kù)(場(chǎng))安全管理系統(tǒng)技術(shù)要求
- 《設(shè)施節(jié)水灌溉技術(shù)》課件
- 2023年涼山州西昌市人民醫(yī)院招聘衛(wèi)生專業(yè)技術(shù)人員考試真題
- 《中國(guó)傳統(tǒng)文化儒家》課件
- 小學(xué)三年級(jí)每日英語(yǔ)單選題100道及答案解析
- 咨詢公司顧問(wèn)崗位聘用協(xié)議
- 2024年糖尿病指南解讀
- 環(huán)衛(wèi)應(yīng)急預(yù)案8篇
- 《與顧客溝通的技巧》課件
- 2024年大學(xué)生創(chuàng)業(yè)投資意向書
- 【蘇寧易購(gòu)建設(shè)財(cái)務(wù)共享服務(wù)中心的現(xiàn)存問(wèn)題及優(yōu)化建議探析(論文)13000字】
評(píng)論
0/150
提交評(píng)論