基于STC89C516RD+的紅外計算器
【技術(shù)部】
1系統(tǒng)方案本系統(tǒng)主要由紅外部分、控制系統(tǒng)部分、顯示部分組成,電源直接使用5V直流電。下面分別論證這幾個模塊的選擇。
1.1 紅外部分的論證與選擇由于采用矩陣鍵盤的輸入方式會浪費單片機(jī)過多的IO口,且鍵盤掃描函數(shù)過于冗長。所以本系統(tǒng)摒棄了矩陣鍵盤的輸入,采用紅外遙控輸入。紅外輸入用紅外遙控器,接收用一體化紅外接收頭。整個紅外接收只用了3個IO口,使系統(tǒng)的電路設(shè)計個更為簡便。
1.2 顯示部分的論證與選擇系統(tǒng)顯示部分采用市場出售的基于HD44780液晶芯片的1602液晶顯示器。此類顯示器可顯示數(shù)字和常用的字符。適合用于計算器的設(shè)計。
1.3 控制部分的論證與選擇控制部分采用單片機(jī)STC90C516RD+實現(xiàn)。由于該計算器程序所用的ROM和RAM較小,沒有必要用增強(qiáng)型的1T單片機(jī)例如STC12C5A60S2。所以用普通的51單片機(jī)即可。系統(tǒng)采用了12M的晶振。實現(xiàn)了對數(shù)據(jù)的有效處理。
2系統(tǒng)理論分析與計算 開啟系統(tǒng)之后,單片機(jī)就一直檢測有無紅外數(shù)據(jù)的輸入,若有則在單片機(jī)中實現(xiàn)數(shù)據(jù)的處理,后將數(shù)據(jù)傳輸?shù)?602顯示屏顯示出來。
3電路與程序設(shè)計3.1電路的設(shè)計3.1.1系統(tǒng)總體框圖由于本系統(tǒng)在普中開發(fā)板上實現(xiàn),沒有另外焊接電路,故系統(tǒng)電路圖省略。
3.1.2 控制部分子系統(tǒng)框圖與電路原理圖
1、控制部分子系統(tǒng)框圖
圖1 控制部分子系統(tǒng)框圖
3.1.3 紅外子系統(tǒng)框圖與電路原理圖1、紅外子系統(tǒng)框圖
圖3 紅外子系統(tǒng)框圖
3.1.4LCD1602顯示子系統(tǒng)框圖與電路原理圖
圖3 LCD1602顯示子系統(tǒng)框圖
3.1.5電源電源直接使用(普中單片機(jī)開發(fā)板上的)直流5V供電,確保電路的正常穩(wěn)定工作。這部分電路比較簡單,故不作詳述。
3.2程序的設(shè)計3.2.1程序功能描述與設(shè)計思路1、程序功能描述
根據(jù)題目要求軟件部分主要實現(xiàn)紅外解碼,計算函數(shù)和顯示函數(shù)。
1)紅外解碼及將鍵值顯示為指定字符。
2)計算器核心計算部分。
3)顯示輸入的算式及結(jié)果。
2、程序設(shè)計思路
3.2.2程序流程圖1、主程序流程圖
4測試方案與測試結(jié)果4.1測試方案1、硬件測試
基于普中單片機(jī)開發(fā)測試儀測試
4.2 測試結(jié)果及分析此設(shè)計符合原先設(shè)想,一切正常。
綜上所述,本設(shè)計達(dá)到設(shè)計要求。
參考文獻(xiàn)《新概念51單片機(jī)c語言教程》 , 《C程序設(shè)計》
附錄1:源程序