2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩53頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p><b>  本科畢業(yè)設(shè)計(jì)論文</b></p><p>  題目:計(jì)算器模擬系統(tǒng)的設(shè)計(jì)與制作</p><p>  作者姓名 </p><p>  指導(dǎo)教師 </p><p>  專業(yè)班級(jí)

2、 </p><p>  學(xué) 院 </p><p>  提交日期 2011年6 月 10 日 </p><p>  Dissertation Submitted to Zhejiang University of Technology</p><p>  

3、for the Degree of Bachelor</p><p>  Design of calculator imitatesand</p><p>  畢業(yè)設(shè)計(jì)(論文)任務(wù)書(shū)</p><p>  專 業(yè) 班 級(jí) 學(xué)生姓名 </p><p>  一.設(shè)計(jì)(論文)題目:

4、 計(jì)算器模擬系統(tǒng)的設(shè)計(jì)與制作 </p><p>  二.原始資料:1、郭天祥.新概念51單片機(jī)C語(yǔ)言教程[J].電子工業(yè)出版社,2009.1;.2、林jie.單片機(jī)應(yīng)用實(shí)例與開(kāi)發(fā)[M].西安電子科技大學(xué)出版,2009.4;3、邊海龍.單片機(jī)開(kāi)發(fā)與典型工程項(xiàng)目實(shí)例詳解[J].電子工業(yè)出版社,2008.2:;4、于永.51單片機(jī)C語(yǔ)言常用模塊與綜合系統(tǒng)設(shè)計(jì)[J].電子工業(yè)出版社,200

5、8.5;5、張義和.例說(shuō)51單片機(jī)(C語(yǔ)言版)[M].人民郵電出版社,2010.12</p><p>  三.設(shè)計(jì)(論文)要求:</p><p>  1、計(jì)算器能顯示8位數(shù)字,開(kāi)機(jī)運(yùn)行時(shí),只有數(shù)碼管最低位顯示為“0”,其余位全部不顯示2、具有4×4鍵盤(pán),分別表示0~9、+、-、×、/ 、=和清零鍵CL,輸入的數(shù)字從設(shè)計(jì)的鍵盤(pán)輸入;3、可對(duì)兩個(gè)無(wú)符號(hào)數(shù)進(jìn)行加、減、乘、除運(yùn)

6、算,并顯示計(jì)算結(jié)果。4、結(jié)果溢出時(shí)發(fā)出“嘀”報(bào)警聲。5、制作出實(shí)物,寫(xiě)出合格的畢業(yè)論文。</p><p>  四.畢業(yè)設(shè)計(jì)(論文)內(nèi)容:</p><p>  1設(shè)計(jì)(論文)說(shuō)明書(shū)(根據(jù)大綱要求) 一份 </p><p>  2 設(shè)計(jì)(論文)圖紙 單片機(jī)簡(jiǎn)易計(jì)算器原理圖

7、 </p><p>  五.畢業(yè)設(shè)計(jì)(論文)工作期限:</p><p>  任務(wù)書(shū)發(fā)給日期 2011 年 4 月 25 日</p><p>  設(shè)計(jì)(論文)工作自 2011 年 4 月 25 日 至 2011 年 6 月 10 日</p><p>  指導(dǎo)教師

8、 </p><p>  系主任 </p><p>  主管院長(zhǎng) </p><p>  計(jì)算器模擬系統(tǒng)的設(shè)計(jì)與制作</p><p><b>  摘 要</b></p><p>  當(dāng)今社會(huì),隨著人們物質(zhì)生活的不斷提高

9、,電子產(chǎn)品已經(jīng)走進(jìn)了家家戶戶,無(wú)論是生活或?qū)W習(xí),還是娛樂(lè)和消遣幾乎樣樣都離不開(kāi)電子產(chǎn)品,大型復(fù)雜的計(jì)算能力是人腦所不能勝任的,而且比較容易出錯(cuò)。計(jì)算器作為一種快速通用的計(jì)算工具方便了用戶的使用。而計(jì)算器是人們?nèi)粘7浅J煜さ囊豢铍娮赢a(chǎn)品,本設(shè)計(jì)著重在于分析計(jì)算器軟件和開(kāi)發(fā)過(guò)程中的環(huán)節(jié)和步驟,并從實(shí)踐經(jīng)驗(yàn)出發(fā)對(duì)計(jì)算器設(shè)計(jì)做了詳細(xì)的分析和研究,</p><p>  單片機(jī)已逐漸成為電子產(chǎn)品研制和開(kāi)發(fā)中首選的控制器,它的

10、應(yīng)用越來(lái)越成為人們關(guān)注的焦點(diǎn),本設(shè)計(jì)基于STC89C51單片機(jī)以及MAX7219數(shù)碼管顯示驅(qū)動(dòng)來(lái)設(shè)計(jì)簡(jiǎn)易計(jì)算器。通過(guò)其他外圍模塊電路的設(shè)計(jì),電源模塊,單片機(jī)程序下載模塊,蜂鳴器驅(qū)動(dòng)模塊,單片機(jī)最小系統(tǒng)的設(shè)計(jì),MAX7219驅(qū)動(dòng)電路,組成簡(jiǎn)易計(jì)算器。論文從設(shè)計(jì)要求出發(fā),通過(guò)對(duì)每個(gè)方案的分析和研究,最終確立最佳方案。論文分析簡(jiǎn)易計(jì)算器模擬系統(tǒng)的設(shè)計(jì)過(guò)程,每個(gè)硬件模塊的設(shè)計(jì)詳情以及軟件部分的設(shè)計(jì)詳情,來(lái)闡述整個(gè)設(shè)計(jì)。最終根據(jù)設(shè)計(jì)方案,制作出實(shí)

11、物。</p><p>  關(guān)鍵詞:?jiǎn)纹瑱C(jī) STC89C51 MAX7219 數(shù)碼管</p><p>  DESIGN OF CALCULATER IMITATESAND</p><p><b>  Abstract</b></p><p>  Is social nowadays, continuously raise

12、along with people's physical life, the electronics product has already walked into all families, regardless is life or study, is still that amusement and amusement almost and all everything can not get away from an e

13、lectronics product, the large and complicated calculation ability is a person brain not competent for of, and a little bit easily come amiss.The calculator is a kind of quickly in general use calculation tool convenience

14、 the customer's use.But t</p><p>  The list slice machine has already become an electronics product to develop gradually and develop medium head the controller for choosing, its application more and more

15、 becomes the focus that people pay attention to, this design according to STC89 C51 list slice the machine and MAX7219 figures tube shows to drive to design simple calculator.Pass the design of other outer circle mold pi

16、ece electric circuits, the power mold piece, the list slice machine procedure downloads a mold piece, the buzzer</p><p>  Keyword:Single-chip MCU STC89C51 MAX7219 Nixie tubu</p><p><b>  

17、目 錄</b></p><p><b>  摘 要i</b></p><p>  Abstractii</p><p>  第一章 緒 論1</p><p>  1.1 研究單片機(jī)簡(jiǎn)易計(jì)算器的意義1</p><p>  1.2 計(jì)算器的發(fā)展趨勢(shì)1</p&g

18、t;<p>  1.3 本文研究思路與安排2</p><p>  第二章 計(jì)算器模擬系統(tǒng)的設(shè)計(jì)與制作總體方案3</p><p>  2.1 使用到的工具軟件4</p><p>  2.2 多個(gè)方案的對(duì)比4</p><p>  第三章 核心部分硬件仿真5</p><p>  第四章 模

19、塊電路設(shè)計(jì)詳解7</p><p>  4.1 電源部分的設(shè)計(jì)7</p><p>  4.2 程序下載模塊的設(shè)計(jì)8</p><p>  4.3 單片機(jī)最小系統(tǒng)的設(shè)計(jì)10</p><p>  4.4 時(shí)鐘電路模塊的設(shè)計(jì)。12</p><p>  4.5 復(fù)位電路模塊的設(shè)計(jì)。13</p>

20、<p>  4.6 鍵盤(pán)掃描模塊的設(shè)計(jì)。14</p><p>  4.7 顯示電路模塊的設(shè)計(jì)16</p><p>  4.8 更好的解決方案18</p><p>  第五章 硬件整體設(shè)計(jì)20</p><p>  第六章 軟件部分的總體設(shè)計(jì)20</p><p>  第七章 程序分模塊設(shè)計(jì)

