




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、 單片機技術(shù)課程設(shè)計說明書 數(shù)字溫度計系 、 部: 電氣與信息工程系 學(xué)生姓名: 指導(dǎo)教師: 職稱 副教授專 業(yè): 電子信息工程 班 級: 電子0902班 完成時間: 2011-12 摘 要溫度的檢測與控制是工業(yè)生產(chǎn)過程中比較典型的應(yīng)用之一,隨著傳感器在生活中的更加廣泛的應(yīng)用,利用新型數(shù)字溫度傳感器實現(xiàn)對溫度的測試與控制得到更快的開發(fā),本課程設(shè)計設(shè)計了一種基于AT89S52的數(shù)字溫度計。該系統(tǒng)可以方便的實現(xiàn)溫度采集和顯示。系統(tǒng)由硬件系統(tǒng)和軟件系統(tǒng)組成,硬件系統(tǒng)由單片機最小系統(tǒng)、測溫電路以及顯示電路組成;軟件系統(tǒng)由主函程序、測溫程序、判鍵程序和顯示程序組成。它使用起來相當方便,具有精度高、量程寬
2、、靈敏度高、體積小、功耗低等優(yōu)點,適合于我們?nèi)粘I詈凸?、農(nóng)業(yè)生產(chǎn)中的溫度測量,也可以當作溫度處理模塊嵌入其它系統(tǒng)中,作為其他主系統(tǒng)的輔助擴展。該系統(tǒng)設(shè)計和布線簡單,結(jié)構(gòu)緊湊,抗干擾能力強,在大型倉庫、工廠、智能化建筑等領(lǐng)域的溫度檢測中有廣泛的應(yīng)用前景。關(guān)鍵詞:數(shù)字溫度計,單片機,溫度傳感器ABSTRACTThe temperature detection and control is the process of industrial production is one of the typical applications, with the sensor in the life of a
3、 more extensive application, using a new digital temperature sensor to realize the temperature measurement and control get faster development, the curriculum design based on the design of a AT89S52 digital thermometer. The system can facilitate the realization of temperature acquisition and display.
4、 The system is composed of the hardware system and software system, the hardware system is composed of MCU minimum system, temperature measurement circuit and display circuit; the software system is composed of a main function procedures, measurement procedures, convicted of key procedures and displ
5、ay program. It is very convenient to use, has high accuracy, wide measuring range, high sensitivity, small volume, low power consumption, suitable for our daily life and industrial and agricultural production, temperature measurement, but also can be used as a temperature processing module embedded
6、in other systems, as the other main system auxiliary extension. The system design and layout is simple, compact structure, strong anti-interference ability, in large warehouses, factories, construction and other areas of intelligent temperature detection has a wide application prospect in the.Key wo
7、rds digital thermometer;MCU; temperature sensor目 錄1 設(shè)計任務(wù)、功能要求及總體方案11.1 設(shè)計任務(wù)11.2 功能要求11.3 總體方案介紹及工作原理說明12 數(shù)字溫度計硬件系統(tǒng)設(shè)計32.1 硬件系統(tǒng)各模塊功能設(shè)計32.2 電路原理圖、PCB圖、元件布局圖52.3 元器件清單53 數(shù)字溫度計軟件系統(tǒng)設(shè)計63.1 單片機資源使用情況63.2 各模塊功能簡要介紹63.3 程序流程圖73.4 程序清單104 設(shè)計結(jié)論、實物結(jié)果、教學(xué)建議114.1 設(shè)計結(jié)論及使用說明114.2 實物結(jié)果114.3 設(shè)計體會124.4 教學(xué)建議12結(jié)束語13致 謝14參
8、考文獻15附錄A16附錄B17附錄C18附錄D20附錄E211 設(shè)計任務(wù)、功能要求及總體方案1.1 設(shè)計任務(wù)設(shè)計一個具有特定功能的數(shù)字溫度計。1.2 功能要求1)數(shù)字溫度計上電或按鍵復(fù)位后能自動顯示系統(tǒng)提示符“P.”進入準備工作狀態(tài)。2)測量溫度范圍099,測量精度小數(shù)點后兩位。3)可以通過開始和結(jié)束鍵控制數(shù)字溫度計的工作狀態(tài)。1.3 總體方案介紹及工作原理說明(1)方案介紹設(shè)計中主控芯片采用八位單片機AT89S52,顯示器采用四位一體共陽數(shù)碼管顯示,測溫模塊采用溫度傳感器DS18B20,鍵盤采用獨立式按鍵,其原理框圖如圖1所示。圖1 原理框圖為使硬件電路設(shè)計盡可能合理,應(yīng)注意以下幾方面:1)
9、盡可能采用功能強的芯片,以簡化電路,功能強的芯片可以代替若干普通芯片。2)留有設(shè)計余地,在設(shè)計硬件電路時,要考慮到將來修改擴展的方便。因為很少有一錘定音的電路設(shè)計,如果現(xiàn)在不留余地,將來可能要為一點小小的修改或擴展而被迫進行全面返工。3)程序空間,選用片內(nèi)程序空間足夠大的單片機,本設(shè)計采用AT89S52單片機。4)I/O端口,在樣機研制出來后進行現(xiàn)場試用時,往往會發(fā)現(xiàn)一些被忽視的問題,而這些問題不是靠單純的軟件措施來解決的。如有些新的信號需要采集,就必須增加輸入檢測端;有些物理量需要控制,就必須增加輸出端。如果在硬件電路設(shè)計就預(yù)留出一些I/O端口,雖然當時空著沒用,那么用的時候就派上用場了。(
10、2)工作原理說明:數(shù)字溫度計原理:該數(shù)字溫度計供測溫比較準確,測溫范圍為0-100的場所。主要是利用溫度傳感器DS18B20的操作時序和控制命令字,通過單片機對其操作從單總線上將溫度值一位一位的取出來,然后進行處理,將溫度數(shù)據(jù)分為整數(shù)位和小數(shù)位,然后將相應(yīng)的溫度通過四位一體共陽數(shù)碼管顯示出來,通過獨立式鍵盤S0實現(xiàn)對數(shù)字溫度計的開啟與關(guān)閉。2 數(shù)字溫度計硬件系統(tǒng)設(shè)計2.1 硬件系統(tǒng)各模塊功能設(shè)計該數(shù)字溫度計的設(shè)計細分可分為時鐘電路的設(shè)計、復(fù)位電路的設(shè)計、鍵盤電路的設(shè)計、顯示電路的設(shè)計和測溫電路的設(shè)計等。各模塊的功能如下:(1)時鐘電路設(shè)計單片機必須在時鐘的驅(qū)動下才能工作,在單片機內(nèi)部有一個時鐘
11、振蕩電路,只需要外接一個振蕩源就能產(chǎn)生一定的時鐘信號送到單片機內(nèi)部的各個單元,決定單片機的工作速度。一般選用石英晶體振蕩器。此電路在加電大約延遲10ms后振蕩器起振,在XTAL2引腳產(chǎn)生幅度為3V左右的正弦波時鐘信號,其振蕩頻率主要由石英晶振的頻率確定。電路中石英晶體振蕩器的頻率為12MHz,兩個電容 C1、C2的作用有兩個:一是幫助振蕩器起振;二是對振蕩器的頻率進行微調(diào),C1、C2的值為33pF。(2)復(fù)位電路設(shè)計單片機的第9腳RST為硬件復(fù)位端,只要將該端持續(xù)4個機器周期的高電平即可實現(xiàn)復(fù)位,復(fù)位后單片機的各狀態(tài)都恢復(fù)到初始化狀態(tài)。在這個系統(tǒng)中的復(fù)位電路是采用上電加按鈕來實現(xiàn)的。因為MCS
12、-51單片機的復(fù)位是靠外部電路實現(xiàn)的,MCS-51單片機工作之后,只要在他的RST引線上加載10ms以上的高點平,單片機就能有效地進行復(fù)位。MCS-51單片機通常采用上電自動復(fù)位、按鍵復(fù)位、以及上電加按鍵復(fù)位等,我們采用的是上電加按鍵復(fù)位方式,這樣做的優(yōu)點是上電后可以直接進入復(fù)位狀態(tài),當程序出現(xiàn)錯誤時,可以隨時使電路復(fù)位。(3)鍵盤電路設(shè)計鍵盤是人與微機系統(tǒng)打交道的主要設(shè)備。在單片機應(yīng)用中鍵盤用得最多的形式是獨立鍵盤和矩陣鍵盤。電路中采用獨立式鍵盤,此系統(tǒng)只要求一個按鍵便滿足所需的要求,按鍵一端接地,另一端接單片機的1.2口線然后接上拉電阻。其作用是開啟與關(guān)畢溫度計。(4)顯示電路設(shè)計顯示電路
13、作為馮諾依曼體系結(jié)構(gòu)中的顯示部分,是系統(tǒng)必不可少的,設(shè)計采用的是共陽的四位一體的數(shù)碼管,即LED顯示器各位數(shù)碼管的所有段控端(adp)相應(yīng)地并接在一起,由一個P0口控制,形成段選線多路復(fù)用,而各位數(shù)碼管共陰極要分別由相應(yīng)的P2.0-P2.3口線控制。 由于各位數(shù)碼管的段選線并聯(lián),段選碼的輸出對各位數(shù)碼管的來說都是相同的。因此,同一時刻,如果各位的位選線都處于選通狀態(tài)的話,四位LED將顯示相同的字符。若需要各位數(shù)碼管顯示出與本位相應(yīng)的顯示字符,就必須采用掃描顯示方式,即在某一時刻,只讓某一位數(shù)碼管的位選線處于選通狀態(tài),而其它各位數(shù)碼管的位選線處于關(guān)閉狀態(tài),同時,段選線上輸出相應(yīng)位要顯示字符的字型
14、碼。這樣,在同一時刻,四位LED中只有選通的那一位數(shù)碼管顯示出字符,而其它各位數(shù)碼管則是熄滅的,如此循環(huán)下去,就可以使各位數(shù)碼管顯示出將要顯示的字符。特點:硬件電路簡化,由于LED導(dǎo)通時間短,亮度不足,應(yīng)增加驅(qū)動器已提高驅(qū)動能力,而且顯示位數(shù)控制在8位以內(nèi)。本設(shè)計只有四位,所以滿足要求。(5)測溫電路設(shè)計本設(shè)計用到溫度芯片是DS18B20。DS18B20是DALLAS公司生產(chǎn)的一線式數(shù)字溫度傳感器,具有3引腳TO92小體積封裝形式。測溫分辨率可達0.0625,被測溫度用符號擴展的16位數(shù)字量方式串行輸出。其工作電源既可在遠端引入,也可采用寄生電源方式產(chǎn)生。CPU只需一根端口線就能與諸多DS18
15、B20通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。設(shè)計的系統(tǒng)采用一根端口線上掛18B20帶上拉電阻接到單片機的P2.7口線上,具體電路如圖2所示。圖2 18B20測溫電路對DS18B20的設(shè)計,需要注意以下問題:1)對硬件結(jié)構(gòu)簡單的單線數(shù)字溫度傳感器DS18B20 進行操作,需要用較為復(fù)雜的程序完成。編制程序時必須嚴格按芯片數(shù)據(jù)手冊提供的有關(guān)操作順序進行,讀、寫時間片程序要嚴格按要求編寫。尤其在使用DS18B20 的高測溫分辨力時,對時序及電氣特性參數(shù)要求更高。2)有多個測溫點時,應(yīng)考慮系統(tǒng)能實現(xiàn)傳感器出錯自動指示,進行自動DS18B20 序列號和自動排序,以減少調(diào)試和維護工作量
16、。3)測溫電纜線建議采用屏蔽4 芯雙絞線,其中一對線接地線與信號線,另一組接VCC和地線,屏蔽層在源端單點接地。DS18B20 在三線制應(yīng)用時,應(yīng)將其三線焊接牢固;在兩線應(yīng)用時,應(yīng)將VCC與GND接在一起,焊接牢固。若VCC脫開未接,傳感器只送85.0 的溫度值。4)實際應(yīng)用時,要注意單線的驅(qū)動能力,不能掛接過多的DS18B20,同時還應(yīng)注意最遠接線距離。另外還應(yīng)根據(jù)實際情況選擇其接線拓撲結(jié)構(gòu)。2.2 電路原理圖、PCB圖、元件布局圖Protel原理圖、元器件布局圖、PCB圖分別見附錄A、附錄B與附錄C。 2.3 元器件清單元器件清單見附錄D。3 數(shù)字溫度計軟件系統(tǒng)設(shè)計3.1 單片機資源使用情
17、況(1)P0.0P0.7 段控線,接數(shù)碼管LED的顯示段a,b,c,d,e,f,g,dp。(2)P2.0P2.3位控線,分別接數(shù)碼管LED3ED 0。(3)P1.2接一個獨立鍵盤S0,按鍵的結(jié)果存貯在單片機的內(nèi)部數(shù)據(jù)存儲器里面。(4)P2.7接溫度傳感器DS18B20。(5)數(shù)據(jù)的顯示是采用的是查表的方法,因此需要將表格(顯示代碼)存儲到片機的程序存儲器中去。3.2 各模塊功能簡要介紹軟件系統(tǒng)結(jié)構(gòu)由系統(tǒng)初始化模塊、按鍵模塊、測溫模塊以及數(shù)碼管顯示模塊四部分組成軟件系統(tǒng)結(jié)構(gòu)圖如圖3所示。圖3 軟件系統(tǒng)結(jié)構(gòu)圖(1)按鍵模塊其中用到了key_data (取鍵值函數(shù))、display(顯示函數(shù)延時進行
18、按鍵消抖)和key(判鍵函數(shù))。這里只用到1個獨立式鍵盤S0對電路進行操作,控制溫度計的開啟與關(guān)閉。(2)測溫模塊其中用到了delay(延時函數(shù))、init_ds18b20(DS18B20初始化函數(shù))、write- byte(寫一字節(jié)函數(shù))、read_byte(讀一字節(jié)函數(shù))和read_wendu(讀溫度函數(shù)),將溫度數(shù)據(jù)取出來,經(jīng)處理后溫度分為整數(shù)部分和小數(shù)部分以便顯示。(3)數(shù)碼顯示模塊其中用到了display(數(shù)碼管顯示函數(shù))、delay_1ms(延時1ms函數(shù))和smg_we(共陽數(shù)碼管09代碼)。溫度計上電數(shù)碼管顯示“P.”,按S0鍵啟動溫度計,數(shù)碼管顯示當前溫度,再次按S0鍵關(guān)閉溫
19、度計,數(shù)碼管顯示“P.”。 3.3 程序流程圖在本設(shè)計中包括了以下八個主要的函數(shù):主函數(shù)(main)、DS18B20初始化函數(shù)(init_ds18b20)、寫一字節(jié)函數(shù)(write- byte)、讀一字節(jié)函數(shù)(read_byte)讀溫度函數(shù)(read_wendu)、取鍵值函數(shù)(key_data)、判鍵函數(shù)(key)和顯示函數(shù)(display)。(1)主函數(shù)流程圖如圖4所示。圖4 主函數(shù)流程圖主函數(shù)執(zhí)行過程為:1)定義各個變量并初賦值,初始化標志位;2)調(diào)用判鍵函數(shù),檢測是否有鍵按下,若無鍵按下,調(diào)用測溫函數(shù)、 顯示函數(shù),退出再調(diào)用判鍵函數(shù);若有鍵按下,取反標志位,然后調(diào)用測溫函數(shù)、顯示函數(shù),退
20、出再調(diào)用判鍵函數(shù)。(2)DS18B20初始化函數(shù)流程圖如圖5(a)所示,讀一字節(jié)函數(shù)流程圖如圖5(b)所示,寫一字節(jié)函數(shù)流程圖如圖5(c)所示。 (a) (b) (c)圖5 初始化、讀一字節(jié)、寫一字節(jié)函數(shù)流程圖(3)讀溫度函數(shù)流程圖如圖6所示圖6 讀溫度函數(shù)流程圖讀溫度函數(shù)執(zhí)行過程:1)初始化DS18B20;2)發(fā)送跳過ROM命令,因為總線上只有一個DS18B20;3)再次初始化DS18B20,跳過ROM,啟動溫度轉(zhuǎn)換,延時等待溫度轉(zhuǎn)換完成;4)讀出溫度數(shù)據(jù),并存儲當前溫度數(shù)據(jù);5)處理溫度數(shù)據(jù),以便單片機將溫度數(shù)據(jù)顯示, 采完則結(jié)束退出函數(shù)。(4)取鍵值函數(shù)和判鍵函數(shù)流程圖如圖7(a)(b)
21、所示 (a) (b)圖7 取鍵值、判鍵函數(shù)流程圖判鍵函數(shù)執(zhí)行過程:1)調(diào)用取鍵值函數(shù),看是否有鍵按下,如果沒有返回鍵值0;2)如果有鍵按下,延時消抖,再判鍵是否真的按下,如果沒有返回鍵值0;3)如果真的按下,保護鍵值,等待按鍵松開返回對應(yīng)的鍵值。(5)顯示函數(shù)流程圖如圖8所示。圖8 顯示函數(shù)流程圖顯示函數(shù)執(zhí)行過程:1)判斷標志位,當標志位不為0,送P.段控碼及低位位控碼,然后調(diào)延時延時1ms函數(shù)。2)標志位為0時,先送百分位段控碼和低位位控碼,調(diào)延時延時1ms函數(shù),然后送十分位位段控碼和第二位位控碼,調(diào)延時延時1ms函數(shù),接著送個位以及小數(shù)點段控碼和第三位位控碼,調(diào)延時延時1ms函數(shù),接著送十
22、位段控碼和第四位位控碼,調(diào)延時延時1ms函數(shù)。3)退出顯示函數(shù)。3.4 程序清單程序清單見附錄E。4 設(shè)計結(jié)論、實物結(jié)果、教學(xué)建議4.1 設(shè)計結(jié)論及使用說明(1)設(shè)計結(jié)論:本系統(tǒng)就是充分利用了AT89S52芯片的I/O引腳。該數(shù)字溫度計上電或按鍵復(fù)位后能自動顯示系統(tǒng)提示符“P.”,進入測溫準備狀態(tài)。當按下S0鍵時,溫度計開啟,數(shù)碼管顯示當前溫度值,并顯示小數(shù)點后兩位,當再次按下S0鍵時,關(guān)閉溫度計數(shù)碼管顯示提示符“P.”。通過測試和修改,該數(shù)字溫度計完成了設(shè)計任務(wù),符合設(shè)計要求。(2)使用說明:1)該數(shù)字溫度計測量溫度范圍099,測量精度小數(shù)點后兩位,應(yīng)用于對溫度比較準確的場所,工業(yè)生產(chǎn)、醫(yī)療
23、或科研實驗室使用。2)數(shù)字溫度計上電或按鍵復(fù)位后自動顯示系統(tǒng)提示符“P.”, 進入測溫準備狀態(tài)。當使用者按下S0鍵時啟動溫度測量,數(shù)碼管顯示當前溫度。3)使用者再次按下S0鍵時關(guān)閉溫度測量,系統(tǒng)進入測溫準備狀態(tài),數(shù)碼管顯示系統(tǒng)提示符“P.”。4.2 實物結(jié)果(1)數(shù)字溫度計上電時,溫度計進入準備狀態(tài),數(shù)碼管顯示器顯示“P.”如圖9所示。圖9 溫度計準備狀態(tài)(2)當按下S0鍵時,溫度計進入測溫狀態(tài),數(shù)碼管顯示當前溫度如圖10所示。圖10 溫度計測溫狀態(tài)(3)再次按下S0鍵時關(guān)閉溫度測量,溫度計再次進入準備狀態(tài)數(shù)碼管顯示器顯示“P.”如圖9所示。4.3 設(shè)計體會不知不覺本次課程設(shè)計已接近尾聲,通過
24、這次課程設(shè)計,加強了我們動手、思考和解決問題的能力。同時我覺得做課程設(shè)計同時也是對課本知識的鞏固和加強,由于課本上的知識太多,平時課間的學(xué)習(xí)并不能很好的理解和運用各指令的功能,而且考試內(nèi)容有限,所以在這次課程設(shè)計過程中,我們加深的對單片機指令系統(tǒng)和內(nèi)部資源的了解。知識來源于實踐,實踐是知識的動力和最終目的,實踐是檢驗真理的唯一標準,這說的一點也不錯。經(jīng)過兩個星期課程設(shè)計制作,過程曲折可謂一語難盡。在此期間我們也失落過,也曾一度熱情高漲。從開始時滿富盛激情到最后汗水背后的復(fù)雜心情,點點滴滴無不令我回味無長。生活就是這樣,汗水預(yù)示著結(jié)果也見證著收獲。勞動是人類生存生活永恒不變的話題。通過本次課程設(shè)
25、計,我才真正領(lǐng)略到“艱苦奮斗”這一詞的真正含義。我想說,設(shè)計確實有些辛苦,但苦中也有樂,在如今單一的理論學(xué)習(xí)中,很少有機會能有實踐的機會。我想說,確實很累,但當我們看到自己所做的成果時,心中也不免產(chǎn)生興奮。更加激發(fā)了我們對后續(xù)專業(yè)知識的學(xué)習(xí)興趣。對我們而言,知識上的收獲重要,精神上的豐收更加可喜。挫折是一份財富,經(jīng)歷是一份擁有。這次課程設(shè)計的過程必將成為我人生旅途上一個非常美好的回憶!通過這次課程設(shè)計使我懂得了理論與實際相結(jié)合是很重要的,只有理論知識是遠遠不夠的,只有把所學(xué)的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會服務(wù)。同時在此忠心的感謝老師為我們提供了這樣一次難得的鍛煉機會
26、。4.4 教學(xué)建議王老師在課堂上不僅教會了我們書本上的知識和學(xué)習(xí)單片機的方法,還通過他的一些所見所聞所想和我們分享,教會了我們一些為人處事的道理,為我們從校園過渡到社會起到橋梁的作用。我覺得這點非常好,不僅活躍了課堂,在而且快快樂樂的學(xué)到了知識,還學(xué)回了做人。還有一點也是非常值得肯定的,那就是遇到問題不是有問必答,有問全答,而是給我們指點方法,讓我們自己去解決,不僅讓我們在解決問題的同時學(xué)會到了東西,還培養(yǎng)了我們思考問題解決問題的能力。你想如果不管遇到什么問題都能從老師那里得到答案,想都不去想那我們長了腦袋還有什么用呢?但是我個人覺得有時候講課外東西的時候散得太開了,以至于課堂上花費了太多的時
27、間,雖然老師是個會把握度的人,每次都能夠完成教學(xué)任務(wù),但是我還是希望王老師能把這個度把緊一點,把更為重要的東西將詳細一點,讓那些學(xué)習(xí)起來相對費勁點的同學(xué)跟也上進度那就更為完美了。結(jié)束語本課程設(shè)計的數(shù)字溫度計與傳統(tǒng)的溫度計相比,具有讀數(shù)直觀方便、測溫范圍廣、測溫準確、其輸出溫度采用數(shù)字顯示等優(yōu)點。系統(tǒng)上電或按鍵復(fù)位后能自動顯示系統(tǒng)提示符“P.”,進入測溫準備狀態(tài)。當按下S0鍵時,溫度計開啟,數(shù)碼管顯示當前溫度值,并顯示小數(shù)點后兩位,當再次按下S0鍵時,關(guān)閉溫度計數(shù)碼管顯示提示符“P.”。通過測試和修改,該數(shù)字溫度計完成了設(shè)計任務(wù),符合設(shè)計要求。但是還是存在一些不足之處,比如:不能測量0以一下的溫
28、度,其次是當溫度過高或過低不具備報警功能;對于不能測量0以一下的溫度可以修改測溫程序,將溫度負值進行處理并顯示出來,對于報警功能可以在程序里加一個報警函數(shù)并在硬件電路上加相應(yīng)的報警電路實現(xiàn)報警。致 謝通過這次課程設(shè)計我對單片機有了系統(tǒng)的了解,對單片機也有了新的認識,從以前的知其然到現(xiàn)在的知其所以然是這次課程設(shè)計最大的收獲。首先要感謝謝我的指導(dǎo)老師王韌老師,是他帶領(lǐng)我走入了單片機的世界,在理論課上教了我扎實的理論基礎(chǔ),在實驗課上讓我們從理論回到實際,運用理論知識設(shè)計電路和程序?qū)崿F(xiàn)相應(yīng)的功能要求,用實驗驗證理論,對后面的課程設(shè)計起到了舉足輕重的作用;同時也感謝他給我這次鍛煉的機會,在設(shè)計過程中遇到
29、很多問題同學(xué)總是引導(dǎo)我去尋找引發(fā)問題的的原因并提出解決的問題額方法。還要感謝所有幫助過的同學(xué)參考文獻1 李朝青.單片機原理及接口技術(shù)M.北京:北京航天大學(xué)出版社,1998.2 倪繼烈.單片機原理及應(yīng)用教程M.成都:電子科技大學(xué)出版社,2004.3 何立民.單片機應(yīng)用技術(shù)選編1.北京:北京航天大學(xué)出版社,1993.4 李華.MCS-51系列單片機實用接口技術(shù)M. 北京:北京航天大學(xué)出版社,1993.5 胡汗才.單片機原理及系統(tǒng)設(shè)計P. 北京:清華大學(xué)出版社,2002.6 羅克露,徐潔.微型機原理與應(yīng)用(第二板).北京:電子工業(yè)出版社,2004.7 馬忠梅,張凱,馬巖等.單片機的C語言應(yīng)用程序設(shè)計
30、(第四版). 北京:北京航天大學(xué)出版社,2007.1.9 曹丙霞,趙艷華.PROTEL 99SE原理圖與PCB設(shè)計.電子工業(yè)出版社,2007.附錄A原理圖附錄B元器件布局圖附錄CPCB頂層布線圖PCB底層布線圖附錄D元件清單序號名稱型號數(shù)量1單片機AT89S521塊2開關(guān)按鍵式1個3傳感器DS18B201個4數(shù)碼管PLTF-5461BS1個5晶振12MHz1個6三極管85504個7排阻10K1個8電阻0.47K12個9電阻1K2個10電阻4.7K1個11電阻0.2K1個12電容1044個13電容33pF2個14電容22F1個15二極管LED1個17下載口ISP1個18鍵盤獨立式2個19電源接口
31、USB1個附錄E程序清單/*2009級單片機課程設(shè)計作品*/*數(shù)字溫度計設(shè)計*/*電子0902班*/*顏尚華*/#include#define uchar unsigned char#define uint unsigned intsbit smg0=P23;/接數(shù)碼管LED0sbit smg1=P22;/接數(shù)碼管LED1sbit smg2=P21;/接數(shù)碼管LED2sbit smg3=P20;/接數(shù)碼管LED3sbit DQ=P27; /接18B20數(shù)據(jù)單總線uchar zs,xs;BZ;/分別定義全局變量:整數(shù)位、小數(shù)位和標志位unsigned char code smg_we=0xC0,
32、0xF9,0xA4,0xB0,0x99, 0x92,0x82,0xF8, 0x80, 0x90;/數(shù)碼管09的共陰代碼void init_ds18b20(void);/聲明18b20初始化函數(shù)void write_byte(uchar dat);/聲明18b20寫一字節(jié)函數(shù)uchar read_byte(void);/聲明18b20讀一字節(jié)函數(shù)uchar key_data(void);/ 申明取鍵值函數(shù)uchar key(void);/聲明判鍵函數(shù)void delay(uint t);/聲明延時函數(shù)void delay_1ms(void);/聲明延時1ms函數(shù)void display(void
33、);/聲明顯示函數(shù)void read_wendu(void);/聲明讀取溫度數(shù)據(jù)函數(shù)/*主函數(shù)*/void main(void)uchar i,j=1; BZ=0xff;/初始化標志位 while(1) i=key(); switch(i)case 0:read_wendu();display();break; case 2:BZ=BZ;read_wendu();display();break; default:break; /*延時1ms函數(shù)*/void delay_1ms(void)uchar j,t;for(t=100;t0;t-)/利用兩個for語句循環(huán)延時1ms for(j=19;j
34、0;j-); /*延時函數(shù)*/void delay(uint t) while(t-);/利用while語句空操作延時 /*18B20初始化函數(shù)*/void init_ds18b20(void)uchar n;DQ=1;delay(8);/穩(wěn)定數(shù)據(jù)DQ=0;/ 拉低數(shù)據(jù)總線delay(80);/延時600usDQ=1;/釋放數(shù)據(jù)線delay(8);n=DQ;/采樣delay(4); /*寫字節(jié)函數(shù)*/void write_byte(uchar dat)uchar i;for(i=0;i=1;/移位準備寫下一位數(shù)據(jù)delay(4);/延時等待寫下一位數(shù)據(jù) /*讀字節(jié)函數(shù)*/uchar read_
35、byte(void)uchar i,d;for(i=0;i=1;/移位準備讀下一位數(shù)據(jù)(延時大于1us)DQ=1;/釋放數(shù)據(jù)總線if(DQ)/采樣數(shù)據(jù)d|=0x80;delay(8);/延時等待讀下一位數(shù)據(jù)return d;/返回數(shù)據(jù)值 /*讀溫度函數(shù)*/void read_wendu(void)uchar a,b,c;init_ds18b20();/初始化18B20write_byte(0xcc);/跳過ROMwrite_byte(0x44);/啟動溫度測量delay(300);/延時等待溫度轉(zhuǎn)換init_ds18b20();/初始化18B20write_byte(0xcc);/跳過ROMw
36、rite_byte(0xbe);/讀取溫度a=read_byte();/讀低8位b=read_byte();/讀高8位c=(a&0xf0)/16+b*16;/去掉小數(shù)位zs=c&0x7f;/取整數(shù)位xs=(a&0x0f)*6.25)/1;/取小數(shù)位/*取鍵值涵數(shù)*/uchar key_data(void) uchar i;i=P1;/取鍵值i=i;i=i&0x02;return (i);/返回鍵值 /*判鍵函數(shù)*/uchar key(void) uchar i,d;i=key_data();/取鍵值if(i!=0)/鍵是否有動作 display(); display(); display();
37、/調(diào)顯示程序延時,消抖 i=key_data();/取鍵值 if(i!=0)/判鍵是否按下 i=key_data(); d=i; while(i!=0) display(); i=key_data();/取鍵值 display(); display(); display();/調(diào)顯示程序延時,消抖 i=key_data();/取鍵值 while(i!=0)/判鍵是否松開 display(); i=key_data();/取鍵值 i=d; return (i);/返回鍵值 /*顯示函數(shù)*/void display(void) smg0=1; smg1=1; smg2=1; smg3=1;/初始化
38、:熄滅所有數(shù)碼管 if(BZ!=0)/溫度值為負P0=0x0c;/送P.代碼 smg0=0; smg1=1; smg2=1; smg3=1;/點亮數(shù)碼管LED0 delay_1ms(); else if(0=zs&zs10)/只有個位和小數(shù)位三位數(shù)碼管顯示P0=smg_wexs%10;/送小數(shù)百分位代碼 smg0=0; smg1=1; smg2=1; smg3=1;/點亮小數(shù)位數(shù)碼管LED0 delay_1ms(); P0=smg_wexs/10;/送小數(shù)十分位代碼 smg0=1; smg1=0; smg2=1; smg3=1;/點亮小數(shù)位數(shù)碼管LED1 delay_1ms(); P0=smg
39、_wezs%10&0x7f;/送個位加小數(shù)點代碼 smg0=1; smg1=1; smg2=0; smg3=1;/點亮個位數(shù)碼管LED2 delay_1ms(); smg0=1; smg1=1; smg2=1; smg3=1;/熄滅高位數(shù)碼管LED3 delay_1ms(); if(10=zs&zs100)/只有十位、個位和小數(shù)位四位數(shù)碼管顯示 P0=smg_wexs%10;/送小數(shù)百分位代碼 smg0=0; smg1=1; smg2=1; smg3=1;/點亮小數(shù)位數(shù)碼管LED0 delay_1ms(); P0=smg_wexs/10;/送小數(shù)十分位代碼 smg0=1; smg1=0; sm
40、g2=1; smg3=1;/點亮小數(shù)位數(shù)碼管LED1 delay_1ms(); P0=smg_wezs%10&0x7f;/送個位加小數(shù)點代碼 smg0=1; smg1=1; smg2=0; smg3=1;/點亮個位數(shù)碼管LED2 delay_1ms(); P0=smg_wezs/10;/送十位代碼 smg0=1; smg1=1; smg2=1; smg3=0;/點亮十位數(shù)碼管LED3 delay_1ms(); if(100=zs)/當溫度值大于100是顯示P. P0=0x11;/送P.代碼 smg0=0; smg1=1; smg2=1; smg3=1;/點亮數(shù)碼管LED0 delay_1ms(
41、); 附錄:外文翻譯In Wang Zuoliangs translation practices, he translated many poems, especially the poems written by Robert Burns. His translation of Burns “A Red, Red Rose” brought him fame as a verse translator. At the same time, he published about ten papers on the translation of poems. Some argue that p
42、oems cannot be translated. Frost stresses that poetry might get lost in translation. According to Wang, verse translation is possible and necessary, for “The poet-translator brings over some exciting work from another culture and in doing so is also writing his own best work, thereby adding somethin
43、g to his culture. In this transmission and exchange, a richer, more colorful world emerges. ”(Wang, 1991:112). Then how can we translate poems? According to Wangs understanding, the translation of poems is related to three aspects: A poems meaning, poetic art and language. (1)A poems meaning “Socio-
44、cultural differences are formidable enough, but the matter is made much more complex when one realizes that meaning does not consist in the meaning of words only, but also in syntactical structures, speech rhythms, levels of style.” (Wang, 1991:93).(2)Poetic art According to Wang, “Blys point about the marvelous translation being made pos
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 求職禮儀及技巧報告范文
- 前期經(jīng)費調(diào)查報告范文
- 2025年度租賃型倉庫房東租賃合同及倉儲服務(wù)協(xié)議
- 二零二五年度戶外野營安全指導(dǎo)與管理合同
- 二零二五年度土地流轉(zhuǎn)與土地開發(fā)項目委托管理服務(wù)協(xié)議
- 二零二五年度勞動合同主體變更補償與員工安置及薪酬調(diào)整合同
- 2025年度電力節(jié)能減排購售電合同
- 二零二五年度文化產(chǎn)業(yè)政策研究委托協(xié)議
- 二零二五年度農(nóng)村土地經(jīng)營權(quán)流轉(zhuǎn)與農(nóng)業(yè)科技推廣合同
- 二零二五年度個體工商戶學(xué)徒培訓(xùn)勞動合同
- 2024年3月30日事業(yè)單位聯(lián)考A類《職業(yè)能力傾向測驗》試題
- DB35T 1816-2019 基層地震災(zāi)害緊急救援隊能力分級測評
- 現(xiàn)代家政導(dǎo)論-課件 2.1家庭的認知
- 中小企業(yè)(民營企業(yè))ESG星級評價
- 電氣工程及其自動化職業(yè)規(guī)劃課件
- 社區(qū)菜市場改造工程協(xié)議
- 《籃球運球》教案(共四篇)
- 高中 語文 必修上冊 第八單元《詞語積累與詞語解釋》課件
- 2024年計算機二級WPS考試題庫380題(含答案)
- 客觀題法律職業(yè)資格考試(試卷一)試題及解答參考(2024年)
- 【網(wǎng)紅李佳琦直播帶貨營銷策略問題及對策13000字(論文)】
評論
0/150
提交評論