摘 要:在日異月新的二十一世紀(jì),社會對大學(xué)生的素質(zhì)要求越來越高,大學(xué)生是社會發(fā)展的主力軍,只有不對提高自己,創(chuàng)新科技才能跟上社會的發(fā)展,時代的要求。如果說社會是大海理想是小舟,理想信念就是引航的燈塔和推進的風(fēng)帆?;谶@些原因,這次由本人將設(shè)計與制作一個簡易計算機。
關(guān)鍵詞:創(chuàng)新;計算機;設(shè)計;制作
用單片機設(shè)計并制作一簡易計算器。要求能實現(xiàn)兩位十進制數(shù)的加、減、乘、除運算;能顯示負數(shù);小數(shù)點后的數(shù)據(jù)四舍五入處理,若除以零,可以報警(如紅燈亮)。
電路的核心是AT89C52單片機,其內(nèi)部帶有4kb的FLASHROM,無須擴展程序存儲器;電腦無很多的運算和暫存儲數(shù)據(jù),現(xiàn)有的128B片內(nèi)可以滿足s要求,不用擴展外部RAM,系統(tǒng)配了5位的led顯示和4乘以4的鍵盤,我們采用P1口接陣列按鍵盤,五個并/串移位寄存器芯片74LS164頭尾相連,每一片的并行輸出作為led管的段碼控制驅(qū)動信號,讓P3.6,P3.7串行靜態(tài)顯示模塊的CLK,DIN端。系統(tǒng)的全部采用查表法,把數(shù)碼管的段碼定義與按鍵的鍵碼定義分開以代碼的模式送入led管與鍵盤中。這樣我們就構(gòu)成了計算機的電路組成部分。
電路由鍵盤掃描模塊,89C52主控模塊,LED顯示模塊,發(fā)聲模塊組成。鍵盤掃描模塊由17個獨立式鍵盤組成,主控模塊由89C52單片機、復(fù)位及晶振模塊組成,LED顯示模塊由一個4位7段數(shù)碼管和一個2位7段數(shù)碼管組成,發(fā)聲模塊由一個蜂鳴片組成。
根據(jù)要求,聲音開關(guān)使用外部中斷1來處理,當(dāng)按下聲音開關(guān)時,觸發(fā)單片機進入中斷1,在中斷程序里,通過對聲音開關(guān)標(biāo)志位取反,在按鍵掃描過程中,加入對聲音標(biāo)志位的判斷,若為1,則發(fā)出聲音,即可實現(xiàn)聲音提示功能。
要進行數(shù)據(jù)的計算就必須先進行數(shù)據(jù)的輸入,也就必須確定按鍵輸入的數(shù)值是什么,這就需要讀一鍵盤進行掃描,從而確定究竟是哪個鍵按下。對鍵盤的掃描,這里采用行列掃描的方法來完成對鍵盤的掃描。原理就是先確定按鍵在哪一行,接著再確定哪一列,這樣就可以知道是哪個鍵被按下了。
主模塊的設(shè)計如圖:
調(diào)試過程中出現(xiàn)的問題及解決辦法:輸入數(shù)據(jù)在內(nèi)部進行加減乘除時,加法乘法沒有錯誤,但減法除法因為一次輸出和二次輸入數(shù)據(jù)的位置關(guān)系導(dǎo)致第二次運作時出現(xiàn)錯誤,最后我們調(diào)整了儲存數(shù)據(jù)的變量,這個問題順利的解決了,最后一個問題困擾我們最久,甚至導(dǎo)致調(diào)試過程一度中止,由于我們是6位數(shù)的運算,在數(shù)字顯示過程中,出現(xiàn)了跳位現(xiàn)象,比如你輸入123,當(dāng)輸如12時,數(shù)碼管正常顯示12,但將3輸入后,數(shù)碼管顯示變?yōu)榱?12,由于一直找不出原因,這個問題一直得不到解決,最后我嘗試改變display( )函數(shù)和大循環(huán)中函數(shù)的位置循序后才能正常顯示,但這從理論上說不通,最后得出可能是受到延時函數(shù)delay( )的延時影響,導(dǎo)致數(shù)碼管動態(tài)顯示位碼出錯。
首先感謝學(xué)校和老師安排這一次的單片機課程設(shè)計,在大學(xué)期間,做這類課程設(shè)計是非常有必要的,特別是對我們大三的學(xué)生,有利于我們將理論與實踐聯(lián)系起來。在兩周的課程設(shè)計時間里,經(jīng)過努力學(xué)習(xí),查閱了很多資料和文獻,終于完成了基于單片機的計算器的設(shè)計。在設(shè)計過程中,不僅鞏固了以前學(xué)過的理論知識,而且還學(xué)會了很多書本上沒有的知識,最重要的是把理論和實際結(jié)合起來,提高了自己的動手和獨立思考能力。在本設(shè)計中,由于時間和能力有限,難免會有不足的地方還指望老師批評指正,以便在以后的設(shè)計中改正。這次課程設(shè)計得以順利完成,少不了老師的指導(dǎo)和周圍同學(xué)的指教。
[參考文獻]
[1]吳寧.80x86/Pentiun微型計算機原理及應(yīng)用[M].北京:電子出版社,2004:1-249.
[2]蔡美琴.MCS-51系列單片機系統(tǒng)及其應(yīng)用[M].北京:高等教育出版社,2003:1-169.
[3]肖金球.單片機原理與接口技術(shù)[M].北京:清華大學(xué)出版社,2004:1-323.
[4]郭天祥.新概念51單片機C語音教程:入門,提高,開發(fā)拓展全攻略.北京:電子工業(yè)出版社,2009 P22.
[5])譚浩強.C語言設(shè)計(第三版).北京:清華大學(xué)出版社,2005:1-378.