21、21</p><p>  7.1 程序頭21</p><p>  7.2 延時(shí)子程序的設(shè)計(jì)21</p><p>  7.3 鍵盤(pán)掃描子程序22</p><p>  7.4 數(shù)據(jù)發(fā)送子程序23</p><p>  7.5 數(shù)據(jù)顯示子程序27</p><p>  7.6 主函數(shù)

22、28</p><p>  第八章 總結(jié)與展望29</p><p><b>  參考文獻(xiàn)30</b></p><p><b>  致 謝31</b></p><p>  附錄1.硬件仿真圖32</p><p>  附錄2.硬件原理圖和PCB圖34</p&g

23、t;<p>  附錄3.制作好的實(shí)物36</p><p>  附錄4.程序清單37</p><p><b>  緒 論</b></p><p>  當(dāng)今社會(huì),隨著人們物質(zhì)生活的不斷提高,電子產(chǎn)品已經(jīng)走進(jìn)了家家戶戶,無(wú)論是生活或?qū)W習(xí),還是娛樂(lè)和消遣幾乎樣樣都離不開(kāi)電子產(chǎn)品,大型復(fù)雜的計(jì)算能力是人腦所不能勝任的,而且比較容易出錯(cuò)。

24、計(jì)算器作為一種快速通用的計(jì)算工具方便了用戶的使用。計(jì)算器是人們普遍擁有電子產(chǎn)品之一。本設(shè)計(jì)著重在于分析計(jì)算器軟件和開(kāi)發(fā)過(guò)程中的環(huán)節(jié)和步驟,并從實(shí)踐經(jīng)驗(yàn)出發(fā)對(duì)計(jì)算器設(shè)計(jì)做了詳細(xì)的分析和研究。</p><p>  單片機(jī)已逐漸成為電子產(chǎn)品研制和開(kāi)發(fā)中首選的控制器,它的應(yīng)用越來(lái)越成為人們關(guān)注的焦點(diǎn),51單片機(jī)是對(duì)目前所有兼容Intel 8031指令系統(tǒng)的單片機(jī)的統(tǒng)稱。該系列單片機(jī)的始祖是Intel的8031單片機(jī),后來(lái)

25、隨著Flash rom技術(shù)的發(fā)展,8031單片機(jī)取得了長(zhǎng)足的進(jìn)展,成為目前應(yīng)用最廣泛的8位單片機(jī)之一,51單片機(jī)是基礎(chǔ)入門(mén)的一個(gè)單片機(jī),還是應(yīng)用最廣泛的一種。</p><p>  本系統(tǒng)就是充分利用了51單片機(jī)的I/O引腳。本設(shè)計(jì)基于STC89C51單片機(jī)以及MAX7219數(shù)碼管顯示驅(qū)動(dòng)來(lái)設(shè)計(jì)簡(jiǎn)易計(jì)算器,周邊硬件環(huán)境設(shè)計(jì)有STC51系列單片機(jī)的程序下載模塊,電源模塊等。</p><p> 

26、 1.1 研究單片機(jī)簡(jiǎn)易計(jì)算器的意義</p><p>  單片機(jī)已逐漸成為電子產(chǎn)品研制和開(kāi)發(fā)中首選的控制器,它的應(yīng)用越來(lái)越成為人們關(guān)注的焦點(diǎn),計(jì)算器在日常生活中是比較常見(jiàn)的電子產(chǎn)品之一。用單片機(jī)來(lái)實(shí)現(xiàn)計(jì)算器的基本功能這一課題不僅能與生活實(shí)際相結(jié)合,又能很好的驗(yàn)證我們的基礎(chǔ)知識(shí)和動(dòng)手能力。也是對(duì)整個(gè)大學(xué)所學(xué)習(xí)的知識(shí)的一個(gè)總結(jié)和回顧。</p><p>  1.2 計(jì)算器的發(fā)展趨勢(shì)</

27、p><p>  計(jì)算器只是簡(jiǎn)單的計(jì)算工具,有些機(jī)型具備函數(shù)計(jì)算功能,有些機(jī)型具備一定的貯存功能,但一般只能存儲(chǔ)幾組數(shù)據(jù)。計(jì)算機(jī)能夠?qū)崿F(xiàn)數(shù)據(jù)的錄入、處理、存儲(chǔ)和輸出,但它所以 中國(guó)古老的計(jì)算器-算盤(pán)</p><p>  它不能自動(dòng)地實(shí)現(xiàn)這些操作過(guò)程,必須由人來(lái)操作完成?,F(xiàn)在使用的計(jì)算器大部分都是由一塊IC和一塊LCD顯示屏,再加上電源模塊就可以完成復(fù)雜的運(yùn)算。運(yùn)行在計(jì)算機(jī)里的編寫(xiě)好的程序有更好的

28、人機(jī)交互界面,更強(qiáng)大的計(jì)算能力,還可以完成一些特殊的運(yùn)算,比如數(shù)制的轉(zhuǎn)換,復(fù)雜函數(shù)運(yùn)算,甚至連很多軟件都帶有計(jì)算功能,比如OFFICE辦公軟件等等。同時(shí),移動(dòng)設(shè)備如手機(jī),平板電腦都可以應(yīng)用相關(guān)應(yīng)用程序,或者本身有相關(guān)功能。也可以進(jìn)行一些簡(jiǎn)單或者復(fù)雜的運(yùn)算。</p><p>  如今,掌上計(jì)算器也朝著更小型化,更多功能用途,更智能化發(fā)展,而且價(jià)格更便宜,連手機(jī)也有相關(guān)應(yīng)用程序可使用。</p><

29、p>  1.3 本文研究思路與安排</p><p>  本設(shè)計(jì)采用STC89C51作為設(shè)計(jì)的硬件基礎(chǔ),STC89C51與MCS-51單片機(jī)產(chǎn)品兼容、8K字節(jié)在系統(tǒng)可編程Flash存儲(chǔ)器、1000次擦寫(xiě)周期、全靜態(tài)操作:0Hz~33Hz、三級(jí)加密程序存儲(chǔ)器、32個(gè)可編程I/O口線、三個(gè)16位定時(shí)器/計(jì)數(shù)器八個(gè)中斷源、全雙工UART串行通道、低功耗空閑和掉電模式、掉電后中斷可喚醒、看門(mén)狗定時(shí)器、雙數(shù)據(jù)指針、掉

30、電標(biāo)識(shí)符。完全符合設(shè)計(jì)所需的硬件標(biāo)準(zhǔn)。</p><p>  P1口作為顯示接口和AT89S51系列的ISP,我們預(yù)留了兩排的接插件,一排用于顯示接口,使用3個(gè)I/O口(P1.0,P1.1,P1.2,),加上VCC,GND電源端用于驅(qū)動(dòng)顯示板顯示所顯示的內(nèi)容。</p><p>  P3口主要用于STC系列單片機(jī)的ISP,和驅(qū)動(dòng)蜂鳴器的的發(fā)聲。其他I/O口閑置。</p><

31、p>  P0口加上103(10KΩ)上拉電阻,用于驅(qū)動(dòng)鍵盤(pán),進(jìn)行鍵盤(pán)識(shí)別掃描。</p><p>  P2口在設(shè)計(jì)中沒(méi)有分配應(yīng)用,但是預(yù)留接插件,以便擴(kuò)展使用。</p><p>  設(shè)計(jì)有針對(duì)于STC51系列單片機(jī)的程序下載模塊。</p><p>  設(shè)計(jì)有電源模塊和蜂鳴器驅(qū)動(dòng)模塊。</p><p>  時(shí)鐘信號(hào)采用12MHZ的晶振,因?yàn)?/p>

32、未接外部ROM,所以EA腳接高電平,復(fù)位電路使用的是上電復(fù)位,同時(shí)加上手動(dòng)復(fù)位。主板的硬件設(shè)計(jì)。</p><p>  由于考慮到顯示的穩(wěn)定性,硬件資源占用等因素,顯示板采用MAX7219驅(qū)動(dòng)兩個(gè)四位七段共陰數(shù)碼管作為顯示板。</p><p>  計(jì)算器模擬系統(tǒng)的設(shè)計(jì)與制作總體方案</p><p>  設(shè)計(jì)要求基于51單片機(jī)設(shè)計(jì)出簡(jiǎn)易計(jì)算器系統(tǒng),于是預(yù)選用STC89C

