單片機實現(xiàn)數(shù)碼管顯示亮度的按鍵控制和溫度檢測_第1頁
單片機實現(xiàn)數(shù)碼管顯示亮度的按鍵控制和溫度檢測_第2頁
單片機實現(xiàn)數(shù)碼管顯示亮度的按鍵控制和溫度檢測_第3頁
單片機實現(xiàn)數(shù)碼管顯示亮度的按鍵控制和溫度檢測_第4頁
單片機實現(xiàn)數(shù)碼管顯示亮度的按鍵控制和溫度檢測_第5頁
已閱讀5頁,還剩16頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

學(xué)號1607080221天津城建大學(xué)單片機原理及接口技術(shù)課程設(shè)計設(shè)計說明書數(shù)碼管顯示亮度的按鍵控制設(shè)計起止日期:2019年1月2_日至2019年1月J1_日學(xué)生姓名 韓徐班級 16電信科2班成績指導(dǎo)教師(簽字)計算機與信息工程學(xué)院2019年1月11日天津城建大學(xué)課程設(shè)計任務(wù)書2018—2019學(xué)年第1學(xué)期計算機與信息工程學(xué)院電子信息科學(xué)與技術(shù)專業(yè)班級2班學(xué)號1607080221課程設(shè)計名稱:單片機原理及應(yīng)用A課程設(shè)計設(shè)計題目: 數(shù)碼管顯示亮度的按鍵控制設(shè)計完成期限:自2019年1月2日至2019年1月11日共2周設(shè)計依據(jù)、要求及主要內(nèi)容:設(shè)計的目的進一步熟悉和掌握單片機系統(tǒng)設(shè)計和編程原理。掌握單片機的接口技術(shù)及相關(guān)外圍芯片的外特性、控制方法。通過設(shè)計,掌握以單片機核心的電路設(shè)計的基本方法和技術(shù)。通過實際程序設(shè)計和調(diào)試,掌握模塊化程序設(shè)計方法和調(diào)試技術(shù)。通過完成一個包括電路設(shè)計和程序開發(fā)的完整過程,了解開發(fā)單片機應(yīng)用系統(tǒng)的全過程,為今后從事相應(yīng)開發(fā)打下基礎(chǔ)。設(shè)計的基本要求認(rèn)識設(shè)計的意義,掌握設(shè)計工作程序,學(xué)會使用工具書和技術(shù)參考資料,并培養(yǎng)科學(xué)的設(shè)計思想和良好的設(shè)計作風(fēng)。提高模型建立和設(shè)計能力,學(xué)會應(yīng)用相關(guān)設(shè)計資料進行設(shè)計計算的方法。提高獨立分析、解決問題的能力,逐步增強實際應(yīng)用訓(xùn)練。設(shè)計的說明書要求簡潔、通順,電路圖內(nèi)容完整、清楚、規(guī)范。設(shè)計主要內(nèi)容a) 設(shè)計實現(xiàn)功能STC12C5A60S2(引腳排序及基本功能同AT89S51)作為主控芯片,設(shè)計利用按鍵實現(xiàn)數(shù)碼管亮度的調(diào)整。一是擴展DS18B20溫度檢測電路,并由數(shù)碼管顯示;二是擴展按鍵電路;三是利用按鍵調(diào)整數(shù)碼管的亮度。b) 原理圖設(shè)計原理圖設(shè)計要符合項目的工作原理,連線要正確。圖中所使用的元器件要合理選用,電阻、電容等器件的參數(shù)要正確標(biāo)明。原理圖要完整,CPU、外圍器件、外擴接口、輸入/輸出裝置要一應(yīng)俱全。c) 程序調(diào)計根據(jù)要求,將總體功能分解成若干個子功能模塊,每個功能模塊完成一個特定的功能。根據(jù)總體要求及分解的功能模塊,確定各功能模塊之間的關(guān)系,設(shè)計出完整的程序流程圖。d) 程序調(diào)試編寫相關(guān)程序,并進行仿真。將程序下載到單片機,進行運行調(diào)試。e) 設(shè)計說明書原理圖設(shè)計說明簡要說明設(shè)計目的,原理圖中所使用的元器件功能及在圖中的作用,各器件的工作過程及順序。程序設(shè)計說明對程序設(shè)計總體功能及結(jié)構(gòu)進行說明,對各子模塊的功能以及各子模塊之間的關(guān)系作較詳細(xì)的描述。畫出工作原理圖,程序流程圖并給出相應(yīng)的程序清單。指導(dǎo)教師(簽字): 教研室主任(簽字):批準(zhǔn)日期:2019年1月2日TOC\o"1-5"\h\z\o"CurrentDocument"第1章 設(shè)計任務(wù)及要求 1\o"CurrentDocument"1.1設(shè)計目的 11.2設(shè)計要求 11.3設(shè)計思路 1\o"CurrentDocument"第2章設(shè)計原理 22.1原理概括 22.2原理框圖 2\o"CurrentDocument"第3章硬件電路設(shè)計 33.1 STC12C5A60S2主控芯片 33.1.1單片機簡介 33.1.2STC系列單片機主要性能及特點 33.1.3外部引腳介紹 33.2數(shù)碼管 43.3鍵盤 63.4溫度傳感器DS18B20 6\o"CurrentDocument"第4章 軟件程序設(shè)計及調(diào)試 7\o"CurrentDocument"4.1程序流程圖 7\o"CurrentDocument"4.2程序設(shè)計 74.3調(diào)試結(jié)果 8\o"CurrentDocument"第5章總結(jié) 9\o"CurrentDocument"參考文獻 10\o"CurrentDocument"附錄 11附錄I設(shè)計原理圖 11附錄II元器件清單 12附錄III源程序 12第1章設(shè)計任務(wù)及要求1.1設(shè)計目的本學(xué)期開設(shè)了單片機原理的相關(guān)課程,我們初步接觸和掌握了單片機的一些知識,了解了單片機的起源、發(fā)展和應(yīng)用,并且在平時的單片機實驗當(dāng)中進一步鞏固了課堂上所學(xué)的知識。為了進一步加深對單片機原理的了解,對單片機應(yīng)用的熟悉,本次課程設(shè)計,通過編程實現(xiàn)與單片機硬件設(shè)計深化單片機運行原理,2熟設(shè)單計要求流程,對于開發(fā)過程中遇到的問題進行分析并解決。以學(xué)院發(fā)放的單片機開發(fā)板為基礎(chǔ),設(shè)計電路,該電路使用到的器件有:DS18B20溫度傳感器、四位數(shù)碼管、4x4矩陣按鍵以及主控芯片STC12C5A60S2。要求使用DS18B20測量當(dāng)前溫度,并由數(shù)碼管來顯示測量的溫計,使用按鍵去控制數(shù)碼管顯示的亮度。當(dāng)我看到我的這個題目以后,我開始去思考怎么實現(xiàn)相應(yīng)功能。我的題目可以分成兩部分來完成,第一部分就是先利用數(shù)碼管顯示出來溫度。測量溫度的實驗我們已經(jīng)做過,當(dāng)時是在液晶屏幕上顯示溫度,我可以把那個程序拿過來加以改造,使之能在數(shù)碼管上顯示,這樣第一部分就可以實現(xiàn)。第二部分就是利用按鍵控制數(shù)碼管顯示的亮度,按鍵分為獨立按鍵和矩陣按鍵,對于矩陣按鍵可以采用線反轉(zhuǎn)法來檢測具體按下的按鍵。數(shù)碼管的顯示有靜態(tài)和動態(tài)兩種方法。在學(xué)習(xí)動態(tài)數(shù)碼管顯示的時候,我知道了改變延時的長短數(shù)碼管顯示的情況是不一樣的,可以通過控制延時這個變量來控制數(shù)碼管顯示的亮度。兩部分結(jié)合在一起就能實現(xiàn)我的題目。第2章設(shè)計原理72.17DS18B20芯片可以測量溫度,并且把外界溫度以數(shù)字信號方式輸出,對于數(shù)字信號可以用單片機很方便地處理,單片機處理了來自DS18B20的溫度信號后,可以把相應(yīng)的溫度值以數(shù)字信號方式輸出。單片機輸出的溫度值信號給數(shù)碼管,加上三極管驅(qū)動電路以后,數(shù)碼管可以把表示數(shù)值的數(shù)字信號顯示出來。由于題目要求改變其亮度,所以使用數(shù)碼管動態(tài)顯示,通過改變顯示的數(shù)碼管之間的延時來控制亮度。另方面,單片機還可以同時檢測來自按鍵的輸入信號,按下不同的按鍵,單片機做出不同的響應(yīng)。本次設(shè)計當(dāng)中感理框數(shù)碼管之間的延時作為單片機對于按下不同按鍵的響應(yīng)。大體的設(shè)計流程與想法如圖1所示:圖1圖1原理框圖第3章硬件電路設(shè)計3.1STC12C5A60S2主控芯片3.1.1單片機簡介單片機就是在一片半導(dǎo)體硅片上,集成了中央處理單元CPU)、存儲器(RAM、ROM)、中斷系統(tǒng)、定時器/計數(shù)器、并行1/0、串行I/O、時鐘電路及系統(tǒng)總線,用于測控領(lǐng)域的單片微型計算機,簡稱單片機。單片機的問世,是計算機技術(shù)發(fā)展史上的一個重要里程碑,它標(biāo)志著計算機正式形成了通用計算機和嵌入式計算機兩大分支。單片機芯片體積小、成本低,可廣泛地嵌入到工業(yè)控制單元、智能儀器儀表、機器人、武器系統(tǒng)、家用電器、辦公自動化設(shè)備、金融電子系統(tǒng)、汽車電子系統(tǒng)、玩具、個人信息終端以及通信產(chǎn)品中。20世紀(jì)80年代以來,單片機的發(fā)展非常迅速,其中Intel公司推出的MCS-51系列單片機是一款設(shè)計成功、易掌握并在世界范圍得到廣泛普及應(yīng)用的機型,這是最早進入我國并在我國得到廣泛應(yīng)用的機型。其中包括8051等產(chǎn)品。在這以后Intel公司把精力放在高檔CPU的研發(fā)上,以專利轉(zhuǎn)讓或技術(shù)交換的形式把8051內(nèi)核技術(shù)轉(zhuǎn)讓給了許多芯片廠家。STC系列單片機是我國具有獨立自主知識產(chǎn)權(quán),功能與抗干擾性強的增強型8051單片機。—t『3.1.2STC系列單片機主要性能及特點高速:比普通的8051快8?12倍寬工作電壓:3.8?5.5V、2.4?3.8V12KB/10KB/8KB/6KB/4KB片內(nèi)flash程序存儲器,擦寫次數(shù)10萬次以上512B片內(nèi)的RAM數(shù)據(jù)存儲器可在線編程,無需編程器或仿真器8通道的10位ADC,4路PWM輸出4個定時器或4個外部中斷2個硬件16位定時器,兼容普通8051的定時器硬件看門狗(WDT)高速SPI串口全雙工異步串行口(UART),兼容普通8051串口通用I/O口中的每個I/O口驅(qū)動能力均可達到20mA,但整個芯片最大不可超過55mA超強抗干擾能力與高可靠性(名叫蜘介紹51單片機各引腳可以按照功能將其分成三類:電源和時鐘引腳:Vcc、Vss、XTAL1、XTAL2編程控制引腳:RST、PSEN、ALE/PROG、EA/Vpp4組8位I/O口引腳:P0、P1、P2、P3下面對一些引腳簡略介紹:Vcc,Vss是單片機電源引腳,外接對應(yīng)的電壓源,為單片機供電。XTAL1,XTAL2是外接時鐘引腳,分別是片內(nèi)振蕩電路的輸入端和輸出端。RST是單片機的復(fù)位引腳,用來完成單片機的復(fù)位初始化操作。PSEN是程序存儲器允許輸出控制端,低電平有效,實現(xiàn)外部程序存儲器單元的讀操作。P0口是雙向8位三態(tài)I/O口,每個口可獨立控制。51單片機P0口內(nèi)部沒有上拉電阻,為高阻狀態(tài),所以不能正常地輸出

高/低電平,該組I/O口使用時需要外接上拉電阻。P1口是準(zhǔn)雙向8位I/O口,每個口可獨立控制,內(nèi)帶上拉電阻,這種接口輸出沒有高阻狀態(tài),輸入也不能鎖存,不是真正的雙向I/O口,該口在作為輸入使用前,要先向該口進行寫1操作,單片機內(nèi)部才可正確讀出外部信號。P2口是準(zhǔn)雙向8位I/O口,與P1口類似。P3口是準(zhǔn)雙向8位I/O口,作為第一功能即普通I/O口使用時與P1口類似,作為第二功能使用時各引腳定義如下:P3.0串行輸入口,P3.1串行輸出口,P3.2外部中斷0,P3.3外部中斷1,P3.4定時器/計數(shù)器0外部輸入端,P3.5定時器/計數(shù)器1外部輸入端,P3.6外部數(shù)據(jù)存儲器寫脈沖,P3.7外部數(shù)據(jù)存儲器讀脈沖。51單片機的PDIP封裝如圖1所示:P1.0仁1U403Vcc RST1 20VccP1.1匚2 393P0.0 P3.0/RXD2 19 P1.7P1.2仁3 383P0.1 P3.1/TXD3 18 P1.6P1.3匚4 37P0.2 XTAL24117 P1.5P1.4仁5 3623P0.3 XTAL15016 P1.4P1.5仁6 353P0.4 P3.2/INT0 6215 P1.3P1.6仁7 1 343P0.5 P3.3/INT1 7914 P1.2P1.7°8 5 33=■P0.6 P3.4/T0 88 13 P1.1/AIN1RST/Vpd仁9 9 32°P0.7 P3.5/T1 9 12P1.0/AINCP3.0/RXD匚10/ 31=■EA/V_ GND10 11 P3.7P3.1/TXD匚11 1 30=*ale/progP3.2/INT0匚12C293PSENP3.3/INT1仁138 283P2.7 注:類似的還有Philips公司的P3.4/T0仁14 8 27°P2.6 87LPC64,20引腳P3.5/T1匚15 263P2.5 8XC748/750/(751),24引腳P3.6/WRc16 253P2.4 8X749(752),28引腳P3.7/RD匚17 243P2.3 8XC754,28引腳XTAL2匚18 23=>P2.2 等等XTAL1匚19 223P2.1Vss仁20 21°P2.0圖2PDIP封裝引腳圖本次課程設(shè)計,我用到了單片機的P1口作為按鍵的數(shù)據(jù)輸入輸出控制口,P2口作為數(shù)碼管段選控制管位選控制口。LED數(shù)碼管是常見的顯示器件,在家電領(lǐng)域應(yīng)用極為廣泛。LED數(shù)碼管為“8”字型的,共計8段(包括小數(shù)點)或7段(無小數(shù)點),每一段對應(yīng)一個發(fā)光二極管,有共陽極和共陰極兩種。共陽極數(shù)碼管的陽極連接在一起,公共陽極接到+5V上;共陰極數(shù)碼管的陰極連接在一起,通常此公共陰極接地。我的開發(fā)板上的數(shù)碼管屬于共陽極數(shù)碼管,其內(nèi)部結(jié)構(gòu)如圖2所示。對于共陽極數(shù)碼管,當(dāng)某個發(fā)光二極管的陰極接低電平時,該發(fā)光二極管被點亮,相應(yīng)的段被顯示。圖3共陽極數(shù)碼管結(jié)構(gòu)

為了使數(shù)碼管顯示不同的字符,要把某些段點亮,就要為數(shù)碼管的各段提供一個字節(jié)的二進制代碼,即段碼,習(xí)慣上以“a”段對應(yīng)段碼字節(jié)的最低位,共陽極數(shù)碼管的段碼如表1所示,如要在數(shù)碼管上顯示某一字符,只需將顯示該字符的段碼加到各段上即可。表1共陽極數(shù)碼管段碼顯示字符字型碼顯示字符字型碼00xc0C0xc610xf9d0xa120xa4E0x8630xb0F0x8e40x99P0x8c50x92U0xc160x82y0x9170xf8H0x8980x80L0xc790x90—0xbfA0x88全滅0xffb0x83全亮0x00數(shù)碼管的顯示方式有靜態(tài)和動態(tài)兩種,多位數(shù)碼管工作于靜態(tài)顯示方式時,各位的共陰極(或共陽極)連接在一起并接地(或接+5V),每位數(shù)碼管的段碼線分別與一個單片機控制的8位I/O口鎖存器輸出相連,由單片機送出顯示信號供數(shù)碼管顯示。靜態(tài)顯示方式無閃爍,亮度較高,軟件控制比較容易,但是占用單片機I/O口資源較多,如果顯示位數(shù)較少,可采用靜態(tài)顯示方式。顯示位數(shù)較多時,為節(jié)省I/O口與驅(qū)動電路的數(shù)目,常采用動態(tài)顯示方式。這種方式是將所有數(shù)碼管的段碼線的相應(yīng)段并聯(lián)在一起,由一個8位I/O端口控制,而各顯示位的公共端分別由另一單獨的I/O端口控制,每一時刻,只有1位位選線有效,即只有一位數(shù)碼管被點亮,每隔一定時間逐位地輪流點亮各數(shù)碼管,由于數(shù)碼管的余輝和人眼的“視覺暫留”作用,只要控制好數(shù)碼管之間的點亮?xí)r間間隔,就可以造成“多位同時亮”的假象。這個時間間隔如果很短會造成發(fā)光很弱,時間間隔很長雖然亮度足夠但是會有閃爍現(xiàn)象。本次課設(shè)的要求之一控制亮度,我就是利用數(shù)碼管之間的延時來控制的,合理地調(diào)整延時長短,就可以讓數(shù)碼管亮度很暗但能看清,亮度很亮但不閃爍。開發(fā)板上使用的是一組四位LED數(shù)碼管(如圖4所示),段選端通過一個74HC573芯片連接到單片機的P0口,4個位選線經(jīng)過三極管接到了Vcc上,三極管的基極以排針引出,可用杜邦線連接單片機實現(xiàn)位選。

