淡海英
(陜西國(guó)防工業(yè)職業(yè)技術(shù)學(xué)院,陜西西安,710300)
本系統(tǒng)利用AT89C51 單片機(jī)來(lái)制作一個(gè)手動(dòng)計(jì)數(shù)器,在AT89C51 單片機(jī)的P3.2 管腳和P3.3 管腳各接一個(gè)輕觸開(kāi)關(guān)K1和K2,作為手動(dòng)計(jì)數(shù)的按鈕,用單片機(jī)的P0.0-P0.7 接一個(gè)兩位綠色共陰極數(shù)碼管(7SEG-COM-CAT-GRN),作為00-99 計(jì)數(shù)的個(gè)位數(shù)和十位數(shù)顯示。系統(tǒng)正常運(yùn)行后顯示00,按一次K1 鍵,數(shù)字加1,當(dāng)計(jì)數(shù)到 99 時(shí),再按一次 K1 鍵,又從00 開(kāi)始計(jì)數(shù)。當(dāng)計(jì)數(shù)到 99 時(shí),按一次K2,計(jì)數(shù)為98,繼續(xù)按K2,直到計(jì)數(shù)為00,由此實(shí)現(xiàn)正計(jì)數(shù)和倒計(jì)數(shù)的功能。本系統(tǒng)可用于競(jìng)技比賽中的計(jì)分,或者用于重要事件將要到來(lái)的倒計(jì)時(shí)。
硬件電路的設(shè)計(jì)是本系統(tǒng)能否實(shí)現(xiàn)所需功能的關(guān)鍵環(huán)節(jié),在設(shè)計(jì)過(guò)程中須注意電路的整體布局、元器件的擺放、元器件的參數(shù)選擇及電路的優(yōu)化,具體電路圖如1-1 所示。其中,X1 為12MHZ 的晶體振蕩器,RX8 為排阻。
圖1-1 計(jì)數(shù)器電路原理圖
根據(jù)硬件電路的結(jié)構(gòu)及功能要求,在分析所需算法和功能模塊的基礎(chǔ)上編寫本系統(tǒng)的代碼,要求代碼盡可能的簡(jiǎn)潔易懂,并有在必要的地方寫明注釋。具體代碼如下所示:
單片機(jī)系統(tǒng)的硬件調(diào)試和軟件調(diào)試是不能分開(kāi)的,許多硬件錯(cuò)誤是在軟件調(diào)試過(guò)程中被發(fā)現(xiàn)和糾正的。但通常是先排除明顯的硬件故障以后,再和軟件結(jié)合起來(lái)調(diào)試以進(jìn)一步排除故障。可見(jiàn)硬件的調(diào)試時(shí)基礎(chǔ),如果硬件調(diào)試不通過(guò),軟件設(shè)計(jì)則無(wú)從談起。硬件的調(diào)試主要是把電路各種參數(shù)調(diào)整到符合設(shè)計(jì)要求。先排除硬件電路故障,包括設(shè)計(jì)性錯(cuò)誤和公益性故障。一般原則是先靜態(tài)后動(dòng)態(tài)。利用萬(wàn)用表或邏輯測(cè)試儀器,檢查電路中的各器件以及引腳是否連接正確,是否有短路故障。運(yùn)行正確的仿真電路圖如下所示。
圖1-4 00-99 計(jì)數(shù)器仿真后的運(yùn)行效果圖
[1]尹毅峰.單片機(jī)原理及應(yīng)用.第1版.北京理工大學(xué)出版社,2010年7月
[2]姚曉平.單片機(jī)應(yīng)用技術(shù)項(xiàng)目化教程.電子工業(yè)出版社,2012年9月
[3]任元吉.單片機(jī)原理及應(yīng)用.第1 版.哈爾濱工業(yè)大學(xué)出版社,2013年1月