33、51,如果內(nèi)部ROM不足,可選用STC89C51或者其他兼容型號(hào)單片機(jī)。因?yàn)樵O(shè)計(jì)的是簡(jiǎn)易計(jì)算器系統(tǒng),于是需要鍵盤(pán)輸入,所需鍵位為4*4鍵盤(pán),于是可以使用4*4矩陣式鍵盤(pán),由一個(gè)I/O口來(lái)驅(qū)動(dòng)。結(jié)果的顯示采用兩個(gè)四位七段數(shù)碼管來(lái)實(shí)現(xiàn),可滿足要求,顯示驅(qū)動(dòng)可使用74LS244,MAX7219,單片機(jī)最小系統(tǒng)設(shè)計(jì)比較固定,不需要更改太多,同時(shí)設(shè)計(jì)的時(shí)候,可以進(jìn)行一些擴(kuò)展,比如加入STCISP功能。</p><p>  

34、本設(shè)計(jì)采用STC89C51作為設(shè)計(jì)的硬件基礎(chǔ),STC89C51與MCS-51單片機(jī)產(chǎn)品兼容、8K字節(jié)在系統(tǒng)可編程Flash存儲(chǔ)器、1000次擦寫(xiě)周期、全靜態(tài)操作:0Hz~33Hz、三級(jí)加密程序存儲(chǔ)器、32個(gè)可編程I/O口線、三個(gè)16位定時(shí)器/計(jì)數(shù)器八個(gè)中斷源、全雙工UART串行通道、低功耗空閑和掉電模式、掉電后中斷可喚醒、看門(mén)狗定時(shí)器、雙數(shù)據(jù)指針、掉電標(biāo)識(shí)符。完全符合設(shè)計(jì)所需的硬件標(biāo)準(zhǔn)。</p><p>  P1

35、口作為顯示接口和AT89S51系列的ISP,我們預(yù)留了兩排的接插件,一排用于顯示接口,使用3個(gè)I/O口(P1.0,P1.1,P1.2,),加上VCC,GND電源端用于驅(qū)動(dòng)顯示板顯示所顯示的內(nèi)容。</p><p>  P3口主要用于STC系列單片機(jī)的ISP,和驅(qū)動(dòng)蜂鳴器的的發(fā)聲。其他I/O口閑置。</p><p>  P0口加上103(10KΩ)上拉電阻,用于驅(qū)動(dòng)鍵盤(pán),進(jìn)行鍵盤(pán)識(shí)別掃描。&l

36、t;/p><p>  P2口在設(shè)計(jì)中沒(méi)有分配應(yīng)用,但是預(yù)留接插件,以便擴(kuò)展使用。</p><p>  設(shè)計(jì)有針對(duì)于STC51系列單片機(jī)的程序下載模塊。</p><p>  設(shè)計(jì)有電源模塊和蜂鳴器驅(qū)動(dòng)模塊。</p><p>  時(shí)鐘信號(hào)采用12MHZ的晶振,因?yàn)槲唇油獠縍OM,所以EA腳接高電平,復(fù)位電路使用的是上電復(fù)位,同時(shí)加上手動(dòng)復(fù)位。主板的硬

37、件設(shè)計(jì),硬件布局如圖1-1所示。</p><p>  圖1-1 硬件分布圖 </p><p>  由于考慮到顯示的穩(wěn)定性,硬件資源占用等因素,顯示板采用MAX7219驅(qū)動(dòng)兩個(gè)四位七段共陰數(shù)碼管作為顯示板。</p><p>  2.1 使用到的工具軟件</p><p>  使用到的工具:電烙鐵、可調(diào)電源、萬(wàn)用表、鉆孔臺(tái)、示波器、計(jì)算機(jī)等。&

38、lt;/p><p>  使用到的軟件:Altium DXP、Proteus ISIS、KEIL、C-Free、MS Office、STC ISP、Atmel ISP、Adobe Photoshop等計(jì)算機(jī)應(yīng)用軟件。</p><p>  2.2多個(gè)方案的對(duì)比</p><p>  在設(shè)計(jì)之初,進(jìn)行設(shè)計(jì)規(guī)劃的時(shí)候,通過(guò)自己的所學(xué)知識(shí)以及查閱一些書(shū)籍還有網(wǎng)上查找了很多資料,設(shè)計(jì)

39、了多個(gè)方案,綜合考慮各方面因素。進(jìn)行對(duì)比分析,最終選擇最優(yōu)的設(shè)計(jì)方案。各方案的設(shè)計(jì)具體如下。</p><p>  方案一:在一開(kāi)始設(shè)計(jì)的時(shí)候,我們采用了P0口( P0口加上10K上拉電阻)作為段碼驅(qū)動(dòng)顯示,P2口作為位驅(qū)動(dòng),P1口作為鍵盤(pán)驅(qū)動(dòng)識(shí)別,這樣,P0口作為段驅(qū)動(dòng),可以使數(shù)碼管更亮(通過(guò)調(diào)節(jié)上拉電阻的阻值,單片機(jī)其他準(zhǔn)IO口內(nèi)部有30K的上拉電阻,這里采用10K的上拉電阻,可以比其他IO口輸出更大的電流)缺

40、點(diǎn),鍵盤(pán)布局不適合使用操作,PCB布線較多的跳線。</p><p>  方案二:采用P1口段驅(qū)動(dòng)顯示,P2口位驅(qū)動(dòng),在段驅(qū)動(dòng)加上74LS244緩沖器,使顯示更穩(wěn)定,P0口加上10K上拉電阻作為鍵盤(pán)掃描識(shí)別。但是通過(guò)和方案四的對(duì)比,發(fā)現(xiàn)顯示依然不夠穩(wěn)定,PCB布線跳線較多,如果開(kāi)發(fā)為兩塊板,導(dǎo)線需要較多,不夠穩(wěn)定。</p><p>  方案三:采用P0口加上10K上拉電阻作為段驅(qū)動(dòng)顯示,P2

41、口位驅(qū)動(dòng),在P0口接74HC573作為段驅(qū)動(dòng)。P2口接74LS138,作為位驅(qū)動(dòng),P1作為鍵盤(pán)掃描識(shí)別。PCB布線較為復(fù)雜,而且程序的設(shè)計(jì)也較為的復(fù)雜。</p><p>  方案四:最終確定使用顯示板使用MAX7219驅(qū)動(dòng)兩個(gè)共陰四位七段紅色數(shù)碼管顯示數(shù)字。</p><p>  因?yàn)槭褂肕AX7219驅(qū)動(dòng)數(shù)碼管顯示,亮度穩(wěn)定,不閃爍,傳統(tǒng)數(shù)碼管顯示驅(qū)動(dòng)電路占用的系統(tǒng)資源較多。若為動(dòng)態(tài)顯示,

42、則8位數(shù)碼管顯示驅(qū)動(dòng)電路一般由1 片8255 和4片5407構(gòu)成,不僅占用硬件資源多,而且需要通過(guò)軟件定時(shí)刷新,故占用軟件資源也不少;若為靜態(tài)顯示,則8 位數(shù)碼管顯示驅(qū)動(dòng)電路一般由8片54LS164構(gòu)成,所占用硬件資源太多。MAX7219以其串行接口的傳輸速率可達(dá)10 MHz,獨(dú)立的發(fā)光二極管段控制,譯碼與非譯碼兩種顯示方式可選,數(shù)字、模擬兩種亮度控制方式,可以級(jí)聯(lián)使用,顯示接口簡(jiǎn)單等特點(diǎn),而采用1片MAX7219便可完成8位數(shù)碼管的顯

43、示驅(qū)動(dòng)任務(wù)。</p><p>  方案四硬件設(shè)計(jì)思路為:P1口為顯示驅(qū)動(dòng),及AT89S系列單片機(jī)的ISP作用, P0口接上拉電阻(103,10KΩ),用于4*4鍵盤(pán)掃描,蜂鳴器由P34口驅(qū)動(dòng)。單片機(jī)復(fù)位方式使用上電自動(dòng)復(fù)位,時(shí)鐘部分使用12MHz外部晶振。P3.0,P3.1專用STC51單片機(jī)程序下載,其他I/O口未使用,P2口閑置,備以后擴(kuò)展使用。J20其中三個(gè)引腳接到P1.0,P1.1,P1.2,分別為L(zhǎng)OA

