基于AT89C51單片機(jī)的十進(jìn)制計(jì)算器系統(tǒng)設(shè)計(jì)
3系統(tǒng)軟件設(shè)計(jì)
本文引用地址:http://butianyuan.cn/article/273429.htm3.1系統(tǒng)軟件總體設(shè)計(jì)
本系統(tǒng)的軟件流程如圖4所示。
圖4系統(tǒng)的軟件流程圖
3.2顯示程序模塊
顯示程序?qū)⒁@示數(shù)值的千位、百位、十位與個(gè)位分別計(jì)算出來,通過P0段選口輸出數(shù)值,通過位選口P3^3、P3^4、P3^5、P3^6實(shí)現(xiàn)動(dòng)態(tài)顯示。
LED數(shù)碼管,實(shí)現(xiàn)七段數(shù)碼管的顯示四位十進(jìn)制數(shù)。通過段選來顯示按鍵及計(jì)算結(jié)果的數(shù)值。由于本硬件設(shè)計(jì)選用的是共陽接法,所以對應(yīng)的段碼表如下3.3鍵盤掃描模塊
本次鍵盤掃描程序采用的是行列翻轉(zhuǎn)法掃描鍵盤,即先置行為0,讀列值,存在變量1中,然后把列置為0,讀行值,存在變量2中,把變量1和變量2相加即為按鍵對應(yīng)的鍵值,下表為相應(yīng)按鍵對應(yīng)的鍵值
4結(jié)束語
本計(jì)算器是以51系列單片機(jī)為核心構(gòu)成計(jì)算器系統(tǒng),該設(shè)計(jì)為能進(jìn)行簡易算術(shù)運(yùn)算的計(jì)算器,在現(xiàn)有的硬件條件下只能進(jìn)行結(jié)果不超過四位數(shù)的運(yùn)算,能實(shí)現(xiàn)加減乘除的運(yùn)算功能與數(shù)字清零功能,以及系統(tǒng)的復(fù)位功能。
評論