<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于AT89C51單片機(jī)的十進(jìn)制計(jì)算器系統(tǒng)設(shè)計(jì)

          基于AT89C51單片機(jī)的十進(jìn)制計(jì)算器系統(tǒng)設(shè)計(jì)

          作者: 時(shí)間:2015-04-30 來(lái)源:網(wǎng)絡(luò) 收藏

            本設(shè)計(jì)是基于單片機(jī)進(jìn)行的十進(jìn)制系統(tǒng)設(shè)計(jì),可以完成的鍵盤(pán)輸入,進(jìn)行加、減、乘、除4位無(wú)符號(hào)數(shù)字的簡(jiǎn)單四則運(yùn)算,并在LED上相應(yīng)的顯示結(jié)果。硬件方面從功能考慮,首先選擇內(nèi)部存儲(chǔ)資源豐富的單片機(jī),輸入采用4×4矩陣鍵盤(pán)。顯示采用4位7段共陽(yáng)極LED動(dòng)態(tài)顯示。軟件方面從分析功能、流程圖設(shè)計(jì),再到程序的編寫(xiě)進(jìn)行系統(tǒng)設(shè)計(jì)。

          本文引用地址:http://www.ex-cimer.com/article/273429.htm

            引言

            本系統(tǒng)采用單片機(jī)作為控制器,用來(lái)實(shí)現(xiàn)實(shí)現(xiàn)四位數(shù)的“+”,“-”,“*”,“/”運(yùn)算,運(yùn)算結(jié)果通過(guò)數(shù)碼管顯示,并具有有清零功能。AT89C51具有如下特點(diǎn):40個(gè)引腳,4k BytesFlash片內(nèi)程序存儲(chǔ)器,128 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),32個(gè)外部雙向輸入/輸出(I/O)口,5個(gè)中斷優(yōu)先級(jí)2層中斷嵌套中斷,2個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,看門(mén)狗(WDT)電路,片內(nèi)時(shí)鐘振蕩器。

            1總體設(shè)計(jì)方案

            1.1系統(tǒng)組成與工作原理

            本系統(tǒng)以51單片機(jī)為主控核心,與矩陣鍵盤(pán)、晶振、LED顯示管模塊一起組合而成。其工作過(guò)程為:首先存儲(chǔ)單元初始化,顯示初始值和鍵盤(pán)掃描,判斷按鍵位置,得出按鍵值,單片機(jī)則對(duì)數(shù)據(jù)進(jìn)行儲(chǔ)存與相應(yīng)的處理轉(zhuǎn)換,之后送入數(shù)碼管動(dòng)態(tài)顯示。將運(yùn)算結(jié)果送入數(shù)碼管動(dòng)態(tài)顯示。本設(shè)計(jì)只能進(jìn)行結(jié)果不超過(guò)四位數(shù)的運(yùn)算,其功能如下:

            (1)數(shù)字鍵“0”到“9”用數(shù)碼管顯示。

            (2)加法運(yùn)算:加數(shù)與被加數(shù)均不能超過(guò)9999,加法最終結(jié)果不能超過(guò)9999.

            (3)減法運(yùn)算:減法運(yùn)算正常邏輯為大的數(shù)值減去小的數(shù)值,本計(jì)算器亦如此,只能進(jìn)行正常邏輯的運(yùn)算,如為小的數(shù)值減去大的數(shù)值,則將得到的負(fù)數(shù)與535相加,得到相應(yīng)的結(jié)果,即如果想進(jìn)行小數(shù)減大數(shù)的運(yùn)算,則把得到的結(jié)果減去535即得到負(fù)數(shù)的正確結(jié)果。

            (4)乘法運(yùn)算:與上述方法一樣,計(jì)算結(jié)果不能超出9999,如溢出則顯示結(jié)果只有后三位。

            (5)除法運(yùn)算:除數(shù)與被除數(shù)均不能超過(guò)9999,計(jì)算結(jié)果只顯示整數(shù)部分。

            (6)等于鍵:只有按下等于鍵才能將運(yùn)算結(jié)果顯示出來(lái),否則一直顯示上一個(gè)數(shù)。

            (7)清零功能:程序不穩(wěn)定或出現(xiàn)錯(cuò)誤時(shí),運(yùn)用清零鍵回到初始狀態(tài),也可用復(fù)位鍵清零。

            2系統(tǒng)硬件設(shè)計(jì)

            2.1系統(tǒng)硬件總體設(shè)計(jì)

            本系統(tǒng)由鍵盤(pán)矩陣、LED顯示管、這幾個(gè)部分組成,鍵盤(pán)輸入鍵值,LED顯示管顯示當(dāng)前按鍵及結(jié)果。硬件總體設(shè)計(jì)圖1如下:

            

           

            圖1硬件總體設(shè)計(jì)圖

            2.2矩陣掃描顯示當(dāng)前按鍵模塊

            利用AT89S51單片機(jī)的P0端口的P0.0 - P0.7連接到一個(gè)七段數(shù)碼管的a - h的筆段上,數(shù)碼管的公共端接電源。矩陣掃描顯示當(dāng)前按鍵模塊見(jiàn)圖2.

            

           

            圖2矩陣掃描顯示當(dāng)前按鍵模塊

            2.3鍵盤(pán)布局模塊

            矩陣鍵盤(pán)的工作原理:計(jì)算器的鍵盤(pán)布局如圖3所示:一般有16個(gè)鍵組成,在單片機(jī)中正好可以用一個(gè)P口實(shí)現(xiàn)16個(gè)按鍵功能,這種形式在單片機(jī)系統(tǒng)中也最常用。

            

           

            圖3計(jì)算器的鍵盤(pán)布局模塊


          上一頁(yè) 1 2 下一頁(yè)

          關(guān)鍵詞: AT89C51 計(jì)算器

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();