44、D(數(shù)據(jù)裝載輸入端),CLK(單片機(jī)提供給顯示驅(qū)動(dòng)芯片MAX7219的時(shí)鐘信號(hào)),DIN(串行數(shù)據(jù)輸入),加上兩個(gè)電源端口,驅(qū)動(dòng)顯示板。同時(shí)硬件電路還設(shè)計(jì)了電源部分(主要為穩(wěn)壓,限壓,濾波,開(kāi)關(guān),與電源的接駁),集成STC51系列單片機(jī)的程序下載電路部分。設(shè)計(jì)蜂鳴器驅(qū)動(dòng)電路,用于聲音提示(按鍵聲音,結(jié)果溢出提示聲音。單片機(jī)最小系統(tǒng),承載單片機(jī)的基礎(chǔ)應(yīng)用硬件環(huán)境。4*4鍵盤(pán)掃描模塊。MAX7219顯示板,及與單片機(jī)的接口方案。</p

45、><p>  確立好實(shí)現(xiàn)方案后,接下來(lái)使用Proteus進(jìn)行仿真方案通過(guò)Proteus仿真環(huán)境進(jìn)行修改、完善硬件和程序設(shè)計(jì)。</p><p><b>  核心部分硬件仿真</b></p><p>  Proteus軟件是英國(guó)Labcenter electronics公司出版的EDA工具軟件。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機(jī)及外

46、圍器件。它是目前最好的仿真單片機(jī)及外圍器件的工具。</p><p>  Protues可以很方便的查找出所設(shè)計(jì)的軟件和硬件的缺陷和錯(cuò)誤,及時(shí)的發(fā)現(xiàn)錯(cuò)誤,并且更快的改正錯(cuò)誤??梢源蟠蟮臏p少了開(kāi)發(fā)一款產(chǎn)品的時(shí)間,同時(shí)也可以避免很多不必要的浪費(fèi)(如果使用硬件來(lái)調(diào)試軟件,在修改設(shè)計(jì)的過(guò)程中可能要頻繁的對(duì)硬件的參數(shù),電路連接進(jìn)行修改,耗時(shí)、費(fèi)力,還會(huì)造成硬件的損壞,造成不必要的浪費(fèi))。</p><p&g

47、t;  啟動(dòng)Proteus ISIS,設(shè)置好設(shè)計(jì)模板,查找設(shè)計(jì)所需的相關(guān)器件(七段八位數(shù)碼管、MAXIM 美信MAX7219、KEYPAD 4*4矩陣鍵盤(pán)、RESPACK 九針排阻、51單片機(jī),這里選用AT89C51)按照規(guī)劃好的位置排列好,連接好電氣線路(這里為了整個(gè)圖的美觀,所以大部分使用總線、網(wǎng)絡(luò)標(biāo)號(hào)的方式建立電氣連接)。完成仿真圖的設(shè)計(jì)。如下圖是本設(shè)計(jì)的所需的最主要的幾個(gè)器件。把器件擺放整齊,適合電氣連接。接下來(lái)就是連接電氣連

48、接線了。連接好后,認(rèn)真檢查,最好的方法就是加載確認(rèn)為正確的測(cè)試程序,測(cè)試各個(gè)模塊是否連接正確。</p><p>  設(shè)計(jì)好了的仿真電路圖,如圖2-1為設(shè)計(jì)好的仿真圖。</p><p>  圖2-1 畫(huà)好的仿真電路圖</p><p>  接下來(lái)就把寫(xiě)好的,編譯好的程序加載,運(yùn)行仿真,在仿真中找到程序,硬件中的問(wèn)題,及時(shí)改正。如下圖,就是設(shè)計(jì)好的仿真圖。在左上角加上文

49、字框,可以讓別人更直觀的了解是什么設(shè)計(jì),設(shè)計(jì)的要求是什么。</p><p>  軟件已經(jīng)設(shè)計(jì)好了,并且已經(jīng)仿真成功,如圖2-2就是正在仿真中的虛擬硬件。圖示顯示計(jì)算結(jié)果為334。在Proteus仿真的虛擬的環(huán)境下,軟件和硬件已經(jīng)達(dá)到了設(shè)計(jì)所要求。</p><p>  圖2-2 正在仿真的硬件圖</p><p>  仿真已經(jīng)達(dá)到了設(shè)計(jì)所要求的結(jié)果。接下來(lái)通過(guò)查找資料

50、、自己的所學(xué)知識(shí)以及通過(guò)Proteus仿真的正確結(jié)果,接下來(lái)可以進(jìn)行實(shí)際的硬件設(shè)計(jì)環(huán)節(jié)了,接下來(lái)將在實(shí)際硬件環(huán)境中進(jìn)行試驗(yàn)。</p><p><b>  模塊電路設(shè)計(jì)詳解</b></p><p>  4.1 電源部分的設(shè)計(jì)</p><p><b>  4.1.1原理圖</b></p><p>  如

51、圖3-1為電源模塊原理圖</p><p>  圖3-1 電源模塊電路</p><p><b>  4.2.2原理說(shuō)明</b></p><p>  當(dāng)打開(kāi)電源開(kāi)關(guān),電源不穩(wěn),會(huì)產(chǎn)生雜波,而單片機(jī)對(duì)于電源電壓非常敏感,從而影響單片機(jī)的正常工作。為了避免與此,我們?cè)O(shè)計(jì)了濾波電路,起到濾波的作用,從而更好的避免不必要的故障發(fā)生。</p>

52、<p>  本設(shè)計(jì)的電源電路有電源接口,開(kāi)關(guān),LED指示燈和濾波、穩(wěn)壓電路組成。</p><p>  濾波電路的原理:信號(hào)頻率越高,電容的容抗越小,而電感的感抗越大。利用電容和電感的這一特性,將電容與負(fù)載RL并聯(lián),或?qū)㈦姼信c負(fù)載RL串聯(lián),則能去掉或衰減脈動(dòng)直流電壓中的高頻交流成分,保留直流成分。本電路的濾波是由電容濾波和RC濾波構(gòu)成。LED是用來(lái)指示電源接通的情況。</p><p&

53、gt;  電源部分的設(shè)計(jì)沒(méi)有涉及到變壓,整流部分,只是對(duì)器件BNC(DC頭)的直流5V電壓進(jìn)行開(kāi)關(guān)設(shè)計(jì),電源指示,穩(wěn)壓,限壓,濾波作用,其中使用到了5.1V/1W穩(wěn)壓管,使供給單片機(jī)的和其他部分模塊的電源限制在5V,或低于5V。電源的輸入采用2.5mm口徑的DC頭,可使用計(jì)算機(jī)USB口供電,或者使用USB接口輸出5V電壓的MP3,MP4或者手機(jī)的電源適配器進(jìn)行供電。既方便,又經(jīng)濟(jì)。</p><p><b&g

54、t;  程序下載模塊的設(shè)計(jì)</b></p><p><b>  原理圖</b></p><p>  程序下載模塊原理圖,如圖3-2所示。</p><p>  圖3-2 串口程序下載模塊</p><p><b>  原理說(shuō)明</b></p><p>  上圖的原理

55、圖為STC51系列單片機(jī)的程序下載模塊,使用串口進(jìn)行程序的下載。由J4串口接口連接到電腦的串口通信端口,使計(jì)算機(jī)能和單片機(jī)通信。通過(guò)STC ISP計(jì)算機(jī)端軟件,把編寫(xiě)好的并編譯好的程序文件下載到單片機(jī)的內(nèi)部ROM中。RS232的供電由設(shè)計(jì)的主板統(tǒng)一供電。Atmel的89S51 P1口預(yù)留有接插件,方便程序下載,AT89S系列單片機(jī)下載板需另外制作,使用并口下載,較為麻煩。J4為DB9的九針串口接口,RS232為DIP16封裝的MAXIM

56、公司的MAX232EPE周邊電容為50V 1Uf的電解質(zhì)電容。</p><p>  MAX232芯片是美信公司專門(mén)為電腦的RS-232標(biāo)準(zhǔn)串口設(shè)計(jì)的單電源電平轉(zhuǎn)換芯片,使用+5v單電源供電。</p><p><b>  器件引腳介紹</b></p><p>  第一部分是電荷泵電路。由1、2、3、4、5、6腳和4只電容構(gòu)成。功能是產(chǎn)生+12v和

57、-12v兩個(gè)電源,提供給RS-232串口電平的需要。第二部分是數(shù)據(jù)轉(zhuǎn)換通道。由7、8、9、10、11、12、13、14腳構(gòu)成兩個(gè)數(shù)據(jù)通道。其中13腳(R1IN)、12腳(R1OUT)、11腳(T1IN)、14腳(T1OUT)為第一數(shù)據(jù)通道。8腳(R2IN)、9腳(R2OUT)、10腳(T2IN)、7腳(T2OUT)為第二數(shù)據(jù)通道。TTL/CMOS數(shù)據(jù)從T1IN、T2IN輸入轉(zhuǎn)換成RS-232數(shù)據(jù)從T1OUT、T2OUT送到電腦DB9插頭