3.3鍵盤圖5輕觸開關(guān)鍵盤具有向單片機輸入數(shù)據(jù)、命令等功能,是人機對話的主要手段。鍵盤由若干按鍵按照一定規(guī)則組成,每一個按鍵實質(zhì)就是一個開關(guān)。鍵盤有很多種類,最常見的是按鍵式鍵盤。鍵盤分編碼鍵盤和非編碼鍵盤,在單片機組成的各種系統(tǒng)中,用的最多的是非編碼鍵盤。常見的非編碼鍵盤有獨立式鍵盤和矩陣式鍵盤兩種結(jié)構(gòu),獨立式鍵盤各按鍵相互獨立,每個按鍵各接一條I/O口線,通過檢測I/O口輸入線的電平狀態(tài),能夠判斷哪個按鍵被按下。當(dāng)按鍵數(shù)目較多時,獨立式鍵盤占用單片機I/O口資源較多,這種情況下為了節(jié)省I/O口適合采用矩陣式鍵盤。矩陣式鍵盤由行線和列線組成,按鍵位于行、列的交叉點上,一個4x4的行列結(jié)構(gòu)可構(gòu)成16個按鍵,只需要一個8位的并行I/O口。開發(fā)板上使用的是一組4x4矩陣鍵盤,由16個輕觸開關(guān)(又叫按鍵開關(guān),使用時以滿足操作力的條件向開關(guān)操作方向施壓使開關(guān)閉合接通,當(dāng)撤銷壓力時開關(guān)斷開,其內(nèi)部結(jié)構(gòu)是靠金屬彈片受力變化來實現(xiàn)通斷的,如圖5所示)組成。每一行開關(guān)的相同端接在一根線上,每一列開關(guān)的相同端接在一根線上,總共引出行線和列線各4根,通過排針和跳線帽接到單片機的P1圖5輕觸開關(guān)3.4溫度傳感器DS18B20DS18B20芯片(如圖6所示)屬于單總線接口的數(shù)字溫度傳感器,溫度測量范圍是-55?+128°C,DS18B20芯片體積小、功耗低,對于實時溫度的測量結(jié)果可通過單總線以數(shù)字信號方式傳輸,省去了信號放大、A/D轉(zhuǎn)換等外圍電路。DS18B20有3個引腳,分別是Vcc、DQ和GND。單片機對每個DS18B20芯片通過總線DQ尋址,DQ為漏極開路,須加上拉電阻。每個芯片內(nèi)都有64位ROM,其中存有16位序列號,它是器件的地址編號,能使器件被唯一地確定。常用的控制DS18B20的有下面幾條指令:0x33(讀DS18B20中ROM的編碼)、0xcc(忽略64位ROM地址,直接向DS18B20發(fā)溫度變換命令)、0x44(啟動DS18B20進行溫度轉(zhuǎn)換)、0xbe(讀內(nèi)部RAM中溫度數(shù)據(jù))、0x4e(發(fā)出向內(nèi)部RAM的第2,3字節(jié)寫上,下限溫度數(shù)據(jù)命令)。開發(fā)板上使用單片機的P1.7口與DS18B20進行數(shù)據(jù)交換,P1.7、Vcc和GND已由排針引出,只要給開發(fā)板上DS18B20旁邊的排針插上跳線帽即可。圖6DS18B20芯片第4章軟件程序設(shè)計及調(diào)試4.1程序流程圖綜合了以上所介紹的設(shè)計思路以及原理之后,整個題目的設(shè)計流程如圖7所示:否溫度值大于0結(jié)束開始/外界溫度模./擬信號輸入/數(shù)字信號溫//度值輸出,???.'’圖7程序流程圖/按鍵信號/輸入否溫度值大于0結(jié)束開始/外界溫度模./擬信號輸入/數(shù)字信號溫//度值輸出,???.'’圖7程序流程圖/按鍵信號/輸入.是實際溫度=十進制數(shù)據(jù)位除以169數(shù)碼管顯示與亮度調(diào)節(jié)延時增加或減少實際溫度=十進制數(shù)據(jù)位取反加1再除以16DS18B20處理單片機4.2程序設(shè)計本次課設(shè)的難點在于DS18B20溫度傳感器的使用,如何用單片機控制DS18B20芯片進行溫度讀寫是完成題目的關(guān)鍵,因此有必要了解DS18B20的工作時序:(1)初始化,包括①先將數(shù)據(jù)線置高電平1。②延時。③數(shù)據(jù)線拉到低電平0。④延時480到960微秒。⑤數(shù)據(jù)線拉到高電平1。⑥延時等待。⑦若CPU讀到數(shù)據(jù)線上的低電平0后,還要進行延時。⑧將數(shù)據(jù)線再次拉到高電平1后結(jié)束°(2)DS18B20寫數(shù)據(jù),包括①數(shù)據(jù)線先置低電平0。②延時確定的時間為15微秒。③按從低位到高位的順序發(fā)送數(shù)據(jù)。④延時45微秒。⑤將數(shù)據(jù)線拉到高電平1。⑥重復(fù)①到⑤步驟,直到發(fā)送完整個字節(jié)。⑦將數(shù)據(jù)線拉高到1。(3)DS18B20讀數(shù)據(jù),包括①將數(shù)據(jù)線拉高到1。②延時2微秒。③將數(shù)據(jù)線拉低到0。④延時6微秒。⑤將數(shù)據(jù)線拉高到1。⑥延時4微秒。⑦讀數(shù)據(jù)線的狀態(tài)得到一個狀態(tài)位,并進行數(shù)據(jù)處理。⑧延時30微秒。⑨重復(fù)①到⑦步驟,直到讀取完一個字節(jié)。按照以上時序?qū)S18B20進行程序編寫,我參考了做實驗時

