【正文】
控電子鐘溫度計(jì) 36 During my childhood, think lucky money and new clothes are necessary for New Year, but as the advance of the age, will be more and more found that those things are optional。s time, your ideas are always special to clear. Want, want, line is clear, as if nothing could shake his. Also once seemed to be determined to do something, but more often is he backed out at last. Dislike his cowardice, finally found that there are a lot of love, there are a lot of miss, like shadow really have been doomed. Those who do, just green years oneself give oneself an arm injection, or is a selfrighteous spiritual. 一個(gè)人的時(shí)候,自己的想法總是特別地清晰。 Originally, this world, can produce a chemical reaction to an event, in addition to resolutely, have to do, and time. 原來(lái),這個(gè)世界上,對(duì)某個(gè)事件能產(chǎn)生化學(xué)反應(yīng)的,除了非做不可的堅(jiān)決,還有,時(shí)間 ??傆X(jué)得自己自己似 乎應(yīng)該去做點(diǎn)什么,或者寫(xiě)點(diǎn)什么。s Premier League match at Chelsea on Sunday. I am going to be at the match tomorrow and I have asked to meet Yaya Toure, he told BBC Sport. For me it39。也感謝成員馬正東,他對(duì)總體功能設(shè)計(jì)和程序設(shè)計(jì)方面貢獻(xiàn)比較大。 時(shí)鐘芯片 DS12C887 內(nèi)置了可充電的鋰電池,在一般情況下,電池是好的,查詢(xún)時(shí)顯示 “ Battery Good! ”,如果電池電量不足,顯示“ Power Down!”說(shuō)明電池已經(jīng)耗盡,當(dāng)時(shí)鐘芯片掉電后,它內(nèi)部數(shù)據(jù)肯能出現(xiàn)紊亂,不能保證其準(zhǔn)確性了。 功能作用:把系統(tǒng)存儲(chǔ)的 10 條報(bào)警信息全部清零。 如果溫度報(bào)警發(fā)上過(guò),則系統(tǒng)會(huì)將此溫度報(bào)警信息存儲(chǔ)下來(lái),系統(tǒng)最多可存儲(chǔ) 10次溫度報(bào)警信息。如果時(shí)鐘芯片的晶振尚未停掉,系統(tǒng)則顯示“ Turn off successful!”,表示成功關(guān)閉時(shí)鐘芯片的內(nèi)部晶振,此時(shí)按確定鍵可以回到菜單狀態(tài)。當(dāng)為 9 位時(shí),溫度最小跳變?yōu)?℃,當(dāng)為 10 位時(shí),溫度最小跳變?yōu)?℃,為 11 為時(shí),溫度最小跳變?yōu)?℃,為 12 位時(shí),溫度最小跳變?yōu)?℃。溫度安全范圍可以由您手動(dòng)設(shè)置,安全溫度的上下限分別用 TH 和 TL 表示。此時(shí)您設(shè)定的時(shí)間已被系統(tǒng)存儲(chǔ)。用左右鍵選擇要調(diào)整的數(shù)字,用上下鍵來(lái)調(diào)整數(shù)值,可以十位調(diào)整,也可以個(gè)位調(diào)整。用上下鍵可以翻頁(yè)。 該功能用來(lái)查看系統(tǒng)存儲(chǔ)的溫度報(bào)警的上下限,這個(gè)功能狀態(tài)下的的數(shù)據(jù)也只能查看,不能修改,如果您想修改,需要在“設(shè)置溫度報(bào)警上下限”中進(jìn)行。 第五,按菜單鍵進(jìn)入菜單,這是最重要的功能,您若要對(duì)系統(tǒng)的數(shù)據(jù)進(jìn)行修改,都得從菜單中進(jìn)入具體的功能。 在主界面下可以完成 6 件事。在經(jīng)過(guò)了多次檢查后發(fā)現(xiàn)在焊接的過(guò)程中犯下了一個(gè)非常低級(jí)的錯(cuò)誤,三極管 C1815 的基極和發(fā)射極接反了,后經(jīng)測(cè)試后接收部分 PT2272L6終于有了高低電平的變化,此部分一完成整個(gè)作品的硬件部分已經(jīng)基本完成。經(jīng)過(guò)測(cè)試修改后,單片機(jī)終于能夠按預(yù)想正常工作了。 } } return 0。 } 紅外遙控電子鐘溫度計(jì) 19 else { write_data(0x80,39。 } for(i=0。 } } else if(Menu_Number==7||Menu_Number==8) { if(Menu_Number==7) { write_data(0x80,0x07)。 } else { write_data(0x80,39。 } for(i=0。 } } else if(Menu_Number==3||Menu_Number==4) { if(Menu_Number==3) { write_data(0x80,0x07)。 } else { write_data(0x80,39。 Refresh_E=1。 Set_Pointer=1。 if(read_ds(0x0a)==0x00) Osci_Turn_Off_F=1。 Temp_Accurancy=ds1820_rd()。 Temp_Accurancy_Set_F=0。//讀取 ram 的數(shù)據(jù) ds1820_rd()。 Set_Pointer=1。 Set_Pointer=1。 M=read_ds(2)。 } if(Time_Usual_Set_F==1) { write_ds(0x0b,0x86)。 if(Scan_Result==3) { Menu_Number++。 else if(Current_Function==9) function_9_turn_on_887_osc()。//0011 0100 看門(mén) 狗的設(shè)置; if(Current_Function==1) function_1_main()。 紅外接收頭,它將紅外接收電路做在一起,只有三個(gè)引腳.分別是 +5V 電源、地、信號(hào)紅外遙控電子鐘溫度計(jì) 8 輸出。 2 硬件系統(tǒng)的設(shè)計(jì)與功能實(shí)現(xiàn) STC89C58 單片機(jī)設(shè)計(jì) 圖 21 單片機(jī)設(shè)計(jì) 紅外遙控電子鐘溫度計(jì) 7 圖 22 復(fù)位電路設(shè)計(jì) 本方案采用 DS12C887 作為時(shí)鐘芯片,采用 Intel 總線(xiàn)模式,只啟用它的時(shí)鐘功能,利用了它的 61 個(gè) NV RAM 作為存儲(chǔ)溫度報(bào)警記錄用。 經(jīng)過(guò)反復(fù)的探討和論證我們最終確定智如下最終方案: 紅外遙控電子鐘溫度計(jì) 6 ? 采用 STC89C58 單片機(jī)作為整個(gè)電路的控制核心。但是蓄電池的體積過(guò)于龐大,價(jià)格比較昂貴,對(duì)于我們的作品性?xún)r(jià)比不高。但是由于語(yǔ)音芯片成本比較高,而且擴(kuò)展起來(lái)比較復(fù)雜,增加焊接難度和設(shè)計(jì)成本。電池容量可為振蕩器和寄存器供電長(zhǎng)達(dá) 10 年之久,故采用此方案。 STC89 在 8051基礎(chǔ)上增加了許多功能, 內(nèi)置 flash ROM 可以反復(fù)擦寫(xiě) 10萬(wàn)次,內(nèi)置硬件看門(mén)狗, 極大地提高了 MCS51 家族的性能。報(bào)警溫度和時(shí)間調(diào)整等所有產(chǎn)品功能都可由紅外遙控進(jìn)行設(shè)置。an University of Science and Technology, Xi39。其功能已能夠滿(mǎn)足我們對(duì)于產(chǎn)品的需要,所以我們選擇性?xún)r(jià)比更高的 STC89C52。 方案二:選擇 DS18B20, DS18B20 具有先進(jìn)的單總線(xiàn)結(jié)構(gòu),并且可以寄生供電。顏色鮮艷,易于觀察, 但是由于產(chǎn)品需要顯示的信息較多,個(gè)別字符也無(wú)法顯示不符合本作品的要求。 方案三:采用 USB 串口輸出電壓,其電壓輸出穩(wěn)定,符合產(chǎn)品的需求,但是其不可移動(dòng)性降低了產(chǎn)品的靈活性,使用極其不便。 ? 采用蜂鳴器和二極管來(lái)完成聲光報(bào)警功能。發(fā)射部分芯片 PT2262IR, 編碼芯片 PT2262IR發(fā)出的編碼信號(hào)由:地址碼、數(shù)據(jù)碼、同步碼組成一個(gè)完整的碼字,解碼芯片 PT2272 接收到信號(hào)后,其地址碼經(jīng)過(guò)兩次比較核對(duì)后, VT 腳才輸出 瞬間 高電平,與此同時(shí)相應(yīng)的數(shù)據(jù)腳也輸出高電平,如果發(fā)送端一直按住按鍵,編碼芯片也會(huì)連續(xù)發(fā)射。 紅外遙控電子鐘溫度計(jì) 10 圖 28 溫度模塊的設(shè)計(jì) 人機(jī)界面的設(shè)計(jì) 圖 29 液晶模塊設(shè)計(jì) 紅外遙控電子鐘溫度計(jì) 11 3 軟件設(shè)計(jì)的實(shí)現(xiàn)與說(shuō)明 主程序框架圖 我們所設(shè)計(jì)的軟件的主程序框架圖如下圖 31 所示 : 初始化喂看門(mén)狗查詢(xún)是哪個(gè)功能功能塊一功能塊二功能塊三功能塊四功能塊五功能塊六功能塊七功能塊八功能塊九功能塊十功能塊十一功能塊十二功能塊十三功能塊十四 圖 31 主程序框架圖 功能塊框架圖 每一個(gè)功能塊的程序程序?qū)崿F(xiàn)都有共同規(guī)律,規(guī)律如下: 紅外遙控電子鐘溫度計(jì) 12 查詢(xún)是否有按鍵 按鍵功能處理顯示部分處理YN 圖 32 功能塊框架圖 程序設(shè)計(jì) 程序設(shè)計(jì)嚴(yán)格遵守兩個(gè)框架圖 兩個(gè)典型的能說(shuō)明本程序設(shè)計(jì)的函數(shù)如下。 else if(Current_Function==4) function_4_set_alarm_time()。 else if(Current_Function==12) function_12_battery_state()。 if(Menu_Number==0) Menu_Number=10。 } Refresh_E=1。 write_cmd(0x01)。 紅外遙控電子鐘溫度計(jì) 15 } else if(Menu_Number==3) //設(shè)置日期 { Current_Function=5。 Set_Pointer=1。 TL=ds1820_rd()。 ds1820_wr(0xbe)。 else if(Temp_Accurancy==0x3f) 紅外遙控電子鐘溫度計(jì) 16 Set_Pointer=2。 } else if(Menu_Number==7) //開(kāi)啟 ds12c887 晶振 { Current_Function=9。 } else if(Menu_Number==9) { Current_Function=11。 } return 0。 write_data(0xc0,0x07)。)。 write_data(0xc1+i,menu4[i])。 write_data(0xc0,0x07)。)。 write_data(0xc1+i,menu8[i])。 write_data(0xc0,0x07)。模塊的測(cè)試采用的是比較簡(jiǎn)單的能體現(xiàn)模塊功能的程序,這樣大大縮短了模塊的測(cè)試時(shí)間,加快了產(chǎn)品的制作進(jìn)度。最終修改為直接插拔的方式與單片機(jī)進(jìn)行連接。其按鍵排列如下: 上下左 右 菜單 確定 圖 51 遙控按鍵平面圖 上:向上滾動(dòng)菜單列表和調(diào)整數(shù)據(jù); 下:向下滾動(dòng)菜單列表和調(diào) 整數(shù)據(jù); 左:選擇要改變的數(shù)據(jù)和鬧鐘允許; 右:選擇要改變的數(shù)據(jù)和溫度報(bào)警允許; 菜單:進(jìn)入菜單和進(jìn)入菜單中光標(biāo)所在功能; 確定:開(kāi)關(guān) 1602 的背光和退出當(dāng)前功能。如果不允許,您設(shè)定的時(shí)間到了,系統(tǒng)將不予理睬。背光開(kāi)啟后,如果沒(méi)有手動(dòng)關(guān)閉,則從最近的一次按鍵開(kāi)始算起,連續(xù)大約 5 分鐘,系統(tǒng)如果沒(méi)有檢測(cè)到按鍵動(dòng)作,則系統(tǒng)自動(dòng)關(guān)閉 1602 背光,您若需要重新開(kāi)啟背光,只需要再次按確定鍵。 紅外遙控電子鐘溫度計(jì) 24 菜單 進(jìn)入該功能的方式:在主界面狀態(tài)下,按菜單鍵即可進(jìn)入該功能。 圖 56 菜單第 1 頁(yè) 菜單第一頁(yè)為: (設(shè)置普通時(shí)間 ) (設(shè)置鬧鐘時(shí)間 ) 圖 57 菜單第 2 頁(yè) 菜單第 2 頁(yè) (設(shè)置日期 ) (設(shè)置溫度報(bào)警上下限 ) 圖 58 菜單第 3 頁(yè) 菜單第 3 頁(yè) (設(shè)置溫度傳感器 DS18B20 的轉(zhuǎn)換精度 ) (關(guān)閉時(shí)鐘芯片 DS12C887 的晶振 ) 紅外遙控電子鐘溫度計(jì) 25 圖 59 菜單第 4 頁(yè) 菜單第 4 頁(yè) (開(kāi)啟時(shí)鐘芯片 DS12C887 的晶振 ) (查看溫度報(bào)警歷史 )