版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 本科生畢業(yè)論文(設(shè)計)題 目: 基于單片機(jī)的環(huán)境控制模擬實(shí)驗(yàn)箱 (恒溫恒濕控制系統(tǒng)) 姓 名: 學(xué) 院: 工學(xué)院 專 業(yè): 電子信息科學(xué)與技術(shù) 班 級: 信息95 學(xué) 號: 32309509 指導(dǎo)教師: 職稱: 講師 2013 年 5月 1 日 目 錄摘要1關(guān)鍵詞1abstract.1key words11論文概述21.1課題背景21.2課題研究的目的和意義21.3國內(nèi)外發(fā)展?fàn)顩r21.4研究的主要內(nèi)容32系統(tǒng)的總體設(shè)計32.1 系統(tǒng)設(shè)計的原則32.2 系統(tǒng)的組成32.3 系統(tǒng)的工作原理43.系統(tǒng)的硬件設(shè)計43.1單片機(jī)的設(shè)計43.1.1 c8051f020單片機(jī)概述43.1.2 c8051f
2、020單片機(jī)與80c51主要的不同點(diǎn)53.2 溫濕度傳感器的設(shè)計63.3 液晶顯示裝置的設(shè)計83.4 輸入控制模塊的設(shè)計103.5 溫濕度控制模塊的設(shè)計113.5.1溫度控制裝置113.5.2濕度控制裝置123.6 模擬箱的設(shè)計與組建134.系統(tǒng)的軟件設(shè)計134.1 模擬箱的設(shè)計與組建134.1.1 keil概述144.1.2 keil開發(fā)系統(tǒng)整體結(jié)構(gòu)154.2常用的調(diào)試方法154.2.1單步調(diào)試154.2.2斷點(diǎn)調(diào)試164.3系統(tǒng)軟件流程圖164.4初始化模塊174.5溫濕度檢測模塊174.6液晶顯示模塊194.7鍵盤輸入模塊214.8溫濕度判斷控制模塊24結(jié)論25致謝26參考文獻(xiàn)27 基于
3、單片機(jī)的環(huán)境控制模擬實(shí)驗(yàn)箱 (恒溫恒濕控制系統(tǒng)) 電子信息科學(xué)與技術(shù)專業(yè)學(xué)生 孫嘉駿指導(dǎo)教師 盧偉摘要:隨著物質(zhì)生活水平的日益提高和社會經(jīng)濟(jì)的不斷發(fā)展,人們對生活品質(zhì)的要求也日益提高,因此引入了科技住宅這一概念,綠色科技住宅最為吸引人的一點(diǎn)即為24小時的恒溫恒濕,如何有效的控制溫度和濕度,也一直是人們探討的話題。本論文主要闡述了利用c8051f020單片機(jī)設(shè)計一個模擬智能家居的溫濕度檢測控制系統(tǒng),對室內(nèi)的溫濕度進(jìn)行檢測控制并實(shí)時顯示。其中溫濕度傳感器采用am2301數(shù)字溫濕度傳感器,通過c8051f020單片機(jī)的處理把溫濕度值顯示在1602液晶上。同時通過4*4矩陣鍵盤設(shè)定所需的溫濕度,并實(shí)時
4、判斷溫濕度值是否滿足設(shè)定的溫濕度范圍,若超出設(shè)定范圍,通過c8051f020啟動溫濕度控制系統(tǒng),達(dá)到恒溫恒濕的目的。關(guān)鍵詞:c8051f020;am2301;1602液晶;恒溫恒濕 the environmental simulate box based on single-chip microcomputer(constant temperature and humidity control system) student majoring in electronic and information science and technology sun jiajun tutor lu wei
5、abstract:with the continuous development of material living standards and increasing the social economy, peoples quality of life demands are increasing, thus introducing the concept of residential technology, the constant temperature and humidity an attraction for 24 hours for residential green tech
6、nology, how to effectively control the temperature and humidity, has always been people discussion on topic.this paper mainly expounds the temperature and humidity measuring and controlling system using c8051f020 single-chip microcomputer to design a simulation of intelligent home furnishing, temper
7、ature and humidity on the indoor test control and real-time display. the temperature and humidity sensor using am2301 digital temperature and humidity sensors, through the c8051f020 mcu to temperature and humidity values in the 1602 liquid crystal display. at the same time, through the 4*4 matrix ke
8、yboard set temperature and humidity is required, and the real-time judgment of temperature and humidity value meets the set humidity and temperature range, if exceed the set range, through the c8051f020 start temperature and humidity control system, to achieve the purpose of constant temperature and
9、 humidity.key words: c8051f020;am2301;1602lcd;constant temperature and humidity引言 隨著物質(zhì)生活水平的日益提高和社會經(jīng)濟(jì)的不斷發(fā)展,人們對生活品質(zhì)的要求也日益提高,因此引入了科技住宅這一概念,綠色科技住宅最為吸引人的一點(diǎn)即為24小時的恒溫恒濕,如何有效的控制溫度和濕度,也一直是人們探討的話題。而基于單片機(jī)的溫濕度控制系統(tǒng)的模擬實(shí)驗(yàn)箱對解決這一問題有著非常重大的意義。1論文概述1.1課題背景隨著物質(zhì)生活水平的日益提高和社會經(jīng)濟(jì)的不斷發(fā)展,人們對生活品質(zhì)的要求也日益提高,因此引入了科技住宅這一概念,綠色科技住宅最為吸引
10、人的一點(diǎn)即為24小時的恒溫恒濕,如何有效的控制溫度和濕度,也一直是人們探討的話題。而基于單片機(jī)的溫濕度控制系統(tǒng)的模擬實(shí)驗(yàn)箱對解決這一問題有著非常重大的意義。之前的恒溫恒濕家居主要設(shè)定一固定的溫濕度,為了充分的利用好恒溫恒濕這一高效技術(shù),就必需有一套科學(xué)的,先進(jìn)的技術(shù)處理手段,用以對不同的人在不同的季節(jié)和氣候條件下對溫度和濕度有著截然不同的需求。溫濕度控制對于單片機(jī)的應(yīng)用具有一定的實(shí)際意義,它代表了一類自動控制的方法。而且其應(yīng)用十分廣泛。1.2課題研究的目的和意義隨著經(jīng)濟(jì)和社會的不斷發(fā)展,人們對自己的生活環(huán)境越來越嚴(yán)格。基于單片機(jī)的溫濕度監(jiān)測控制統(tǒng)設(shè)計,將對環(huán)境的溫濕度監(jiān)測控制系統(tǒng)做詳細(xì)的設(shè)計與
11、實(shí)現(xiàn)。采用高性能的控制芯片c8051f020,向模塊化、高速化、智能化的單片機(jī)數(shù)據(jù)采集系統(tǒng)靠近。將此系統(tǒng)應(yīng)用到智能家居中無疑為人們的日常生活提供了更加適宜的環(huán)境,使人們不用再受室外的氣候和天氣影響,具有十分良好的發(fā)展前景。本系統(tǒng)擬采用的c8051f020為89c51單片機(jī)的一款升級衍化產(chǎn)品。89c51單片機(jī)是常用于控制的芯片,在智能儀器儀表、工業(yè)檢測控制、機(jī)電一體化等方面取得了令人矚目的成果,用其作為溫濕度檢測控制系統(tǒng)的實(shí)例也很多。使用89c51單片機(jī)能夠?qū)崿F(xiàn)溫濕度全程的自動檢測與控制,而且89c51單片機(jī)易于學(xué)習(xí)、掌握,性價比高。使用89c51型單片機(jī)設(shè)計溫濕度檢測控制系統(tǒng),可以及時、精確的
12、反映室內(nèi)的溫度以及濕度的變化。完成諸如升溫到特定溫度、降溫到特定溫度、在溫度上下限范圍內(nèi)保持恒溫等多種控制方式,在濕度控制方面也是如此。將此系統(tǒng)應(yīng)用到智能家居,科技住宅領(lǐng)域中無疑能方便的給人們提供更加舒適的居住環(huán)境。1.3國內(nèi)外發(fā)展?fàn)顩r國外在這一領(lǐng)域較為領(lǐng)先,技術(shù)也較為成熟,目前這方面主要的發(fā)展方向一是利用計算機(jī)仿真技術(shù),與pc機(jī)結(jié)合,做仿真實(shí)驗(yàn)。二是提高試驗(yàn)速度,降低試驗(yàn)成本。多功能化、智能化,更加安全、精確。雖然現(xiàn)在溫濕箱只能模擬兩種參數(shù),但是將來將重點(diǎn)發(fā)展復(fù)合式的多功能智能化試驗(yàn)箱2。恒溫恒濕試驗(yàn)箱的應(yīng)用越來越廣, 生產(chǎn)、科研對它的要求也越來越高。要求它的性能價格比更高, 使用壽命更長,
13、 使用費(fèi)用更少(省電) , 響應(yīng)速度更快。近幾年來,我國從國外引進(jìn)了大批試驗(yàn)系統(tǒng),為我國工業(yè)產(chǎn)品的研制和定型發(fā)揮了重要作用,但由于其本身的復(fù)雜性,使得試驗(yàn)箱在運(yùn)行中出現(xiàn)了許多問題,而且出現(xiàn)了問題不能及時解決,大大延長了試驗(yàn)周期,影響了產(chǎn)品的研制工作。而產(chǎn)生這些現(xiàn)象的原因是對綜合試驗(yàn)的工作原理不了解3。因此本次課題將從恒溫恒濕箱原理出發(fā),在實(shí)現(xiàn)恒溫恒濕控制的基礎(chǔ)上進(jìn)一步在精度上,加濕方式等方面進(jìn)行完善和提高。1.4研究的主要內(nèi)容 本研究主要集中于設(shè)備的結(jié)構(gòu)、溫控和濕控選擇、控制精度與測試監(jiān)控等方面。主要研究內(nèi)容如下:1. 溫度檢測與控制:對箱內(nèi)溫度進(jìn)行測量,并通過升溫或降溫達(dá)到最佳溫度。2. 濕
14、度檢測與控制:對箱內(nèi)濕度進(jìn)行測量,并通過噴霧或去濕達(dá)到最佳濕度。3. 顯示: lcd顯示相應(yīng)的溫濕度,并有相應(yīng)的控制界面。4. 人性化的控制設(shè)計:根據(jù)個人具體的生活需求,可通過輸入按鍵或觸摸屏進(jìn)行溫濕度設(shè)置,把溫濕度值控制在一定的范圍內(nèi)。2系統(tǒng)的總體設(shè)計2.1 系統(tǒng)設(shè)計的原則要求單片機(jī)系統(tǒng)應(yīng)具有可靠性高、操作維護(hù)方便、性價比高等特點(diǎn)??煽啃裕焊呖煽啃允菃纹瑱C(jī)系統(tǒng)應(yīng)用的前提,在系統(tǒng)設(shè)計的每一個環(huán)節(jié),都應(yīng)該將可靠性作為首要的設(shè)計準(zhǔn)則。提高系統(tǒng)的可靠性通常從以下幾個方面考慮:使用可靠性高的元器件;設(shè)計電路板時布線和接地要合理;對供電電源采用抗干擾措施;輸入輸出通道抗干擾措施;進(jìn)行軟硬件濾波;系統(tǒng)自診
15、判斷功能等。操作維護(hù)方便:在系統(tǒng)的軟硬件設(shè)計時,應(yīng)從操作者的角度考慮操作和維護(hù)方便,盡量減少對操作人員專用知識的要求,以利于系統(tǒng)的推廣。因此在設(shè)計時,要盡可能減少人機(jī)交換接口,多采用操作內(nèi)置或簡化的方法。同時系統(tǒng)應(yīng)配有現(xiàn)場故障自動診斷程序,一旦發(fā)生故障能保證有效地對故障進(jìn)行定位,以便進(jìn)行維修。性價比:單片機(jī)除體積小、功耗低等特點(diǎn)外,最大的優(yōu)勢在于高性能價格比。一個單片機(jī)應(yīng)用系統(tǒng)能否被廣泛使用,性價比是其中一個關(guān)鍵因素。因此,再設(shè)計時,除了保持高性能外,盡可能降低成本,如簡化外圍硬件電路,在系統(tǒng)性能和速度允許的情況下盡可能使用軟件功能取代硬件功能等。2.2 系統(tǒng)的組成測控系統(tǒng)主要采用soc單片機(jī)
16、c8051f020,選用溫濕度傳感器am2301,1602lcd顯示器,4*4矩陣鍵盤,以及控制溫度的制熱制冷設(shè)備和控制濕度噴霧設(shè)備。系統(tǒng)總的組成如圖2.1所示:圖2.12.3 系統(tǒng)的工作原理本系統(tǒng)以單片機(jī)c8051f020為核心,數(shù)據(jù)采集、傳輸、顯示都要通過單片機(jī)。數(shù)據(jù)采集通過單總線的智能數(shù)字溫濕度傳感器am2301完成;通過單片機(jī)把采集的數(shù)據(jù)顯示在lcd上。并通過鍵盤設(shè)定控制的溫濕度范圍。在整個系統(tǒng)中采用了am2301單總線技術(shù),采用c語言進(jìn)行單片機(jī)編程。 溫室溫濕度控制系統(tǒng)是以c8051f020單片機(jī)作為中央控制裝置,制冷,制熱設(shè)備,加濕設(shè)備,除濕設(shè)備等。 c8051f020作為中央控制
17、裝置,負(fù)責(zé)中心運(yùn)算和控制,協(xié)調(diào)系統(tǒng)各個模塊的工作。 矩陣鍵盤:負(fù)責(zé)設(shè)定控制的溫濕度范圍。 制冷設(shè)備:負(fù)責(zé)系統(tǒng)的降溫工作。 加熱設(shè)備:負(fù)責(zé)系統(tǒng)的加熱工作。 噴霧設(shè)備:負(fù)責(zé)系統(tǒng)的加濕工作。3.系統(tǒng)的硬件設(shè)計3.1單片機(jī)的設(shè)計3.1.1 c8051f020單片機(jī)概述 c8051f系列單片機(jī)是完全集成的混合信號系統(tǒng)級芯片,具有與8051兼容的cip-51微控制器內(nèi)核,采用流水線結(jié)構(gòu),單周期指令運(yùn)行速度是8051的12倍,全指令集運(yùn)行速度是原來的9.5倍。熟悉ncs-51系列單片機(jī)的工程技術(shù)人員可以很容易地掌握c8051f的應(yīng)用技術(shù)并能進(jìn)行軟件的移植。但是不能將8051的程序完全照搬的應(yīng)用于c8051f
18、單片機(jī)中,這是因?yàn)閮烧叩膬?nèi)部資源存在較大的差異,必須經(jīng)過加工才能予以使用。其中c8051f020以其功能較全面,應(yīng)用較廣泛的特點(diǎn)成為c8051f的代表性產(chǎn)品,其性能價格比在目前應(yīng)用領(lǐng)域也極具競爭力。c8051f020的內(nèi)部電路包括cip-51微控制器內(nèi)核及ram、rom、io口、定時計數(shù)器、adc、dac、pca(printedcircuitassembly印制電路組裝)、spi(serialperipheralinterface-串行外設(shè)接口)和smbus(systemmanagementbus)等部件,即把計算機(jī)的基本組成單元以及模擬和數(shù)字外設(shè)集成在一個芯片上,構(gòu)成一個完整的片上系統(tǒng)(so
19、c)。本次所采用的最小開發(fā)板如圖3.1所示:圖3.13.1.2 c8051f020單片機(jī)與80c51主要的不同點(diǎn)運(yùn)行速度: c8051f020的指令運(yùn)行速度是一般80c51系列單片機(jī)的10倍以上。因?yàn)槠鋍ip-51中采用了流水線處理結(jié)構(gòu),已經(jīng)沒有了機(jī)器周期時序,指令執(zhí)行的最小時序單位為系統(tǒng)時鐘,大部分指令只要12個系統(tǒng)周期即可完成。又由于其時鐘系統(tǒng)比80c51的更加完善,有多個時鐘源,且時鐘源可編程,時鐘頻率范圍為025mhz,當(dāng)cip-5l工作在最大系統(tǒng)時鐘頻率25mhz時,它的峰值速度可以達(dá)到25mis,c8051f020已進(jìn)入了8位高速單片機(jī)行列。io端口的配置方式: c8051f020
20、擁有8個8位的io端口,大量減少了外部連線和器件擴(kuò)展,有利于提高可靠性和抗干擾能力。其中低4個io端口除可作為一般的通用io端口外,還可作為其他功能模塊的輸入或輸出引腳,它是通過交叉開關(guān)配置寄存器xbr0、xbr1、xbr2選擇并控制的,可將片內(nèi)的計數(shù)器定時器、串行總線、硬件中斷、比較器輸出及其它的數(shù)字信號配置為在端口io引腳出現(xiàn),這樣用戶可以根據(jù)自己的特定需要選擇所需的數(shù)字資源和通用io口。數(shù)字交叉開關(guān)是一個比較大的數(shù)字開關(guān)網(wǎng)路,這在所有80c51系列單片機(jī)上是一個空白。另外p1mdin用于選擇p1的輸入方式是模擬輸入還是數(shù)字輸入,復(fù)位值為11111111b,即默認(rèn)為數(shù)字輸入方式。而80c5
21、1單片機(jī)的io引腳是固定分配的,即占用引腳多,配置又不夠靈活。c8051f020通過優(yōu)先權(quán)交叉開關(guān)譯碼器(如圖2所示)控制數(shù)字開關(guān)網(wǎng)路,端口引腳的分配順序是從p0.0開始一直到p3.7。當(dāng)交叉開關(guān)配置寄存器xbr0、xbr1和xbr2中外設(shè)的對應(yīng)使能位被設(shè)置為邏輯“1”時,交叉開關(guān)將端口引腳分配給外設(shè),例如,如果uartoen位(xbr0.2)被設(shè)置為邏輯“1”,則tx0和rx0引腳將分別被分配到p0.0和p0.1。因?yàn)閡art0有最高優(yōu)先權(quán),所以當(dāng)uartoen位被設(shè)置為邏輯“1”時其引腳將總是被分配到p0.0和p0.1。未被設(shè)置的交叉開關(guān)分配端口可作為通用io口。注意:當(dāng)選擇了串行通信外設(shè)
22、(即smbus、spi或uart)時,交叉開關(guān)將為所有相關(guān)功能分配引腳。例如,不能為uart0功能只分配tx0引腳而不分配rx0引腳。交叉開關(guān)寄存器被正確配置后,通過將xbare(xbr2.6)設(shè)置為邏輯“1”來使能交叉開關(guān)。內(nèi)部功能: c8051f020內(nèi)部帶有數(shù)據(jù)采集所需的adc和dac,其中adc有兩個,一個是8路12位逐次逼近型adc,可編程轉(zhuǎn)換速率,最大為100kss可通過多通道選擇器配置為單端輸入或差分輸入。內(nèi)有可編程增益放大器pga用于將輸入的信號放大,提高ad的轉(zhuǎn)換精度。可編程增益為:0.5、1、2、4、8或16,復(fù)位時默認(rèn)值為1。另一個是8路8位adc,可編程轉(zhuǎn)換速率最大為5
23、00kss,其可編程放大增益為0.5、1、2、4,復(fù)位時默認(rèn)值為0.5。有2個12位的dac,用于將12位的數(shù)字量轉(zhuǎn)換為電壓量,可產(chǎn)生連續(xù)變化的波形,兩路信號可同步輸出。外部接口:c8051f020外設(shè)還增添了三個串行口??赏瑫r與外界進(jìn)行串行數(shù)據(jù)通信,smbus兼容于i2c串行擴(kuò)展總線;spi串行擴(kuò)展接口;兩個增強(qiáng)型uart串口。c8051f020具有基于jtag接口的在系統(tǒng)調(diào)試功能,片內(nèi)的調(diào)試電路通過jtag接口可提供高速、方便的在系統(tǒng)調(diào)試。3.2 溫濕度傳感器的設(shè)計1)am2301產(chǎn)品概述am2301數(shù)字溫濕度傳感器(如圖3.2)是一款含有已校準(zhǔn)數(shù)字信號輸出的溫濕度復(fù)合傳感器。它應(yīng)用專用的
24、數(shù)字模塊采集技術(shù)和溫濕度傳感技術(shù),確保產(chǎn)品具有極高的可靠性與卓越的長期穩(wěn)定性。傳感器包括一個電容式感濕元件和一個ntc測溫元件,并與一個高性能8位單片機(jī)相連接。因此該產(chǎn)品具有品質(zhì)卓越、超快響應(yīng)、抗干擾能力強(qiáng)、性價比極高等優(yōu)點(diǎn)。每個am2301傳感器都在極為精確的濕度校驗(yàn)室中進(jìn)行校準(zhǔn)。校準(zhǔn)系數(shù)以程序的形式儲存在otp內(nèi)存中,傳感器內(nèi)部在檢測信號的處理過程中要調(diào)用這些校準(zhǔn)系數(shù)。單線制串行接口,使系統(tǒng)集成變得簡易快捷。超小的體積、極低的功耗,信號傳輸距離可達(dá)20米以上,使其成為各類應(yīng)用甚至最為苛刻的應(yīng)用場合的最佳選則。產(chǎn)品為 4 針單排引腳封裝。連接方便,特殊封裝形式可根據(jù)用戶需求而提供。圖3.22
25、)產(chǎn)品亮點(diǎn)超低能耗、傳輸距離遠(yuǎn)、全部自動化校準(zhǔn)、采用電容式濕敏元件、完全互換、標(biāo)準(zhǔn)數(shù)字單總線輸出、卓越的長期穩(wěn)定性、采用高精度測溫元件。3)單總線接口定義,如圖3.3所示:圖3.3引腳說明(vdd sda gnd):am2301的供電電壓范圍為 3.5v - 5.5v,建議供電電壓為 5v。數(shù)據(jù)線 sda 引腳為三態(tài)結(jié)構(gòu),用于讀/寫傳感器數(shù)據(jù)。詳細(xì)見單總線的通信協(xié)議說明。4)單總線接口定義 data 用于微處理器與 dht21之間的通訊和同步,采用單總線數(shù)據(jù)格式,一次通訊時間5ms左右 ,具體格式在下面說明,當(dāng)前數(shù)據(jù)傳輸為40bit,高位先出。 數(shù)據(jù)格式:40bit數(shù)據(jù)=16bit濕度數(shù)據(jù)+1
26、6bit溫度數(shù)據(jù)+8bit校驗(yàn)和 例子: 接收40bit數(shù)據(jù)如下: 0000 0010 1000 1100 0000 0001 0101 11111110 1110濕度數(shù)據(jù) 溫度數(shù)據(jù) 校驗(yàn)和濕度高8位+濕度低8位+溫度高8位+溫度低8位=的末8位=校驗(yàn)和例如:0000 0010+1000 1100+0000 0001+0101 1111=1110 1110濕度=65.2rh 溫度=35.1 當(dāng)溫度低于0時溫度數(shù)據(jù)的最高位置1。 例如:-10.1表示為1000 0000 0110 0101 用戶主機(jī)(mcu)發(fā)送一次開始信號后,dht21從低功耗模式轉(zhuǎn)換到高速模式,等待主機(jī)開始信號結(jié)束后,dht
27、21發(fā)送響應(yīng)信號,送出40bit的數(shù)據(jù),并觸發(fā)一次信號采集。3.3 液晶顯示裝置的設(shè)計圖3.41602液晶(如圖3.4)也叫1602字符型液晶 它是一種專門用來顯示字母、數(shù)字、符號等的點(diǎn)陣型液晶模塊 它有若干個5x7或者5x11等點(diǎn)陣字符位組成,每個點(diǎn)陣字符位都可以顯示一個字符。每位之間有一個點(diǎn)距的間隔 每行之間也有也有間隔 起到了字符間距和行間距的作用,正因?yàn)槿绱?所以他不能顯示圖形(用自定義cgram,顯示效果也不好)1602lcd是指顯示的內(nèi)容為16x2,即可以顯示兩行,每行16個字符液晶模塊(顯示字符和數(shù)字)目前市面上字符液晶絕大多數(shù)是基于hd44780液晶芯片的,控制原理是完全相同的
28、,因此基于hd44780寫的控制程序可以很方便地應(yīng)用于市面上大部分的字符型液晶。1602lcd主要技術(shù)參數(shù):顯示容量:162個字符芯片工作電壓:4.55.5v工作電流:2.0ma(5.0v)模塊最佳工作電壓:5.0v字符尺寸:2.954.35(wh)mm圖3.5引腳功能說明(如圖3.5):1602lcd采用標(biāo)準(zhǔn)的14腳(無背光)或16腳(帶背光)接口,各引腳接口說明如下:第1腳:vss為地電源。第2腳:vdd接5v正電源。第3腳:vl為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地時對比度最高,對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10k的電位器調(diào)整對比度。第4腳:rs為寄存器選擇
29、,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。第5腳:r/w為讀寫信號線,高電平時進(jìn)行讀操作,低電平時進(jìn)行寫操作。當(dāng)rs和r/w共同為低電平時可以寫入指令或者顯示地址,當(dāng)rs為低電平r/w為高電平時可以讀忙信號,當(dāng)rs為高電平r/w為低電平時可以寫入數(shù)據(jù)。第6腳:e端為使能端,當(dāng)e端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。第714腳:d0d7為8位雙向數(shù)據(jù)線。第15腳:背光源正極。第16腳:背光源負(fù)極。1602液晶操作的時序圖(如圖3.6,3.7):圖3.6圖3.73.4 輸入控制模塊的設(shè)計圖3.8如圖3.8所示矩陣鍵盤,每個按鍵有它的行值和列值,行值和列值的組合就是識別這個按鍵的編碼。
30、矩陣的行線和列線分別通過兩并行接口和cpu 通信。每個按鍵的狀態(tài)同樣需變成數(shù)字量“0”和“1”,開關(guān)的一端(列線)通過電阻接vcc,而接地是通過程序輸出數(shù)字“0”實(shí)現(xiàn)的。鍵盤處理程序的任務(wù)是:確定有無鍵按下,判斷哪一個鍵按下,鍵的功能是什么;還要消除按鍵在閉合或斷開時的抖動。兩個并行口中,一個輸出掃描碼,使按鍵逐行動態(tài)接地,另一個并行口輸入按鍵狀態(tài),由行掃描值和回饋信號共同形成鍵編碼而識別按鍵,通過軟件查表,查出該鍵的功能。3.5 溫濕度控制模塊的設(shè)計3.5.1溫度控制裝置溫度控制裝置主要分為加熱裝置(電熱絲)以及制冷裝置(半導(dǎo)體制冷片)半導(dǎo)體制冷片實(shí)物圖(圖3.9):圖3.9與單片機(jī)連接如圖
31、3.10所示:圖3.10半導(dǎo)體制冷片概述: 半導(dǎo)體制冷器的用途很多,可用于制作便攜冷藏/保溫箱、冷熱飲水機(jī)等。也用于電子器件的散熱。目前制冷器所采用的半導(dǎo)體材料最主要為碲化鉍,加入不純物經(jīng)過特殊處理而成 n 型或 p 型半導(dǎo)體溫差元件。以市面常見的tec1-12605為例,其 額定電壓為:12v,額定電流為5a,最大溫差可達(dá)60攝氏度,外型尺寸為4 x 4 x 0.cm,重約25克。它的工作特點(diǎn)是一面制冷而一面發(fā)熱。接通直流電源后,電子由負(fù)極(-)出發(fā),首先經(jīng)過p型半導(dǎo)體,在此吸收熱量,到了n型半導(dǎo)體,又將熱量放出,每經(jīng)過一個np 模組,就有熱量由一邊被送到另外一邊,造成溫差,從而形成冷熱端。
32、 特性: 依據(jù)珀爾帖效應(yīng)制作的溫差電致冷組件重量輕,體積小并具有相對高的致冷量,它特別適用于有限空間的致冷,由于致冷組件是一種固態(tài)熱泵,因而它無需維護(hù),無噪音 ,能在任何位置工作,抗沖擊和抗振動能力強(qiáng)。另外,改變組件工作電流極性時,它又可以致熱,改變電流強(qiáng)度可調(diào)整致冷功率。 產(chǎn)品型號 tec1-12706外形尺寸 40*40*3.8 元件對數(shù) 127引線標(biāo)準(zhǔn) 20awg ul1569 105標(biāo)準(zhǔn)鍍錫導(dǎo)線,pvc絕緣皮,引線長3505mm,線端部剝皮71mm 引線焊在熱面一端。阻值 1.952.15(環(huán)境溫度231,1khz ac測試)最大溫差tmax(qc=0) 6569工作電流imax 12
33、vdc時4.6a,15.4vdc時6.3a最大電壓vmax 15.4vdc最大致冷功率qcmax 56w 承受裝配壓力 98n/cm2工作環(huán)境溫度范圍 -55803.5.2濕度控制裝置由于室內(nèi)的墻壁一般能有效的吸收空氣中的水蒸氣,從而達(dá)到降低濕度的效果,因此在濕度控制方面,主要考慮對空氣的霧化(加濕),選用超聲霧化頭實(shí)物如圖3.11所示:圖3.11與單片機(jī)連接如圖3.12所示:圖3.12超聲霧化頭主要性能參數(shù):工作電壓: 24(v)功率:19(w)(1w)霧化量:400cc/har匹配電源 :24(v) dc (直流變壓器)工作頻率: 170050(khz)換能片直徑 : 20mm有效水位 :
34、20mm75mm工作溫度 :545彩燈:無燈 水位感應(yīng)開關(guān):門字型 高h(yuǎn)12mm霧化頭直徑:45mm高:h35mm線材規(guī)格:黑色 3.8mmpvc線,電源線長l140020mm插頭型號: 5.52.1mm母插3.6 模擬箱的設(shè)計與組建由于材料和時間關(guān)系,無法做出能完全模擬智能家居的模擬箱,暫且以紙盒子代替,另外電熱絲,制冷片,傳感器的安放也要考慮到冷熱空氣的升降等因素,還有制冷片的熱面的散熱問題等都要進(jìn)行綜合的考慮來制作模擬箱,效果如圖3.13和圖3.14。圖3.13圖3.144 系統(tǒng)的軟件設(shè)計4.1軟件簡介4.1.1 keil概述圖4.1 keil c51是美國keil software公司
35、出品的51系列兼容單片機(jī)c語言軟件開發(fā)系統(tǒng)(如圖4.1),與匯編相比,c語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢,因而易學(xué)易用。keil提供了包括c編譯器、宏匯編、連接器、庫管理和一個功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(uvision)將這些部分組合在一起。運(yùn)行keil軟件需要win98、nt、win2000、winxp等操作系統(tǒng)。如果你使用c語言編程,那么keil幾乎就是你的不二之選,即使不使用c語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強(qiáng)大的軟件仿真調(diào)試工具也會令你事半功倍。4.1.2 keil開發(fā)系統(tǒng)整體結(jié)構(gòu) c51工具包的整體結(jié)構(gòu),uvisi
36、on與ishell分別是c51 for windows和for dos的集成開發(fā)環(huán)境(ide),可以完成編輯、編譯、連接、調(diào)試、仿真等整個開發(fā)流程。開發(fā)人員可用ide本身或其它編輯器編輯c或匯編源文件。然后分別由c51及c51編譯器編譯生成目標(biāo)文件(.obj)。目標(biāo)文件可由lib51創(chuàng)建生成庫文件,也可以與庫文件一起經(jīng)l51連接定位生成絕對目標(biāo)文件(.abs)。abs文件由oh51轉(zhuǎn)換成標(biāo)準(zhǔn)的hex文件,以供調(diào)試器dscope51或tscope51使用進(jìn)行源代碼級調(diào)試,也可由仿真器使用直接對目標(biāo)板進(jìn)行調(diào)試,也可以直接寫入程序存貯器如eprom中。4.2常用的調(diào)試方法4.2.1單步調(diào)試 利用de
37、bug工具條中的圖標(biāo),可以實(shí)現(xiàn)代碼單步運(yùn)行。 step into:單擊debug工具條中的“single step”按鈕,或選擇“debugstep into”。如果下一步遇到函數(shù)調(diào)用,step into會執(zhí)行到函數(shù)內(nèi)部的起始位置停下來。如果用戶選擇的是c源程序模式,該命令執(zhí)行一條c指令;否則,該命令執(zhí)行一條匯編指令。 step over:單擊debug工具條中的“step over”按鈕,或選擇“debugstep over” 。如果遇到函數(shù)調(diào)用,step over會執(zhí)行到函數(shù)結(jié)束,然后停止運(yùn)行。除非在函數(shù)中間遇到斷點(diǎn),此時執(zhí)行到斷點(diǎn)位置停止運(yùn)行。step over命令也可以用來調(diào)試非函數(shù)調(diào)
38、用的執(zhí)行語句。在這種情況下,調(diào)試器每執(zhí)行一條語句就停下來。用戶可查看完整的c源程序文件,或同時顯示匯編文件。如果用戶選擇的是c源程序模式,該命令執(zhí)行一條c指令;否則,該命令執(zhí)行一條匯編指令。 step out:單擊debug工具條中的“step out”按鈕,或選擇“debugstep out” 。如果當(dāng)前正運(yùn)行在子程序中,step out會返回到調(diào)用函數(shù)的出口位置停下來。如果用戶選擇的是c源程序模式,調(diào)用函數(shù)由標(biāo)準(zhǔn)運(yùn)行c堆棧中的本地幀指針決定;否則,返回調(diào)用函數(shù)的指針地址被認(rèn)為是棧頂?shù)闹?。如果用戶的匯編子程序使用棧來存放其他信息,那么step out命令不能正確執(zhí)行。在c6000的處理器上,
39、如果符號信息不可用,則step out命令無效。用戶可以通過multiple operation對話框來選擇多次單步操作的類型和次數(shù),在ccs中進(jìn)行程序調(diào)試。具體的設(shè)置步驟如下。選擇“debugmultiple operations”。顯示multiple operations的對話框。 在multiple operation對話框的下拉列表中選擇單步運(yùn)行命令。在技術(shù)欄中,指定重復(fù)執(zhí)行該單步命令的次數(shù)。單擊“ok”按鈕。4.2.2斷點(diǎn)調(diào)試圖4.2設(shè)置斷點(diǎn)(如圖4.2)是調(diào)試程序的必要手段。斷點(diǎn)用于停止程序的運(yùn)行,當(dāng)程序停止時,用戶可以檢查程序的狀態(tài)、檢查和修改變量值、檢查堆棧等。用戶可以創(chuàng)建和
40、管理一個或多個斷點(diǎn),斷點(diǎn)可以設(shè)在源代碼窗口的某一行,或者設(shè)在反匯編窗口的某一條指令處。斷點(diǎn)設(shè)置好后可以將它使能或者禁止。斷點(diǎn)分為軟件中斷與硬件中斷。軟件中斷的執(zhí)行通過改變操作碼,而硬件中斷是硬件發(fā)起的。軟件中斷的設(shè)置數(shù)量上沒有限制,單硬件中斷的數(shù)量取決于可用的硬件資源。添加和刪除斷點(diǎn):在源程序的編輯窗口或者反匯編窗口中,將光標(biāo)放在預(yù)設(shè)值斷點(diǎn)的代碼行,單擊右鍵在彈出的菜單中選擇“toggle breakpoint”。此時,在該語句的左邊會出現(xiàn)一個紅色的圓點(diǎn)。將光標(biāo)放在斷點(diǎn)所在行,并再次單擊斷點(diǎn)開關(guān)按鈕即可取消該處的斷點(diǎn)。也可以通過選擇“debugbreakpoints”,在彈出的斷點(diǎn)管理器中添加
41、和刪除斷點(diǎn)。斷點(diǎn)調(diào)試:斷點(diǎn)設(shè)置成功以后,單擊工具欄“run”按鈕,或者單擊“debugrun”程序就可以運(yùn)行到斷點(diǎn)處,pc指針指到斷點(diǎn)位置,與斷點(diǎn)指針將重疊顯示。斷點(diǎn)設(shè)置的目的是查看此時dsp內(nèi)部的各種寄存器以及存儲器中的值是否正確,一次判斷程序是否運(yùn)行正常。 斷點(diǎn)管理器(breakpoint management):新的ide版本和以前相比,建立和配置斷點(diǎn)的界面有了很大的改變。以往,要配置一個斷點(diǎn),需要打開一個單獨(dú)的對話框,然后完成一系列的步驟。新的斷點(diǎn)管理器界面將該單獨(dú)窗口里的所有步驟全部留給調(diào)試過程。 4.3系統(tǒng)軟件流程圖如圖4.3所示圖4.34.4初始化模塊初始化模塊包括單片機(jī)的初始化
42、和1602液晶的初始化,以及各個端口的定義等,由于8051單片機(jī)的特殊性,因此需要關(guān)閉看門狗以及配置交叉開關(guān)。void init_device(void)/設(shè)置端口,關(guān)看門狗 wdtcn=0xde; wdtcn=0xad; p3mdout = 0xff; p2mdout = 0x7f;dht=1; xbr2 = 0x40;4.5溫濕度檢測模塊void rh() unsigned char count_us=0,tex; p3mdout|=0x01; dht=0; delay_us(200); delay_us(200); delay_us(200); dht=1; p3mdout&=0xfe;
43、 delay_us(45); if(!dht) while(!dht)/等待低電平,延時 _nop_(); _nop_(); _nop_(); _nop_(); count_us+; if(count_us=60) break; count_us=0;while(dht) _nop_(); _nop_(); _nop_(); _nop_(); count_us+; if(count_us=60) break; rh_h=read_rh();rh_l=read_rh();temp_h=read_rh();temp_l=read_rh();tex=read_rh();p3mdout|=0x01;d
44、ht=1;count_us=rh_h+rh_l+temp_h+temp_l;if(tex=count_us) rh_dat=rh_h; rh_dat=8; rh_dat|=rh_l; temp_dat=temp_h; temp_dat=8; temp_dat|=temp_l; 4.6液晶顯示模塊液晶顯示模塊包括兩部分的顯示,即當(dāng)前溫濕度的顯示及刷新,設(shè)置界面的顯示。效果上:temp:和humi:后面顯示當(dāng)前的溫濕度,同行的最后通過max和min來顯示當(dāng)前溫度設(shè)定的上下限。當(dāng)前溫濕度部分顯示:void display(unsigned char x,unsigned char y,unsigne
45、d int dat) if(dat1000) if(dat100) write_char(x+0,y, ); write_char(x+1,y, ); write_char(x+2,y,dat/10%10+0); write_char(x+4,y,dat%10+0);else write_char(x+0,y, ); write_char(x+1,y,dat/100%10+0); write_char(x+2,y,dat/10%10+0); write_char(x+4,y,dat%10+0); else write_char(x+0,y,dat/1000%10+0); write_char(
46、x+1,y,dat/100%10+0); write_char(x+2,y,dat/10%10+0); write_char(x+4,y,dat%10+0); write_char(x+3,y,.);設(shè)置部分顯示:void display_set() switch(set_th) case 0: write_string(10,2,max); display_8(13,2,max_rh); write_string(10,1,max); if(set_flag)&(count_i10) display_clear(14+(unsigned char)set_bit,1); else displ
47、ay_8(13,1,max_temp); break; case 1: write_string(10,2,max); display_8(13,2,max_rh); write_string(10,1,min); if(set_flag)&(count_i10) display_clear(14+(unsigned char)set_bit,1); else display_8(13,1,min_temp); break;case 2: write_string(10,1,max); display_8(13,1,max_temp); write_string(10,2,max); if(s
48、et_flag)&(count_i10) display_clear(14+(unsigned char)set_bit,2); else display_8(13,2,max_rh); break; case 3: write_string(10,1,max); display_8(13,1,max_temp); write_string(10,2,min); if(set_flag)&(count_i10) display_clear(14+(unsigned char)set_bit,2); else display_8(13,2,min_rh); break;default :break; 4.7鍵盤輸入模塊本次使用的4*4矩陣鍵盤,由09,#,*,a,b,c,d組成,因此做以下設(shè)定:a:設(shè)定溫度上限b:設(shè)定溫度下限c:設(shè)定濕度上限d:設(shè)定濕度下限#:開始設(shè)定并確定*:切換十位和個位的數(shù)字void read_key() unsigned char i
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2025學(xué)年黑龍江省龍東地區(qū)高一(上)段考數(shù)學(xué)試卷(二)(含答案)
- 2024年度上海市高校教師資格證之高等教育法規(guī)題庫與答案
- 阜陽師范大學(xué)《自然科學(xué)專題》2021-2022學(xué)年第一學(xué)期期末試卷
- 阜陽師范大學(xué)《勞動與社會保障法》2022-2023學(xué)年第一學(xué)期期末試卷
- 蘇州市2024-2025學(xué)年五年級上學(xué)期11月期中調(diào)研數(shù)學(xué)試卷一(有答案)
- 福建師范大學(xué)協(xié)和學(xué)院《信號與系統(tǒng)》2022-2023學(xué)年第一學(xué)期期末試卷
- 福建師范大學(xué)《中外紀(jì)錄片賞析》2023-2024學(xué)年第一學(xué)期期末試卷
- 福建師范大學(xué)《數(shù)學(xué)文化》2022-2023學(xué)年第一學(xué)期期末試卷
- 福建師范大學(xué)《色彩(2)》2022-2023學(xué)年第一學(xué)期期末試卷
- 第二章 中樞神經(jīng)系課件
- 三年級數(shù)學(xué)上冊課件-9. 數(shù)學(xué)廣角-集合 人教版(共21張PPT)
- 牛羊屠宰管理辦法
- 六三制新青島版五年級科學(xué)上冊第三單元第10課《熱對流》課件
- 銅的生產(chǎn)成本的計算
- 高級母嬰護(hù)理師測評考試題及答案
- 房建工程竣工資料監(jiān)理審查報告
- 膽囊癌最新課件
- 一年級趣味數(shù)學(xué)小故事
- 《創(chuàng)新方法TRIZ理論入門》課件04因果分析
- 《形式邏輯》
- 塑料袋的警告語(歐洲)
評論
0/150
提交評論