58、;DB9插頭的RS-232數(shù)據(jù)從R1IN、R2IN輸入轉(zhuǎn)換成TTL/CMOS數(shù)據(jù)后從R1OUT、R2OUT輸出。第三部分是供電。15腳GND、16腳VCC(+5v)。如圖3-3所示引腳圖。</p><p>  圖3-3 MAX232引腳圖</p><p>  單片機(jī)最小系統(tǒng)的設(shè)計(jì)</p><p>  4.3.1引腳分布圖</p><p> 

59、 本設(shè)計(jì)采用的為DIP40封裝的STC89C51RC,如圖3-4所示</p><p>  圖3-4 STC89C51引腳圖</p><p><b>  各引腳功能說(shuō)明</b></p><p> ?。謈c:+5V電源電壓。</p><p> ?。謘s:電路接地端。</p><p>  P0.0~P

60、0.7:通道0,它是8位漏極開(kāi)路的雙向I/O通道,當(dāng)擴(kuò)展外部存貯器時(shí),這也是低八位地址和數(shù)據(jù)總線,在編程和校驗(yàn)期間,它輸入和輸出字節(jié)代碼,通道0吸收/發(fā)出二個(gè)TTL負(fù)載P1.0~P1.7:通道1是8位擬雙向I/O通道,在編程和校驗(yàn)時(shí),它發(fā)出低8位地址。</p><p>  通道1吸收/發(fā)出一個(gè)TTL負(fù)載。</p><p>  P2.0~P2.7:通道2是8位擬雙向I/O通道,當(dāng)訪問(wèn)外部存貯

61、器時(shí),用作高8位地址總線。通道2能吸收/發(fā)出一個(gè)TTL負(fù)載。</p><p>  P3.0~P3.7:通道3準(zhǔn)雙向I/O通道。通道3能吸收/發(fā)出一個(gè)TTL負(fù)載,P3通道的每一根線還有另一種功能:</p><p>  P3.0:RXD,串行輸入口。</p><p>  P3.1:TXD,串行輸出口。</p><p>  P3.2:INT0,外部

62、中斷0輸入口。</p><p>  P3.3:INT1,外部中斷1輸入口。</p><p>  P3.4:T0,定時(shí)器/計(jì)數(shù)器0外部事件脈沖輸入端。</p><p>  P3.5:T1,定時(shí)器/計(jì)數(shù)器1外部事件脈沖輸入端</p><p>  P3.6:WR,外部數(shù)據(jù)存貯器寫(xiě)脈沖。</p><p>  P3.7:RD,外

63、部數(shù)據(jù)存貯器讀脈沖。</p><p>  RST/VpD:引腳9,復(fù)位輸入信號(hào),振蕩器工作時(shí),該引腳上2個(gè)機(jī)器周期的高電平可以實(shí)現(xiàn)復(fù)位操作,在掉電情況下(Vcc降到操作允許限度以下), 后備電源加到此引腳,將只給片內(nèi)RAM供電。</p><p>  ALE/PROG:引腳30,地址鎖存有效信號(hào),其主要作用是提供一個(gè)適當(dāng)?shù)亩〞r(shí)信號(hào),在它的下降沿用于外部程序存儲(chǔ)器或外部數(shù)據(jù)存貯器的低8位地址鎖

64、存,使總線 P0輸出/輸入口分時(shí)用作地址總線(低8位)和數(shù)據(jù)總線, 此信號(hào)每個(gè)機(jī)器出現(xiàn)2次,只是在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器期間才不輸出ALE。所以,在任何不使用外部數(shù)據(jù)存貯器的系統(tǒng)中,ALE以1/6振蕩頻率的固定速率輸出,因而它能用作外部時(shí)鐘或定時(shí),8751內(nèi)的EPROM編程時(shí),此端輸編程脈沖信號(hào)。</p><p>  PSEN:引腳29,程序選通有效信號(hào),當(dāng)從外部程序存貯器讀取指令時(shí)產(chǎn)生, 低電平時(shí),指令寄存器的內(nèi)容

65、讀到數(shù)據(jù)總線上。</p><p>  EA/VPP:引腳31,當(dāng)保持TTL高電平時(shí),如果指令計(jì)數(shù)器小于4096,8051執(zhí)行內(nèi)部ROM的指令,8751執(zhí)行內(nèi)部EPROM的指令,當(dāng)使TTL為低電平時(shí),從外部程序存貯器取出所有指令,在8751內(nèi)的EPROM編程時(shí),此端為21V編程電源輸入端。</p><p>  XTAL1:引腳18,內(nèi)部振蕩器外接晶振的一個(gè)輸入端,HMOS芯片使用外部振蕩源時(shí)

66、,此端必須接地。</p><p>  XTAL2:引腳19,內(nèi)部振蕩器外接晶振的另一個(gè)輸入端,HMOS芯片使用外部振蕩器時(shí),此端用于輸入外部振蕩信號(hào)。</p><p><b>  單片機(jī)最小系統(tǒng)</b></p><p>  如圖3-5為設(shè)計(jì)好的單片機(jī)最小系統(tǒng)設(shè)計(jì)原理圖。</p><p>  圖3-5 單片機(jī)最小系統(tǒng)原理

67、圖</p><p><b>  設(shè)計(jì)說(shuō)明</b></p><p>  在進(jìn)行I/O口工作分配的時(shí)候,考慮到布線及產(chǎn)品的美觀性,以及操作的簡(jiǎn)易性,P1口為顯示驅(qū)動(dòng),及AT89S系列單片機(jī)的ISP作用,P1.5 MOSI(在系統(tǒng)編程用)P1.6 MISO(在系統(tǒng)編程用)P1.7 SCK(在系統(tǒng)編程用)。P0口接上拉電阻(103,10KΩ),用于4*4鍵盤(pán)掃描,蜂鳴器由P3

68、4口驅(qū)動(dòng)。單片機(jī)復(fù)位方式使用上電自動(dòng)復(fù)位,時(shí)鐘部分使用12MHz外部晶振。P3.0,P3.1專用STC51單片機(jī)程序下載,其他I/O口未使用,P2口閑置,備以后擴(kuò)展使用。J20其中三個(gè)引腳接到P1.0,P1.1,P1.2,分別為L(zhǎng)OAD(數(shù)據(jù)裝載輸入端),CLK(單片機(jī)提供給顯示驅(qū)動(dòng)芯片MAX7219的時(shí)鐘信號(hào)),DIN(串行數(shù)據(jù)輸入),加上兩個(gè)電源端口,驅(qū)動(dòng)顯示板。</p><p>  4.4 時(shí)鐘電路模塊的

69、設(shè)計(jì)。</p><p><b>  原理圖</b></p><p>  如圖3-6為時(shí)鐘電路模塊的設(shè)計(jì)原理圖。</p><p>  圖3-6 時(shí)鐘電路圖</p><p><b>  原理說(shuō)明</b></p><p>  單片機(jī)的最小系統(tǒng)有三部分組成,即電源,時(shí)鐘電路和復(fù)位電

70、路。其中單片機(jī)的電源引腳與5V電源連通即可,而時(shí)鐘電路和復(fù)位電路還需接口擴(kuò)展,這也是單片機(jī)的基本電路操作。</p><p>  時(shí)鐘電路用于產(chǎn)生單片機(jī)工作所需的時(shí)鐘信號(hào),時(shí)序是指令執(zhí)行中各信號(hào)之間的相互關(guān)系。單片機(jī)本身就如同一個(gè)復(fù)雜的同步時(shí)序電路,為了保證同步工作方式的實(shí)現(xiàn),電路應(yīng)在唯一的時(shí)鐘信號(hào)控制下嚴(yán)格地按時(shí)序進(jìn)行工作。在STC89C52單片機(jī)內(nèi)部帶有時(shí)鐘電路,因此,只需要在片外通過(guò)XTAL1和XTAL2引腳

71、接入定時(shí)控制元件(晶體振蕩器和電容),即可構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。在STC89C52芯片內(nèi)部有一個(gè)高增益反相放大器,而在芯片的外部,XTAL1和XTAL2之間跨接晶體振蕩器和微調(diào)電容。在單片機(jī)的XTAL1腳和XTAL2腳之間并接一個(gè)晶體振蕩器就構(gòu)成了內(nèi)部振蕩方式。STC89C52單片機(jī)內(nèi)部有一個(gè)高增益的反相放大器,XTAL1為內(nèi)部反相放大器的輸入端,XTAL2為內(nèi)部反相放大器的輸出端,在其兩端接上晶振后,就構(gòu)成了自激振蕩電路,并產(chǎn)生振

