第36節(jié):帶數(shù)碼管顯示的加法簡(jiǎn)易計(jì)算器
從業(yè)近十年!手把手教你單片機(jī)程序框架 第36講
開(kāi)場(chǎng)白:
這一節(jié)要做一個(gè)簡(jiǎn)單的計(jì)算器。這個(gè)計(jì)算器不帶小數(shù)點(diǎn),只能進(jìn)行不超過(guò)8位數(shù)據(jù)的加法運(yùn)算,它麻雀雖小但是五臟俱全,它能清晰地勾勒出商業(yè)計(jì)算器的程序框架和思路。讀者只要看懂本節(jié)程序框架的規(guī)律,以后自己想做一個(gè)復(fù)雜一點(diǎn)的計(jì)算器應(yīng)該是沒(méi)問(wèn)題的。復(fù)雜的計(jì)算器在算法上要用數(shù)組進(jìn)行特殊處理,不能簡(jiǎn)單地直接用C語(yǔ)言的+,-,*,/運(yùn)算符,這方面的內(nèi)容我會(huì)在以后的章節(jié)中跟大家分享。
這一節(jié)要教會(huì)大家兩個(gè)知識(shí)點(diǎn):
第一個(gè):數(shù)字按鍵的輸入和十進(jìn)制數(shù)值的移位方法。
第二個(gè):繼續(xù)加深理解按鍵與數(shù)碼管的關(guān)聯(lián)程序框架。
具體內(nèi)容,請(qǐng)看源代碼講解。
(1)硬件平臺(tái):
基于朱兆祺51單片機(jī)學(xué)習(xí)板。數(shù)字1鍵對(duì)應(yīng)S1鍵,數(shù)字2鍵對(duì)應(yīng)S2鍵,數(shù)字3鍵對(duì)應(yīng)S3鍵…. 數(shù)字9鍵對(duì)應(yīng)S9鍵, 數(shù)字0鍵對(duì)應(yīng)S10鍵。加號(hào)鍵對(duì)應(yīng)S13,等于號(hào)鍵對(duì)應(yīng)S14,清除復(fù)位按鍵對(duì)應(yīng)S16。其它按鍵不用。
(2)實(shí)現(xiàn)功能:
常用的加法計(jì)算器功能。有連加功能。
本程序有2個(gè)窗口。
第1個(gè)窗口:原始數(shù)據(jù)和運(yùn)算結(jié)果窗口。 比如加法運(yùn)算中的被加數(shù)
第2個(gè)窗口:第二個(gè)參與運(yùn)行的數(shù)據(jù)窗口。比如加法運(yùn)算中的加數(shù)
(3)源代碼講解如下:
總結(jié)陳詞:
這節(jié)講了加法簡(jiǎn)易計(jì)算器的程序項(xiàng)目。為了讓讀者理解運(yùn)動(dòng),按鍵,顯示是如何有規(guī)律關(guān)聯(lián)起來(lái)的,下節(jié)會(huì)繼續(xù)講一個(gè)相關(guān)的小項(xiàng)目程序。欲知詳情,請(qǐng)聽(tīng)下回分解-----數(shù)碼管作為儀表盤(pán)顯示跑馬燈的方向,速度和運(yùn)行狀態(tài)。