所用到的DS18B20顯示溫度的代碼,加以更改使之能夠正確使用。對于按鍵的檢測就運用了線反轉(zhuǎn)法,先檢測行線再檢測列線,行列交叉的位置就是按下按鍵的位置,由此計算出每一個按鍵的鍵值。單片機把溫度值信號給數(shù)碼管,數(shù)碼管顯示溫度,使用含參數(shù)的延時函數(shù)控制數(shù)碼管的動態(tài)顯示,把得到的鍵值賦同的按鍵改變不同的參數(shù),進而改變數(shù)碼管顯示亮度。具體的C語言代碼見附錄。如圖8所示是將程序下載進開發(fā)板上以后的效果:圖8調(diào)試結(jié)果可以看到,板子的右上角的四位數(shù)碼管顯示的是當(dāng)前環(huán)境溫度,用杜邦線將數(shù)碼管與單片機連接起來,右下角是矩陣鍵盤,按下其中不同的按鍵,數(shù)碼管的亮度是不一樣的,從最暗到最亮,有16級調(diào)節(jié),對應(yīng)16個按鍵。這個效果,完成了題目的要求。第5章總結(jié)本次課程設(shè)計,綜合了本學(xué)期學(xué)到的單片機的有關(guān)知識。課上,老師講解了單片機的構(gòu)造、原理和應(yīng)用,通過對這門課程的學(xué)習(xí),我逐漸地了解了我們身邊的一些電子設(shè)備的工作原理以及方式,其實大都可以使用單片機來實現(xiàn)。單片機從誕生到現(xiàn)在,發(fā)展了這么多年,已經(jīng)變得相當(dāng)完善與強大,許許多多的電子產(chǎn)品里面,其實都能看到單片機的影子,單片機作為控制中心,應(yīng)用的極為廣泛。能夠使用單片機和其他外圍電路設(shè)計出符合要求的產(chǎn)品,也是我們這個專業(yè)需要掌握的技能之一,這次的課程設(shè)計,就模擬了這個過程,每個人都拿到了一份要求和一個開發(fā)板,我們就利用所學(xué)來設(shè)計出符合要求的作品,這個過程鍛煉了我們對于使用單片機開發(fā)各種電路的能力。我們所學(xué)到的知識應(yīng)該是能夠用來在實踐中利用的,否則將毫無意義,為了避免紙上談兵,我們需要加強動手能力。經(jīng)過了單片機這門課程的學(xué)習(xí),我對單片機充滿了興趣,課后自己找資料深入學(xué)習(xí)其應(yīng)用,這次課程設(shè)計的順利實現(xiàn),與我平時在業(yè)余時間里學(xué)習(xí)單片機密不可分,由此也可看出,興趣果然是最好的老師。參考文獻郭天祥.51單片機C語言教程.北京:電子工業(yè)出版社,2008:342—354張毅剛,趙光權(quán),劉旺.單片機原理及應(yīng)用.北京:高等教育出版社,2015:292—296何立民.單片機應(yīng)用技術(shù)選編.北京:北京航空航天大學(xué)出版社,1993:232—245譚浩強.C程序設(shè)計.北京:清華大學(xué)出版社,1991:143—275徐君毅.單片微型計算機原理及應(yīng)用.上海:上海科學(xué)技術(shù)出版社,1988:195—385附錄1設(shè)計原理圖附錄數(shù)碼管顯示電踏圖9數(shù)碼管及其驅(qū)動部分圖10按鍵部分R4ES1俱K)DS18B20測溫電路圖11DS18B20部分單片機FJI2pU-45FJ5Pkh7P17gELKTU'T]TOJ4WC31XI19X21HKST事附錄附錄11元器件清單序號名稱型號數(shù)量說明1單片機STC12C5A60S212溫度傳感器DS18B2013瓷片電容10114瓷片電容10215電解電容4.7uf/16V16電阻8.2k17電阻4.7k18晶振11.0592MHz1附錄血源程序關(guān)—STJF200R16圖12主控芯片部分#include<reg51.h>#include<absacc.h>#include<math.h>#defineucharunsignedchar#defineuintunsignedint#defineKEYP1ucharCjianzhi(void);ucharah,al;uinttens,units,decile;chartemperature[2];floatwen_val;sbitDS1820_DQ=P1A7;voidDS18B20_Init();bitDS1820_Reset();voidDS1820_WriteData(ucharwData);ucharDS1820_ReadData();voidread_wendu();ucharcodeduanma[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};voidDigitalDisplay(tens,units,decile);voiddelayXus(uintn);voiddelayms(ttt);voiddelay10ms();voiddelayXus(uintn){while(--n);}uintttt;voiddelayms(ttt){uinti,j;for(i=ttt;i>0;i--)for(j=2;j>0;j--);}voiddelay10ms(){uchara,b,c;for(c=5;c>0;c--)for(b=4;b>0;b--)for(a=248;a>0;a--);}voidDS18B20_Init(){DS1820_Reset();DS1820_WriteData(0xCC);DS1820_WriteData(0x4E);DS1820_WriteData(0x20);DS1820_WriteData(0x00);DS1820_WriteData(0x7F);DS1820_Reset();}bitDS1820_Reset(){bitflag;DS1820_DQ=0;delayXus(480);DS1820_DQ=1;delayXus(80);flag=DS1820_DQ;delayXus(400);return(flag);}voidDS1820_WriteData(ucharwData){uchari;for(i=8;i>0;i--){DS1820_DQ=0;delayXus(4);DS1820_DQ=wData&0x01;delayXus(60);DS1820_DQ=1;wData>>=1;}}ucharDS1820_ReadData(){uchari,TmepData;for(i=8;i>0;i--){TmepData>>=1;DS1820_DQ=0;delayXus(4);DS1820_DQ=1;delayXus(8);if(DS1820_DQ==1){TmepData|=0x80;}delayXus(60);DS1820_DQ=1;}return(TmepData);}voidread_wendu(){uchari;DS1820_Reset();DS1820_WriteData(0xcc);DS1820_WriteData(0x44);DS1820_Reset();DS1820_WriteData(0xcc);DS1820_WriteData(0xbe);for(i=0;i<2;i++){temperature[i]=DS1820_ReadData();}DS1820_Reset();}voidDigitalDisplay(tens,units,decile){read_wendu();ah=temperature[1]<<4;ah&=0xf0;al=temperature[0]>>4;al&=0x0f;ah=ah|al;al=temperature[0]&0x0

溫馨提示

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

評論

0/150

提交評論