版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、基于yeelink的溫度遠程采集系統(tǒng)實訓報告 信息工程學院實訓報告 題目:yeelink物聯(lián)網(wǎng)溫度遠程采集系統(tǒng) 實訓任務(wù)書一、實訓目的 掌握mcs-51串行口工作方式及其通信程序設(shè)計方法。 掌握rs-232串行總線通信原理及單片機與pc機通信方法。 3掌握led數(shù)碼管電路(lcd顯示模塊)的軟硬件設(shè)計方法。 4掌握單總線數(shù)字溫度傳感器驅(qū)動軟件設(shè)計。 5掌握yeelink物聯(lián)網(wǎng)數(shù)據(jù)上傳方法。二、實訓內(nèi)容 單片機通過單總線采集18b20溫度數(shù)據(jù); 將采集到的數(shù)據(jù)顯示在4位led數(shù)碼管或lcd液晶顯示器上; 3注冊yeelink物聯(lián)網(wǎng)賬號,獲取key,下載串口轉(zhuǎn)發(fā)軟件; 4通過串口將采集到的溫度數(shù)據(jù)
2、發(fā)送到串口轉(zhuǎn)發(fā)軟件,由后者發(fā)布到互聯(lián)網(wǎng)。三、yeelink物聯(lián)網(wǎng)介紹 網(wǎng)址:/0.步驟:在yeelink官網(wǎng)注冊賬號,詳見:/.注冊成功后在“賬戶-我的賬戶設(shè)置”中獲取apikey在“我的設(shè)備”添加一個新設(shè)備在“管理設(shè)備”添加一個傳感器”在 /. 相關(guān)鏈接下載yeelink串口工具,掌握其用法。 摘 要隨著網(wǎng)絡(luò)的迅猛發(fā)展,許多新興產(chǎn)業(yè)隨之產(chǎn)生并蓬勃興起,正是在這種浪潮下yeelink物聯(lián)網(wǎng)平臺應(yīng)運而生。yeelink是一個開放的通用物聯(lián)網(wǎng)平臺,主要提供傳感器數(shù)據(jù)的接入、存儲和展現(xiàn)服務(wù),為所有的開源軟硬件愛好者、制造型企業(yè),提供一個物聯(lián)網(wǎng)項目的平臺。使得硬件和制造業(yè)者能夠在不關(guān)心服務(wù)器實現(xiàn)細節(jié)和
3、運維的情況下,擁有交付物聯(lián)網(wǎng)化的電子產(chǎn)品的能力。yeelink平臺的最大特點,在于不僅僅能夠提供數(shù)據(jù)的上行功能,還能夠?qū)崿F(xiàn)對家庭電器的控制功能,快要到家前想洗個熱水澡,還是要提前把空調(diào)打開?很簡單,用手機的智能app,這些就是舉手之勞。簡單地說,就是可以把你采集到的數(shù)據(jù)提交到y(tǒng)eelink,同時yeelink會以一定的形式展現(xiàn)出來。比如我們采集溫度數(shù)據(jù),然后提交上去,這樣,無論你人在何方,只要能接入互聯(lián)網(wǎng),你就可以實時地在線監(jiān)測溫度值。本次實訓內(nèi)容便是通過數(shù)字溫度傳感器將實時采集的溫度顯示在數(shù)碼管上,并通過串口將其發(fā)送到pc機,pc機通過yeelink串口轉(zhuǎn)發(fā)工具發(fā)布到互聯(lián)網(wǎng)。關(guān)鍵詞:溫度、傳
4、感器、yeelink、物聯(lián)網(wǎng)、遠程采集abstract with the rapid development of the internet,?many new industries?emerged and?flourished, ?it is in this?wave of internet of things platform?emerge as the times require yeelink. yeelink is the universal?substance?an open network?platform,?mainly to provide?sensor data?acces
5、s, storage?and display services,?open source?software and hardware?enthusiasts,?all manufacturing enterprises, to provide a?iot?project?platform.?the?hardware and?the manufacturer?cannot?care about server implementation details and?operation, capability of electronic?products have a?iot?of?delivery.
6、?the biggest characteristic?of yeelink platform,?is?not only to provide?uplink?data,?also can realize the control function?of household electrical appliances,?want to wash?a hot bath?comes?before,?or to turn on the air conditioner?in advance?very simple, intelligent?mobile phone app,?these?are to?li
7、ft a finger. say simply,?is that we can put your?collected data submitted to the yeelink,?and the yeelink will be displayed in?a certain form.?for example,?we?collect temperature data,?and then?submitted to go up,?so, whether you?are?in where,?as long as you can?access the internet,?you can monitor
8、real-time temperature value.?this training contents?is through?digital temperature sensor?will bereal-time collection of temperature?in the digital tube display,?and send it to?pc through the?serial port,?pc?posted to the internet through yeelink?serial port forwarding?tool. keys: temperaturesensory
9、eelinkfetishismremote monitoring目錄實訓任務(wù)書i摘 要iiabstractiii1.1 硬件電路21.1.1 背景知識21.1.2 課題介紹21.1.3 主要原理21.1.3.1 主控制器21.1.3.2 顯示電路21.1.3.3 溫度傳感器21.1.3.4 ds18b20溫度傳感器與單片機的接口電路71.1.3.5 zlg7290芯片71.1.3.5.1 zlg7290作用及其功能介紹71.1.3.5.2 zlg7290使用說明71.1.3.6 zlg7290工作原理81.1.4 系統(tǒng)構(gòu)成框圖81.1.5 系統(tǒng)原理介紹81.1.6 軟件流程圖91.2 軟件程序
10、101.2.1 程序清單及注釋101.3 實驗小結(jié)231.4 主要參考文獻23硬件電路背景知識 在日常生活及工農(nóng)業(yè)生產(chǎn)中,經(jīng)常要用到溫度的檢測及控制,傳統(tǒng)的測溫元件有熱電偶和熱電阻。而熱電偶和熱電阻測出的一般都是電壓,再轉(zhuǎn)換成相對應(yīng)的溫度,需要比較多的外部硬件支持。其缺點如下:硬件電路復雜;軟件調(diào)試復雜;制作成本高。 本數(shù)字溫度計設(shè)計采用美國dallas半導體公司繼ds1820之后推出的一種改進型智能溫度傳感器ds18b20作為檢測元件,測溫范圍為-55125,最高分辨率可達0.0625。ds18b20可以直接讀出被測溫度值,而且采用三線制與單片機相連,減少了外部的硬件電路,具有低成本易使用的
11、特點。 按照系統(tǒng)功能設(shè)計的要求,確定系統(tǒng)有三個模塊組成:主控制器,測溫電路和顯示電路。課題介紹 溫度傳感器實驗主要應(yīng)用到了zlg-7290芯片和總線,同時主要應(yīng)用到了18b20芯片。溫度傳感器要求讓它們能夠?qū)崿F(xiàn)外用鍵盤能夠調(diào)試,更改和控制的功能。主要原理 系統(tǒng)整體硬件電路包括,傳感器采集電路,溫度顯示電路,單片機主板電路等。主控制器顯示電路 顯示電路采用3位共陽led數(shù)碼管,從p3口rxd,txd串口輸出段碼。溫度傳感器 ds18b20溫度傳感器是美國dallas半導體公司最新推出的一種改進型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實際要求通過簡單的編程
12、實現(xiàn)912位的數(shù)字值讀數(shù)方式。ds18b20的性能特點如下: 獨特的單線接口僅需要一個端口引腳進行通信; 多個ds18b20可以并聯(lián)在惟一的三線上,實現(xiàn)多點組網(wǎng)功能; 無須外部器件; 可通過數(shù)據(jù)線供電,電壓范圍為3.05.5v; 零待機功耗; 溫度以9或12位數(shù)字; 用戶可定義報警設(shè)置; 報警搜索命令識別并標志超過程序限定溫度(溫度報警條件)的器件; 負電壓特性,電源極性接反時,溫度計不會因發(fā)熱而燒毀,但不能正常工作; ds18b20采用3腳pr-35封裝或8腳soic封裝,其內(nèi)部結(jié)構(gòu)框圖如圖2所示。 圖2 ds18b20內(nèi)部結(jié)構(gòu) 64位rom的結(jié)構(gòu)開始8位是產(chǎn)品類型的編號,接著是每個器件的惟
13、一的序號,共有48位,最后8位是前面56位的crc檢驗碼,這也是多個ds18b20可以采用一線進行通信的原因。溫度報警觸發(fā)器th和tl,可通過軟件寫入戶報警上下限。 ds18b20溫度傳感器的內(nèi)部存儲器還包括一個高速暫存ram和一個非易失性的可電擦除的eeram。高速暫存ram的結(jié)構(gòu)為8字節(jié)的存儲器,結(jié)構(gòu)如圖3所示。頭2個字節(jié)包含測得的溫度信息,第3和第4字節(jié)th和tl的拷貝,是易失的,每次上電復位時被刷新。第5個字節(jié),為配置寄存器,它的內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率。ds18b20工作時寄存器中的分辨率轉(zhuǎn)換為相應(yīng)精度的溫度數(shù)值。該字節(jié)各位的定義如圖3所示。低5位一直為1,tm是工作模式位
14、,用于設(shè)置ds18b20在工作模式還是在測試模式,ds18b20出廠時該位被設(shè)置為0,用戶要去改動,r1和r0決定溫度轉(zhuǎn)換的精度位數(shù),來設(shè)置分辨率。溫度 lsb溫度 msbth用戶字節(jié)1tl用戶字節(jié)2配置寄存器保留保留保留crc 圖3 ds18b20字節(jié)定義 由表1可見,ds18b20溫度轉(zhuǎn)換的時間比較長,而且分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時間越長。因此,在實際應(yīng)用中要將分辨率和轉(zhuǎn)換時間權(quán)衡考慮。 高速暫存ram的第6、7、8字節(jié)保留未用,表現(xiàn)為全邏輯1。第9字節(jié)讀出前面所有8字節(jié)的crc碼,可用來檢驗數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。 當ds18b20接收到溫度轉(zhuǎn)換命令后,開始啟動轉(zhuǎn)換。轉(zhuǎn)換
15、完成后的溫度值就以16位帶符號擴展的二進制補碼形式存儲在高速暫存存儲器的第1、2字節(jié)。單片機可以通過單線接口讀出該數(shù)據(jù),讀數(shù)據(jù)時低位在先,高位在后,數(shù)據(jù)格式以0.0625/lsb形式表示。 當符號位s=0時,表示測得的溫度值為正值,可以直接將二進制位轉(zhuǎn)換為十進制;當符號位s=1時,表示測得的溫度值為負值,要先將補碼變成原碼,再計算十進制數(shù)值。表2是一部分溫度值對應(yīng)的二進制溫度數(shù)據(jù)。 表1 ds18b20溫度轉(zhuǎn)換時間表 ds18b20完成溫度轉(zhuǎn)換后,就把測得的溫度值與ram中的th、tl字節(jié)內(nèi)容作比較。若tth或ttl,則將該器件內(nèi)的報警標志位置位,并對主機發(fā)出的報警搜索命令作出響應(yīng)。因此,可用
16、多只ds18b20同時測量溫度并進行報警搜索。 在64位rom的最高有效字節(jié)中存儲有循環(huán)冗余檢驗碼(crc)。主機rom的前56位來計算crc值,并和存入ds18b20的crc值作比較,以判斷主機收到的rom數(shù)據(jù)是否正確。 ds18b20的測溫原理是這這樣的,器件中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號送給減法計數(shù)器1;高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號作為減法計數(shù)器2的脈沖輸入。器件中還有一個計數(shù)門,當計數(shù)門打開時,ds18b20就對低溫度系數(shù)振蕩器產(chǎn)生的時鐘脈沖進行計數(shù)進而完成溫度測量。計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前
17、,首先將-55所對應(yīng)的一個基數(shù)分別置入減法計數(shù)器1、溫度寄存器中,計數(shù)器1和溫度寄存器被預(yù)置在-55所對應(yīng)的一個基數(shù)值。 減法計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行減法計數(shù),當減法計數(shù)器1的預(yù)置值減到0時,溫度寄存器的值將加1,減法計數(shù)器1的預(yù)置將重新被裝入,減法計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行計數(shù),如此循環(huán)直到減法計數(shù)器計數(shù)到0時,停止溫度寄存器的累加,此時溫度寄存器中的數(shù)值就是所測溫度值。其輸出用于修正減法計數(shù)器的預(yù)置值,只要計數(shù)器門仍未關(guān)閉就重復上述過程,直到溫度寄存器值大致被測溫度值。 表2 一部分溫度對應(yīng)值表溫度/二進制表示十六進制表示+1250000 0111
18、 1101 000007d0h+850000 0101 0101 00000550h+25.06250000 0001 1001 00000191h+10.1250000 0000 1010 000100a2h+0.50000 0000 0000 00100008h00000 0000 0000 10000000h-0.51111 1111 1111 0000fff8h-10.1251111 1111 0101 1110ff5eh-25.06251111 1110 0110 1111fe6fh-551111 1100 1001 0000fc90h 另外,由于ds18b20單線通信功能是分時完成
19、的,它有嚴格的時隙概念,因此讀寫時序很重要。系統(tǒng)對ds18b20的各種操作按協(xié)議進行。操作協(xié)議為:初使化ds18b20(發(fā)復位脈沖)發(fā)rom功能命令發(fā)存儲器操作命令處理數(shù)據(jù)。圖4 ds18b20與單片機的接口電路ds18b20溫度傳感器與單片機的接口電路 ds18b20可以采用兩種方式供電,一種是采用電源供電方式,此時ds18b20的1腳接地,2腳作為信號線,3腳接電源。另一種是寄生電源供電方式,如圖4 所示單片機端口接單線總線,為保證在有效的ds18b20時鐘周期內(nèi)提供足夠的電流,可用一個mosfet管來完成對總線的上拉。 當ds18b20處于寫存儲器操作和溫度a/d轉(zhuǎn)換操作時,總線上必須有
20、強的上拉,上拉開啟時間最大為10us。采用寄生電源供電方式時vdd端接地。由于單線制只有一根線,因此發(fā)送接口必須是三態(tài)的。zlg7290芯片zlg7290作用及其功能介紹 zlg7290能夠直接驅(qū)動8 位共陰式數(shù)碼管(或64 只獨立的led),同時還可以掃描管理多達64 只按鍵。其中有8 只按鍵還可以作為功能鍵使用,就像電腦鍵盤上的ctrl、shift、alt 鍵一樣。另外zlg7290b 內(nèi)部還設(shè)置有連擊計數(shù)器,能夠使某鍵按下后不松手而連續(xù)有效。采用i2c 總線方式,與微控制器的接口僅需兩根信號線??煽貟呙栉粩?shù),可控任一數(shù)碼管閃爍。 引腳說明如下圖: zlg7290使用說明 zlg7290b
21、是基于i2c總線接口的芯片。主控單片機aduc831作為主器件時,內(nèi)部沒有i2c總線功能,因此需用spi總線的引腳來模擬i2c總線。具體連接如下: zlg7290baduc831 gnddgnd sdamosi sclsclock /intint0 vccdvdd 但是,這種連接不是唯一的,只是在所寫的軟件里需要這樣連接。其實中斷可以根據(jù)自己所選的中斷而定。地(gnd)和電源(vcc)也可以另外從電源上接過來。所用電源為5v。 編譯軟件使用的是wsd,這個軟件主要是用于ad系列芯片的。只要下載擴展名為hex的文件即可。zlg7290工作原理 zlg7290的核心是一塊zlg7290b芯片,它采
22、用i2c接口,能直接驅(qū)動8位共陰式數(shù)碼管,同時可掃描管理多達64只按鍵,實現(xiàn)人機對話的功能資源十分豐富。除具有自動消除抖動功能外,它還具有段閃爍、段點亮、段熄滅、功能鍵、連擊鍵計數(shù)等強大功能,并可提供10種數(shù)字和21種字母的譯碼顯示功能,用戶可以直接向顯示緩存寫入顯示數(shù)據(jù),而且無需外接元件即可直接驅(qū)動數(shù)碼管,還可擴展驅(qū)動電壓和電流。此外,zlg7290b的電路簡單,使用也很方便。 用戶按下某個鍵時,zlg7290的int引腳會產(chǎn)生一個低電平的中斷請求信號,讀取鍵值后,中斷信號就會自動撤銷。正常情況下,微控制器只需要判斷int引腳就可以得到鍵盤輸入的信息。微控制器可通過兩種方式得到用戶的鍵盤輸入
23、信息。其一是中斷方式,該方式的優(yōu)點是抗干擾能力強,缺點是要占用微控制器的一個外部中斷源。其二是查詢方式,即通過不斷查詢int引腳來判斷是否有鍵按下,該方式可以節(jié)省微控制器的一根i/o口線,但是代價是i2c總線處于頻繁的活動狀態(tài),消耗電流多并且不利于抗干擾。系統(tǒng)構(gòu)成框圖系統(tǒng)原理介紹 數(shù)字溫度計系統(tǒng)構(gòu)成框圖中ds18b20溫度傳感器主要用于采集溫度;zlg-7290按鍵電路用于控制和調(diào)節(jié)時間,數(shù)碼管用于時間顯示便于讀數(shù),蜂鳴器用于報警鬧鈴。軟件流程圖主程序的主要功能是負責溫度的實時顯示、讀出并處理ds18b20的測量的當前溫度值,溫度測量每1s進行一次。這樣可以在一秒之內(nèi)測量一次被測溫度,其程序流
24、程見圖 主程序流程圖讀溫度流程圖軟件程序程序清單及注釋#include#include #define zlg7290 0x70 /*zlg7290的iic地址*/#define uchar unsigned char /*宏定義*/#define uint unsigned int#define _nop _nop_ /*定義空指令*/uchar disp_buf80,0,0,0,0,0,0,0; /*顯示緩沖區(qū)*/uchar temper2;/*存放溫度的數(shù)組*/ uchar code sampling0,20,29,38,47,56; /*端口位定義*/sbit sdap17;/*模擬i
25、2c數(shù)據(jù)傳送位*/sbit sclp16;/*模擬i2c時鐘控制位*/sbit dq p33; /*18b20數(shù)據(jù)線引腳*/sbit key_intp32;sbit beepp35;bit ack; /*應(yīng)答標志位*/uchar g;uchar t1;uchar t2;uchar cn11;uchar key;uchar change_disp0;/*/* 起動iic總線函數(shù) */void start_i2csda1;/*發(fā)送起始條件的數(shù)據(jù)信號*/_nop;scl1;_nop; /*起始條件建立時間大于4.7us,延時*/_nop;_nop;_nop;_nop; sda0;/*發(fā)送起始信號*/
26、_nop; /* 起始條件鎖定時間大于4s*/_nop;_nop;_nop;_nop; scl0;/*鉗住i2c總線,準備發(fā)送或接收數(shù)據(jù) */_nop;_nop;/* 結(jié)束iic總線函數(shù)*/void stop_i2csda0; /*發(fā)送結(jié)束條件的數(shù)據(jù)信號*/_nop;/*發(fā)送結(jié)束條件的時鐘信號*/scl1; /*結(jié)束條件建立時間大于4s*/_nop;_nop;_nop;_nop;_nop;sda1; /*發(fā)送i2c總線結(jié)束信號*/_nop;_nop;_nop;_nop;/*字節(jié)數(shù)據(jù)傳送函數(shù)*/void sendbyteuchar cuchar bitcnt;forbitcnt0;bitcnt8
27、;bitcnt+ /*要傳送的數(shù)據(jù)長度為8位*/ ifcbitcnt&0x80sda1;/*判斷發(fā)送位*/else sda0; _nop;scl1;/*置時鐘線為高,通知被控器開始接收數(shù)據(jù)位*/_nop; _nop;/*保證時鐘高電平周期大于4s*/_nop;_nop;_nop;scl0; _nop; _nop; sda1;/*8位發(fā)送完后釋放數(shù)據(jù)線,準備接收應(yīng)答位*/ _nop; _nop; scl1; _nop; _nop; _nop; ifsda1ack0; else ack1; /*判斷是否接收到應(yīng)答信號*/ scl0; _nop; _nop;/*字節(jié)數(shù)據(jù)傳送函數(shù)*/uchar rcv
28、byteuchar retc;uchar bitcnt; retc0; sda1; /*置數(shù)據(jù)線為輸入方式*/forbitcnt0;bitcnt8;bitcnt+ _nop; scl0; /*置時鐘線為低,準備接收數(shù)據(jù)位*/_nop;_nop;/*時鐘低電平周期大于4.7s*/_nop;_nop;_nop;scl1; /*置時鐘線為高使數(shù)據(jù)線上數(shù)據(jù)有效*/_nop;_nop;retcretc1;ifsda1retcretc+1; /*讀數(shù)據(jù)位,接收的數(shù)據(jù)位放入retc中 */_nop;_nop; scl0; _nop;_nop;returnretc;/* 應(yīng)答子函數(shù)原型: void ack_i
29、2cbit a; */void ack_i2cbit aifa0sda0; /*在此發(fā)出應(yīng)答或非應(yīng)答信號 */else sda1;_nop;_nop;_nop;scl1; _nop; _nop; /*時鐘低電平周期大于4s*/ _nop; _nop; _nop; scl0; /*清時鐘線,鉗住i2c總線以便繼續(xù)接收*/ _nop; _nop; /*向無子地址器件發(fā)送字節(jié)數(shù)據(jù)函數(shù)*/bit isendbyteuchar sla,uchar cstart_i2c;/*啟動總線*/ sendbytesla;/*發(fā)送器件地址*/ ifack0return0; sendbytec;/*發(fā)送數(shù)據(jù)*/ if
30、ack0return0; stop_i2c;/*結(jié)束總線*/ return1;/*向有子地址器件發(fā)送多字節(jié)數(shù)據(jù)函數(shù)*/bit isendstruchar sla,uchar suba,uchar *s,uchar nouchar i;start_i2c; /*啟動總線*/ sendbytesla;/*發(fā)送器件地址*/ ifack0return0; sendbytesuba;/*發(fā)送器件子地址*/ ifack0return0; fori0;ino;i+ sendbyte*s;/*發(fā)送數(shù)據(jù)*/ifack0return0;s+; stop_i2c; /*結(jié)束總線*/ return1;/*向無子地址器
31、件讀字節(jié)數(shù)據(jù)函數(shù)*/bit ircvbyteuchar sla,uchar *cstart_i2c; /*啟動總線*/ sendbytesla+1; /*發(fā)送器件地址*/ ifack0return0; *crcvbyte;/*讀取數(shù)據(jù)*/ ack_i2c1; /*發(fā)送非就答位*/stop_i2c;/*結(jié)束總線*/ return1;/*向有子地址器件讀取多字節(jié)數(shù)據(jù)函數(shù)*/bit ircvstruchar sla,uchar suba,uchar *s,uchar nouchar i; start_i2c;/*啟動總線*/ sendbytesla;/*發(fā)送器件地址*/ifack0return0;
32、sendbytesuba;/*發(fā)送器件子地址*/ifack0return0; start_i2c; sendbytesla+1; ifack0return0; fori0;ino-1;i+ *srcvbyte;/*發(fā)送數(shù)據(jù)*/ ack_i2c0; /*發(fā)送就答位*/ s+; *srcvbyte; ack_i2c1; /*發(fā)送非應(yīng)位*/stop_i2c; /*結(jié)束總線*/ return1;/*/*void delaymsunsigned char iuchar j,k; fork0;ki;k+forj0;j60;j+;void delayuchar i,j; fori0;i100;i+forj0
33、;j100;j+;/*函數(shù)名稱: zlg7290_sendcmd*/uchar zlg7290_sendcmduchar data1,uchar data2uchar data2; data0data1; data1data2; isendstrzlg7290,0x07,data,2; delayms10; return 1;/*函數(shù)名稱: zlg7290_sendbuf*/void zlg7290_sendbufuchar *disp_buf,uchar numuchar i; fori0;inum;i+ zlg7290_sendcmd0x60+i,*disp_buf;disp_buf+;
34、/*函數(shù)名稱: zlg7290_getkey*/ucharzlg7290_getkeyuchar rece; rece0; ircvstrzlg7290,1,&rece,1; delayms10; return rece;/*/*void delay uint uswhileus-;void resetvoid /*復位*/uchar x0;dq 1;delay8; /*稍做延時*/dq 0;delay80; /*精確延時 大于 480us*/dq 1; /*拉高總線*/delay14;xdq;delay20;dq1;/*從ds18b20讀一字節(jié)*/uchar readbytevoid /*讀
35、1字節(jié)*/uchar i0;uchar dat0;for i8;i0;i- dq 0; dat1; dq 1; ifdqdat|0x80; delay4; returndat;/*向ds18b20寫一字節(jié)*/void writebyteuchar dat /*寫1字節(jié)*/uchar i0;for i8; i0; i- dq 0; dq dat&0x01; delaycn1; dq 1; dat1; delay4;/*cpu讀取溫度值*/void readtempvoid /*讀取溫度*/uchar a0,b0;reset;writebyte0xcc; writebyte0x4e;writeby
36、te0x55; /*警報0-100*/ writebyte0x00;writebyte0xff; /*分辨率0.0625*/reset;writebyte0xcc; /*跳過序列號*/writebyte0x48; /*保存設(shè)置*/reset;writebyte0xcc;writebyte0xb8; /*回調(diào)溫度*/reset; writebyte0xcc; /*跳過讀序號列號的操作*/ writebyte0x44;/* 啟動溫度轉(zhuǎn)換*/ delay500; reset; writebyte0xcc;/*跳過讀序號列號的操作*/ writebyte0xbe;/*讀取溫度寄存器等(共可讀9個寄存器) 前兩個就是溫度*/areadbyte; /*低位*/ breadbyte; /*高位*/ temper0a&0x0f; /*得小數(shù)部分的lsb數(shù)*/ temper0temper02; gtemper0; gg*25;aa4; /*低位右移2位,舍棄低位部分的低兩位*/temper1b4;/*高位左移6位,舍棄高位部分前面的五位符號位和符號位后的一位*/temper1temper1|a;/*得整數(shù)部分*/ /*0.25*100*lsb得小數(shù)部分*/*void maintmod0x20;tl10xfd;
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國四色針梳機數(shù)據(jù)監(jiān)測研究報告
- 2024至2030年燈飾火牛機箱項目投資價值分析報告
- 2025至2030年中國數(shù)字溫度表/溫度計數(shù)據(jù)監(jiān)測研究報告
- 2024至2030年凹面散光眼鏡片項目投資價值分析報告
- 2025至2030年中國妊娠母豬預(yù)混料數(shù)據(jù)監(jiān)測研究報告
- 2024年廢紙漿項目可行性研究報告
- 2024年室內(nèi)門鎖項目可行性研究報告
- 線描鳥類課程設(shè)計
- 面向?qū)ο笳n程設(shè)計
- 音樂app課程設(shè)計報告
- 駕駛員勞務(wù)派遣車輛管理方案
- 山東省濟南市市中區(qū)2022-2023學年二年級上學期期末數(shù)學試卷
- CSCO胃癌診療指南轉(zhuǎn)移性胃癌更新解讀
- 充電樁建設(shè)項目預(yù)算報告
- 《網(wǎng)絡(luò)安全等級保護條例》
- 宜昌市夷陵區(qū)2023-2024學年八年級上學期期末數(shù)學評估卷(含答案)
- 企劃品宣部人員架構(gòu)及職責
- 高效復習+期末動員+高二上學期考前動員主題班會
- 鉛鋅礦資源的勘查與儲量評估
- 非遺傳統(tǒng)手工藝教學總結(jié)
- 2024年國新國際投資有限公司招聘筆試參考題庫含答案解析
評論
0/150
提交評論