freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于ds18b20溫度傳感器的顯示及報(bào)警系統(tǒng)設(shè)計(jì)(參考版)

2024-11-16 15:34本頁面
  

【正文】 感謝張凌浩、姚少鋒的熱心幫助。相信本次 課程 設(shè)計(jì)的經(jīng)歷一定會在 我們 今后的學(xué)習(xí)生活中產(chǎn)生巨大的推動作用。 通過這次畢業(yè)設(shè)計(jì)使我 們 學(xué)習(xí)到了很多的 東西 ,不僅加深了對專業(yè) 知識 的 理解 , 而且更好地把 理論 知識 與實(shí)踐相結(jié)合, 提高了自身的動手能力和實(shí)踐水平,增強(qiáng)了學(xué)習(xí)單片機(jī)系統(tǒng)開發(fā)與設(shè)計(jì)的興趣 。 ③ 在 DS18B20 測溫程序設(shè)計(jì)中,向 DS18B20 發(fā)出溫度轉(zhuǎn)換命令后,程序總要等待DS18B20 的返回信號,一旦某個 DS18B20 接觸不好或短線,當(dāng)程序讀該 DS18B20時,將沒有返回信號,程序進(jìn)行死循環(huán),這一點(diǎn)在進(jìn)行 DS18B20 硬件連接和軟件設(shè)計(jì)時要給予一定的重視。 DS18B20 溫度計(jì)還可以在高低溫報(bào)警、遠(yuǎn)距離多點(diǎn)測溫控制等方面進(jìn)行應(yīng)用開發(fā),但在實(shí)際設(shè)計(jì)中應(yīng)注意一下問題: ① DS18B20 工作時電流高達(dá) ,總線上掛節(jié)點(diǎn)數(shù)較多且同時進(jìn)行轉(zhuǎn)換時,要考慮增加總線驅(qū)動,可用單片機(jī)端口在溫度轉(zhuǎn)換時導(dǎo)通一個 MODFET 供電。軟件調(diào)試到能顯示溫度值,而且在有溫度變化時(例如用手去接觸)顯示溫度能改變就基本完成。軟件調(diào)試可以先編寫顯示程序并進(jìn)行硬件的正確性檢驗(yàn),然后分別進(jìn)行主程序、讀出溫度子程序、溫度轉(zhuǎn)換子程序、計(jì)算溫度子程序、顯示數(shù)據(jù)刷新等子程序的編程及調(diào)試,由于 DS18B20 與單片機(jī)采用串行數(shù)據(jù)傳送,因此,對 DA18B20 進(jìn)行讀寫編程時必須嚴(yán)格的保證讀寫時序,否則將無法讀取測量結(jié)果。 j)。 i) for(j = 200。 for(i。 K7) { Beep=!Beep。 if(K=3 amp。 } delay(100)。 LS138C=0。 case 3:LS138A=1。 LS138C=0。 case 2:LS138A=0。 LS138C=0。 case 1:LS138A=1。 LS138C=0。 switch(i) { //138 譯碼 case 0:LS138A=0。 i4。 //個位 K= LedNumVal%100/10。 LedOut[2]=Disp_Tab[LedNumVal%100/10]。 //把實(shí)際溫度送到 LedNumVal變量中 LedOut[0]=Disp_Tab[LedNumVal%10000/1000]。 while(1) { GetTemp()。 unsigned char K=0。 TR1 = 1。 //10 — 33 — TL1 = 0xF0。 void system_Ini() { TMOD|= 0x11。 //此表為 LED 的字模 , 共陰數(shù)碼管 09 unsigned char code Disp_Tab[] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40}。 sbit LS138C=P2^4。 — 32 — //else IO sbit LS138A=P2^2。 //聲明引用外部函數(shù) extern unsigned int idata Temperature。 } — 31 — /******************************************************************************* * 標(biāo)題 : 試驗(yàn)數(shù)碼管上顯示溫度 ********************************************************************************* * DLASS18b20的基本原理和使用 ,理解并掌握 18B20驅(qū)動程序的編寫 * I2C總線接口的工作原理及一般編程方法。 //10 TL1 = 0xF0。 TemperatuerResult()。 GemTemp()。 //skip rom WriteByte(0xbe)。 //Temperature convert Init18b20 ()。 WriteByte(0xcc)。 — 29 — Config18b20()。 } /************************************************************ *Function:18B20ID全處理 *parameter: *Return: *Modify: *************************************************************/ void TemperatuerResult(void) { p = id_buff。 WriteByte(0x33)。 //skip rom WriteByte(0xb8)。 //保存設(shè)定值 Init18b20()。 WriteByte(0xcc)。 //下限 — 27 — WriteByte(0x7f)。 //write scratchpad WriteByte(0x19)。 WriteByte(0xcc)。 TempDelay(1)。 // Temperature *= 。 } — 25 — /************************************************************ *Function:讀取溫度 *parameter: *Return: *Modify: *************************************************************/ void GemTemp (void) { read_bytes (9)。i++) //查表校驗(yàn) crc_data = CrcTable[crc_data^temp_buff[i]]。 for(i=0。 p++。ij。 } /************************************************************ *Function:讀 18B20 *parameter: *Return: *Modify: *************************************************************/ void read_bytes (unsigned char idata j) { unsigned char idata i。 _nop_()。 if(D18B20==1) u |= 0x80。 u = 1。i8。 } } /************************************************************ *Function:讀 18B20 的一個字節(jié) *parameter: — 22 — *Return: *Modify: *************************************************************/ unsigned char ReadByte (void) //讀取單字節(jié) { unsigned char idata i,u=0。 D18B20=1。 //delay 45 uS //5 _nop_()。0x01。 _nop_()。i8。 } /************************************************************ *Function:向 18B20 寫入一個字節(jié) *parameter: *Return: *Modify: *************************************************************/ void WriteByte (unsigned char idata wr) //單字節(jié)寫入 { unsigned char idata i。 _nop_()。 //detect 1820 fail! TempDelay(20)。 if(D18B20==0) flag = 1。 _nop_()。 TempDelay(14)。 //delay 530 uS//80 _nop_()。 D18B20=0。 } /************************************************************ *Function:18B20 初始化 *parameter: *Return: *Modify: *************************************************************/ — 19 — void Init18b20 (void) { D18B20=1。 unsigned char code CrcTable [256]={ 0, 94, 188, 226, 97, 63, 221, 131, 194, 156, 126, 32, 163, 253, 31, 65, 157, 195, 33, 127, 252, 162, 64, 30, 95, 1, 227, 189, 62, 96, 130, 220, — 17 — 35, 125, 159, 193, 66, 28, 254, 160, 225, 191, 93, 3, 128, 222, 60, 98, 190, 224, 2, 92, 223, 129, 99, 61, 124, 34, 192, 158, 29, 67, 161, 255, 70, 24,
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1