72、蕩脈沖,振蕩電路輸出的脈沖信號(hào)的頻率就是晶振的固有頻率。在實(shí)際應(yīng)用中通常還需要在晶振的兩端和地之間各并上一個(gè)小電容。</p><p>  用晶振和電容構(gòu)成諧振電路。電容大小與晶振頻率和工作電壓有關(guān)。但電容的大小影響振蕩器的穩(wěn)定性和起振的快速性,為了提高精度,本實(shí)驗(yàn)板采用20pF的電容作為微調(diào)電容。在設(shè)計(jì)電路板時(shí),晶振、電容等均應(yīng)盡可能靠近芯片,減小分布電容,以保證振蕩器振蕩的穩(wěn)定性。</p><

73、;p>  復(fù)位電路模塊的設(shè)計(jì)。</p><p><b>  原理圖</b></p><p>  如圖3-7為復(fù)位電路模塊的設(shè)計(jì)原理圖。</p><p>  圖3-7 上電手動(dòng)復(fù)位電路原理圖</p><p><b>  原理說(shuō)明</b></p><p>  復(fù)位是單片機(jī)

74、的初始化操作,其目的是使CPU和系統(tǒng)中各部分處于一個(gè)確定的狀態(tài),并從這一狀態(tài)開(kāi)始工作。系統(tǒng)上電路或死機(jī)后都要進(jìn)行復(fù)位操作。單片機(jī)的RST引腳為復(fù)位引腳,振蕩電路正常工作后,RST端加上持續(xù)兩個(gè)機(jī)器周期的高電平后,單片機(jī)就被復(fù)位。復(fù)位電路有3種基本方式:上電復(fù)位,開(kāi)關(guān)復(fù)位和看門(mén)狗復(fù)位。</p><p>  本課題采用按鍵開(kāi)關(guān)復(fù)位是指通過(guò)接通按鈕開(kāi)關(guān),使單片機(jī)進(jìn)入復(fù)位狀態(tài)。開(kāi)關(guān)復(fù)位電路一般不單獨(dú)使用。在應(yīng)用系統(tǒng)設(shè)計(jì)中

75、,若需使用開(kāi)關(guān)復(fù)位電路,一般的做法是將開(kāi)關(guān)復(fù)位與上電復(fù)位組合在一起形成組合復(fù)位電路,上電復(fù)位電路完成上電復(fù)位功能,開(kāi)關(guān)復(fù)位電路完成人工復(fù)位。</p><p>  圖中C7與R1構(gòu)成了上電復(fù)位電路。上電復(fù)位后,電源經(jīng)R2對(duì)C6充滿電源,C6等效于開(kāi)路,RESET端為低電平;單片機(jī)正常工作。按開(kāi)關(guān)后,C6兩端電荷經(jīng)R2迅速放電,開(kāi)關(guān)斷開(kāi)后,由C6、R2及電源完成對(duì)單片機(jī)的復(fù)位操作。在上述電路中C6、R2按上電復(fù)位電路

76、的設(shè)計(jì)而取值。 復(fù)位電路的作用非常重要,能否成功復(fù)位關(guān)系但單片機(jī)系統(tǒng)能否正常運(yùn)行的問(wèn)題。如果振蕩電路正常而單片機(jī)系統(tǒng)不能正常運(yùn)行,其主要原因是單片機(jī)沒(méi)有完成正常復(fù)位,程序計(jì)數(shù)器的值沒(méi)有回0,特殊功能寄存器沒(méi)有回到初始狀態(tài)。這時(shí)可以適當(dāng)?shù)卣{(diào)整上電復(fù)位電路的阻容值,增加其充電時(shí)間常數(shù)來(lái)解決問(wèn)題。</p><p>  鍵盤(pán)掃描模塊的設(shè)計(jì)。</p><p><b>  原理圖<

77、/b></p><p>  如圖3-8為鍵盤(pán)掃描模塊設(shè)計(jì)原理圖。</p><p>  圖3-8 4*4鍵盤(pán)</p><p><b>  原理說(shuō)明</b></p><p>  鍵盤(pán)是單片機(jī)系統(tǒng)中最常用的人機(jī)對(duì)話輸入設(shè)備,用戶通過(guò)鍵盤(pán)向單片機(jī)輸入數(shù)據(jù)或指令。鍵盤(pán)控制程序需完成的任務(wù)有:監(jiān)測(cè)是否有鍵按下,有鍵按下時(shí),在

78、無(wú)硬件去抖的動(dòng)電路時(shí),應(yīng)用軟件延時(shí)方法消除按鍵抖動(dòng)影響;當(dāng)有多個(gè)鍵同時(shí)按下時(shí),只處理一個(gè)按鍵,不管一次按鍵持續(xù)多長(zhǎng)時(shí)間,僅執(zhí)行一次按鍵功能程序。本設(shè)計(jì)采用鍵盤(pán)掃描由P0口驅(qū)動(dòng)。4*4鍵盤(pán)設(shè)計(jì)方案,鍵盤(pán)部分布線較為困難,在設(shè)計(jì)之初本采用4*4的鍵盤(pán)模組,不僅方便,布線也快,但是4*4鍵盤(pán)模組較難買到。所以最后采用16顆規(guī)格為(0.6cm*0.6cm=邊長(zhǎng)*寬)。滿足設(shè)計(jì)要求的所有功能。</p><p><b&

79、gt;  鍵盤(pán)布局</b></p><p>  如圖3-9是鍵盤(pán)鍵位布局。</p><p>  圖3-9 4*4鍵盤(pán)鍵位布局</p><p>  矩陣按鍵掃描程序是一種節(jié)省IO口的方法,按鍵數(shù)目越多節(jié)省IO口就越可觀。</p><p><b>  顯示電路模塊的設(shè)計(jì)</b></p><p

80、><b>  原理圖</b></p><p>  如圖3-10所示為MAX7219驅(qū)動(dòng)電路原理圖。</p><p>  圖3-10 顯示板原理圖</p><p><b>  原理說(shuō)明</b></p><p>  顯示板使用MAX7219驅(qū)動(dòng)數(shù)碼管,它將單片機(jī)傳送過(guò)來(lái)的顯示信號(hào)進(jìn)行解碼,驅(qū)動(dòng)數(shù)

81、碼管顯示。具有亮度穩(wěn)定,不閃爍,可達(dá)10MHz的掃描頻率。顯示信號(hào)傳輸用線少,適合把主板和顯示板分開(kāi)設(shè)計(jì)。接口定義為(只有VCC 5V電源輸入,可以和單片機(jī)同源供電,GND端,LOAD數(shù)據(jù)裝載輸入端,CLK時(shí)鐘輸入端,和DIN串行數(shù)據(jù)輸入端)。</p><p>  其中J5為連接單片機(jī)主板的數(shù)據(jù)傳輸導(dǎo)線以及電源導(dǎo)線,數(shù)碼管采用兩個(gè)四位七段共陰紅色數(shù)碼管,段掃描接有1K限流電阻,而位掃描則采用100Ω的限流電阻。同

82、時(shí),通過(guò)調(diào)節(jié)接在ISET電阻的大小來(lái)調(diào)節(jié)最大段電流,從而也可以調(diào)節(jié)數(shù)碼管的顯示亮度。</p><p><b>  MAX7219介紹</b></p><p>  MAX7219 是一種高集成化的串行輸入/輸出共陰極顯示驅(qū)動(dòng)器, 可實(shí)現(xiàn)微處理器與7段碼的接口, 可以顯示8 位或64 位單一LED。芯片上包括BCD 碼譯碼器、多位掃描電路、段驅(qū)動(dòng)器、位驅(qū)動(dòng)器、內(nèi)含8

83、15;8位靜態(tài)RAM ,用于存放顯示數(shù)據(jù)。只需外接一個(gè)電阻就可為所有的L ED 提供段電流。MAX7219 的三線串行接口適用于所有微處理器,單一位數(shù)據(jù)可被尋址和修正,無(wú)需重寫(xiě)整個(gè)顯示器。MAX7219 具有軟件譯碼和硬件譯碼兩種功能, 軟件譯碼是根據(jù)各段筆劃與數(shù)據(jù)位的對(duì)應(yīng)關(guān)系進(jìn)行編碼, 硬件譯碼采用BCD碼(簡(jiǎn)稱B 碼) 譯碼。MAX7219 工作模式包括150μA 低壓電源關(guān)閉模式、模擬數(shù)字亮度控制、限掃寄存器(允許用戶從第1 位數(shù)

84、字顯示到第8 位) 及測(cè)試模式(點(diǎn)亮所有L ED)。</p><p>  MAX1279 引腳說(shuō)明及功能</p><p>  MAX1279 引腳排列如圖1 所示, 引腳功能如表1 所列。MAX7219 功能框圖如圖2 所示。串行輸入數(shù)據(jù)在時(shí)鐘上升沿時(shí)移入內(nèi)部的16 位移位寄存器在裝載的上升沿時(shí)數(shù)據(jù)被鎖存在每一位或寄存器中。裝載信號(hào)必須在第16 個(gè)時(shí)鐘上升沿發(fā)生時(shí)或之后達(dá)到高電平, 但要在

85、下一個(gè)時(shí)鐘的上升沿和數(shù)據(jù)丟失之前到達(dá)。串行輸入數(shù)據(jù)通過(guò)移位寄存器傳輸, 在以后數(shù)據(jù)輸出的16. 5 個(gè)時(shí)鐘循環(huán)出現(xiàn),數(shù)據(jù)在時(shí)鐘的下降沿記錄下來(lái)。數(shù)據(jù)各位記錄為D0~D15 (如表2 所列) , D8~D11 為移位寄存器地址, D0~D7 為數(shù)據(jù), D12~D15 是無(wú)關(guān)位。第一位接收到的位是最高位D15。D7 為數(shù)據(jù)最高有效位,D0 為數(shù)據(jù)最低有效位。</p><p>  如圖3-11為MAX7219的引腳分布

86、圖。</p><p>  圖3-11 MAX7219引腳圖</p><p>  表3-1 MAX7219的引腳功能 </p><p>  4.7.5 四位七段數(shù)碼管引腳圖</p><p>  七段四位共陰數(shù)碼管引腳如圖3-12所示。</p><p>  圖3-12 四位七段數(shù)碼管引腳圖</p><

87、;p><b>  更好的解決方案</b></p><p><b>  電源部分</b></p><p>  電源部分更好解決方案如圖3-13所示。</p><p>  圖3-13 開(kāi)關(guān)電源模塊</p><p>  電源部分采用開(kāi)關(guān)電源設(shè)計(jì),并有整流作用,接入電源可以不用注意極性,接入電源為D

88、C +6V,輸出也可以調(diào)壓(通過(guò)調(diào)節(jié)變阻器W1的阻值)。在無(wú)輸出時(shí),按下S2,C4正極點(diǎn)為高電位,給Q2基極以高電位,Q2導(dǎo)通,使Q1基極低電位,Q1導(dǎo)通。VCC輸出。VCC輸出,通過(guò)W1,給Q2高電位,Q2持續(xù)導(dǎo)通,通過(guò)R5給Q3基極高電位,Q3導(dǎo)通。C4正極低電位。若VCC過(guò)載,電源自動(dòng)關(guān)斷。VCC有輸出,再次按下S2,電源關(guān)斷。此電源的優(yōu)點(diǎn)為:可過(guò)載保護(hù),不用注意輸入電源的極性。可調(diào)電壓,精準(zhǔn)輸出。按鈕控制,更方便。</p&

89、gt;<p><b>  鍵盤(pán)模塊的優(yōu)化方案</b></p><p>  鍵盤(pán)部分可以使用4*4鍵盤(pán)模組模組可以大大的縮小設(shè)計(jì)的體積,也使設(shè)計(jì)實(shí)物更加的美觀,同時(shí)PCB的布線也更加的簡(jiǎn)單。</p><p><b>  硬件整體設(shè)計(jì)</b></p><p>  接下來(lái)可以進(jìn)行PCB的設(shè)計(jì)了。畫(huà)板采用的軟件為Al

90、tium DXP 10(Protel的最新版本),可以很大的限度提高設(shè)計(jì)效率和設(shè)計(jì)效果。</p><p>  啟動(dòng)DXP,新建PCB工程文件,新建schematic原理圖文件,根據(jù)設(shè)計(jì)的方案,以及仿真修改后的仿真圖。查找加載元器件,更改屬性,封裝……,如果找不到器件,需要自己畫(huà)器件。將器件排列,放置恰當(dāng)。然后連接電氣線。由于原理圖較大,所以分為多副原理圖來(lái)畫(huà)。</p><p>  接下來(lái)更

91、改封裝,沒(méi)封裝的自己通過(guò)實(shí)物測(cè)量,畫(huà)出封裝。將原理圖導(dǎo)入新建的PCB文件中,對(duì)器件進(jìn)行布局,連線,PCB布線所花時(shí)間較多,前期布線好后需要進(jìn)行調(diào)整,以期達(dá)到最佳、最合理、最美觀的PCB文件。設(shè)計(jì)畫(huà)的PCB板采用單面板,20mil的最小電氣間隔,線徑有15mil,25mil,40mil,50mil等規(guī)格。</p><p>  接下來(lái)把畫(huà)好的PCB板進(jìn)行打樣了。同時(shí)通過(guò)設(shè)計(jì)工程的BOM表來(lái)購(gòu)買元器件。</p&g

92、t;<p>  PCB板打樣好后。接下來(lái)在PCB板得焊盤(pán)上根據(jù)器件引腳大小選擇鉆頭,使用鉆臺(tái)打通孔,然后根據(jù)PCB設(shè)計(jì)工程選擇正確器件型號(hào),插件,確保方向、位置正確,然后焊接。接下來(lái)進(jìn)行檢驗(yàn)調(diào)試,用到的工具有電烙鐵、萬(wàn)用表、可調(diào)電源,示波器、剪鉗等等。上電后,并沒(méi)有出現(xiàn)太多曲折,實(shí)物一步成功。如圖1.5為打樣好的PCB板。</p><p>  接下來(lái)使用STC ISP軟件對(duì)單片機(jī)進(jìn)行程序的下載。工具

93、軟件提示的操作步驟,連接好串口線,查看串口通信端口,選擇好單片機(jī)型號(hào),打開(kāi)編譯好的*.HEX或*.BIN文件,設(shè)置好COM通信端口,選擇好波特率(一般默認(rèn)115200),不打開(kāi)單片機(jī)電源,點(diǎn)擊下載,當(dāng)提示MCU上電時(shí)再給單片機(jī)上電。稍等一會(huì),下載成功。</p><p><b>  軟件部分的總體設(shè)計(jì)</b></p><p>  Keil C51是美國(guó)Keil Soft

94、ware公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開(kāi)發(fā)系統(tǒng),與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。</p><p>  單片機(jī)開(kāi)發(fā)中除必要的硬件外,同樣離不開(kāi)軟件,我們寫(xiě)的匯編語(yǔ)言源程序要變?yōu)镃PU可以執(zhí)行的機(jī)器碼有兩種方法,一種是手工匯編,另一種是機(jī)器匯編,目前已極少使用手工匯編的方法了。機(jī)器匯編是通過(guò)匯編軟件將源程序變?yōu)闄C(jī)器碼,用于MCS-51單片機(jī)的匯編軟件有早期的A

95、51,隨著單片機(jī)開(kāi)發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語(yǔ)言到逐漸使用高級(jí)語(yǔ)言開(kāi)發(fā),單片機(jī)的開(kāi)發(fā)軟件也在不斷發(fā)展,Keil軟件是目前最流行開(kāi)發(fā)MCS-51系列單片機(jī)的軟件,Keil提供了包括C編譯器、宏匯編、連接器、庫(kù)管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開(kāi)發(fā)方案,通過(guò)一個(gè)集成開(kāi)發(fā)環(huán)境(uVision)將這些部分組合在一起。</p><p>  在編寫(xiě)程序的時(shí)候,先考慮硬件分布,以及要達(dá)到的設(shè)計(jì)效果,理清好思路,對(duì)

96、每一塊程序小模塊進(jìn)行規(guī)劃設(shè)計(jì)。最后全局的設(shè)計(jì)規(guī)劃。</p><p>  由于KEIL編寫(xiě)程序沒(méi)有Cfree好用,所以首先使用Cfree,把軟件整體編寫(xiě)出來(lái)。然后到Keil中進(jìn)行調(diào)試修改。同時(shí)應(yīng)用Proteus仿真環(huán)境。查找軟件的錯(cuò)誤和缺陷,達(dá)到設(shè)計(jì)所要求的結(jié)果。如圖5-1是系統(tǒng)軟件設(shè)計(jì)流程圖。</p><p>  圖5-1 整體程序流程圖圖</p><p><

97、;b>  程序分模塊設(shè)計(jì)</b></p><p><b>  程序頭</b></p><p>  程序頭,定義顯示驅(qū)動(dòng)端口,串行數(shù)據(jù)輸入DIN為P1.0腳,同步時(shí)鐘為P1.1引腳,數(shù)據(jù)輸入使能端為P1.2引腳。方便接下來(lái)的編程,便于修改程序以及更清晰地閱讀理解程序。</p><p><b>  延時(shí)子程序的設(shè)計(jì)<

98、;/b></p><p>  如圖6-1為延時(shí)子程序的程序框圖。</p><p>  圖6-1 延時(shí)程序模塊</p><p>  延時(shí)子程序,用于鍵盤(pán)掃描的防抖動(dòng),顯示發(fā)送子程序的延時(shí),蜂鳴器響聲長(zhǎng)度的定時(shí)等。使用到for循環(huán),總共執(zhí)行次數(shù)為,a*b*c=10*20*100=20000;若是在主頻為12MHZ的電路中,單片機(jī)執(zhí)行一條語(yǔ)句時(shí)間大約為1us,那么

99、這個(gè)延時(shí)為2400us,大約為20ms。</p><p><b>  鍵盤(pán)掃描子程序</b></p><p>  如圖6-2是鍵盤(pán)掃描子程序的設(shè)計(jì)流程圖,簡(jiǎn)述鍵盤(pán)掃描程序的一個(gè)工作過(guò)程。</p><p>  圖6-2 鍵盤(pán)掃描</p><p>  按鍵掃描子程序,首先定義鍵盤(pán)端口為P0,將P0讀入的值進(jìn)行分析鍵值。再將

100、鍵值轉(zhuǎn)換成數(shù)值寄存。同時(shí)當(dāng)按鍵按下,還要驅(qū)動(dòng)接在P3.4的蜂鳴器短響,以示按鍵已經(jīng)按下。</p><p><b>  數(shù)據(jù)發(fā)送子程序</b></p><p><b>  端口時(shí)序圖</b></p><p>  如圖6-3 MAX7219顯示驅(qū)動(dòng)端口時(shí)序圖</p><p>  圖6-3 驅(qū)動(dòng)端口時(shí)序

101、圖</p><p>  MAX7219寄存器</p><p>  MAX7219 有14 個(gè)可尋址的控制字寄存器(如表3) , 控制字寄存器由芯片的8×8 雙端口SRAM 識(shí)別,SRAM 直接尋址, 這樣單一的位能被更改或保留, 條件是電源電壓明顯大于2V ??刂谱旨拇嫫靼ㄗg碼模式、顯示強(qiáng)度、掃描限制(被掃描位的個(gè)數(shù)) 、關(guān)閉模式、顯示測(cè)試(點(diǎn)亮所有的L ED) 。另外還有一個(gè)

102、空操作寄存器, 該寄存器允許數(shù)據(jù)從DIN 直送DOU T , 在設(shè)備串接情況下不會(huì)改變顯示或影響任何控制寄存器。</p><p><b>  關(guān)閉模式</b></p><p>  當(dāng)MAX7219 處于關(guān)閉模式時(shí), 掃描振蕩器停止工作,所有的段電流源接地,所有的位驅(qū)動(dòng)器上拉為高電平,顯示器為消隱狀態(tài),寄存器的數(shù)據(jù)保持不變。關(guān)閉模式寄存器數(shù)據(jù)的16 進(jìn)制碼為X0 ,正常

103、工作的16 進(jìn)制碼為X1。系統(tǒng)上電時(shí)MAX7219 進(jìn)入關(guān)閉模式,這樣,用戶必須在使用MAX7219 之前為顯示驅(qū)動(dòng)器編程,否則, 它一開(kāi)始就置位掃描, 數(shù)據(jù)寄存器不譯碼,強(qiáng)度寄存器也將置于最小值。</p><p><b>  譯碼模式</b></p><p>  寄存器可對(duì)譯碼模式寄存器的每位進(jìn)行硬件譯碼(B 碼) 或軟件譯碼操作, 寄存器的每位字對(duì)應(yīng)一個(gè)數(shù), 邏輯

104、高電平選擇B 碼譯碼??刂萍拇嫫髯g碼模式如表4 所列。當(dāng)選擇軟件譯碼方式時(shí), 數(shù)據(jù)D7~D0 對(duì)應(yīng)的MAX7219 碼的各段筆劃如表5 所列。當(dāng)工作于硬件(B 碼) 譯碼模式時(shí), 譯碼器只選擇數(shù)據(jù)寄存器中較低的幾位(D3~D0) ,不考慮D4~D6 位。D7 位顯示十進(jìn)制小數(shù)點(diǎn),獨(dú)立于譯碼器, 當(dāng)D7 = 1 時(shí), 十進(jìn)制小數(shù)DP 點(diǎn)亮。字符0~9 對(duì)應(yīng)的16 進(jìn)制碼為X0~ X9 ,字符- 、E、H、L 、P 和消隱分別對(duì)應(yīng)的16 進(jìn)

105、制碼為XA~ XF 。</p><p><b>  亮度控制</b></p><p>  MAX7219 允許用一個(gè)接于電源輸入( V +) 和段電源( Iset ) 端之間外部電阻控制顯示亮度,并且利用強(qiáng)度寄存器,調(diào)節(jié)面板亮度。段電流常為37mA ,最大值為40mA ,由于L ED的電壓降為2. 5 V , 故調(diào)節(jié)亮度電阻的電壓降V + - VL ED 為2. 5V

106、 (設(shè)V + = 5V) , 故7 段碼全部點(diǎn)亮的總電流7 ×37mA = 259mA , 外部調(diào)節(jié)亮度電阻Rset 最小值是2. 5V/ 259mA = 9. 53kΩ。段電流的位控制由一個(gè)內(nèi)部脈寬控制的DAC 提供。DAC 從強(qiáng)度寄存器的低位載入,D段電流的調(diào)整可分成16 階, 從31/ 32 減到1/32 ,每步減少2/ 31。當(dāng)循環(huán)到31/ 32 時(shí)最亮,此時(shí)內(nèi)部位消隱時(shí)間為一個(gè)周期的1/ 32 , 消隱時(shí)間的增加則減

107、少了工作周期。31/ 32 對(duì)應(yīng)的16進(jìn)制碼為×F , 隨著亮度的降低對(duì)應(yīng)的16 進(jìn)制碼依次減1 ,1/ 32 對(duì)應(yīng)的16 進(jìn)制碼為×0。</p><p><b>  限掃描寄存器</b></p><p>  限掃寄存器設(shè)定顯示幾個(gè)數(shù)字(1~8) , 8位顯示時(shí)的典型掃描頻率為1300Hz ,有多種顯示方式, 。如果想顯示較少的位數(shù),掃描頻率是8f

108、osc/ N ,其中N 是被掃描位的個(gè)數(shù)。由于掃描的位數(shù)影響顯示亮度, 限掃寄存器不適用于顯示消隱部分(如先行清零) 。掃描7 位時(shí)對(duì)應(yīng)的16 進(jìn)制碼為X7 , 隨著掃描位數(shù)的減少對(duì)應(yīng)的16 進(jìn)制碼依次減1 ,僅掃描0 位時(shí)對(duì)應(yīng)的16 進(jìn)制碼為X0。</p><p>  工作周期是31/ 32。正常測(cè)試的16 進(jìn)制碼為X0 ,顯示測(cè)試的16 進(jìn)制碼為X1。</p><p><b>

109、;  空操作寄存器</b></p><p>  空操作寄存器在MAX7219 串接時(shí)使用,把所有芯片的LOAD 端連在一起, 并將DOU T 連接到下一個(gè)MAX7219 的DIN 上。DOU T 是CMOS 輸出, 可以驅(qū)動(dòng)后邊的串接MAX7219 。例如,4 個(gè)MAX7219 串聯(lián),然后寫(xiě)第4 個(gè)片子, 再送入設(shè)想的16 位字, 緊跟3 個(gè)空操作碼( X0 XX) ,當(dāng)LOAD 升高時(shí),所有裝置的數(shù)

110、據(jù)被鎖存,前3 個(gè)芯片接到空操作命令,第4 個(gè)芯片接到設(shè)想的數(shù)據(jù)。</p><p><b>  顯示檢測(cè)寄存器</b></p><p>  顯示檢測(cè)寄存器有兩種操作模式: 一般測(cè)試和顯示測(cè)試。顯示測(cè)試模式時(shí)所有的L ED點(diǎn)亮,方法是將所有控制字寄存器(包括關(guān)閉寄存器) 置成無(wú)效。在顯示測(cè)試模式下掃描8 位的工作周期是31/ 32。正常測(cè)試的16 進(jìn)制碼為X0 ,顯示測(cè)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論