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

正文內(nèi)容

多路智能溫度測控系統(tǒng)設(shè)計課程設(shè)計(編輯修改稿)

2025-07-21 07:56 本頁面
 

【文章內(nèi)容簡介】 20發(fā)送一個字節(jié),讀取一個字節(jié),以及DS18B20的初始化等子程序。 圖 1圖 2 十、軟件設(shè)計軟件流程圖判斷K=1?讀取1ST DS18B20LCD顯示讀取2ND DS18B20LCD顯示初始化DS18B20開始是否主程序流程圖 DS18B20讀取溫度流程圖開始初始化DS18B20跳過讀序列號操作匹配ROM啟動溫度轉(zhuǎn)換讀序列號匹配ROM讀取溫度寄存器 關(guān)鍵模塊說明 、 、 ()三部分組成。,并設(shè)置了一個開關(guān),當(dāng)打開開關(guān)顯示1ST的溫度,閉合開關(guān)顯示2ND的溫度。 是DS18B20的驅(qū)動程序,包含了DS18B20的初始化函數(shù)、讀寫一個字節(jié)的函數(shù)、匹配ROM函數(shù)、溫度讀取函數(shù)。,包含了LCD初始化等程序,使用時只需在主程序中調(diào)用GotoXY()函數(shù)即可讓LCD1602顯示字母數(shù)字等信息。具體程序見附錄2。結(jié)語總結(jié) 在本次課程設(shè)計中,我對于芯片的學(xué)習(xí)能力有了一定了提高,對于初次接觸的DS18B20芯片能通過閱讀它的數(shù)據(jù)手冊了解其使用方法,并付諸于軟件編程思想。在設(shè)計中碰到了一些困難,如在實現(xiàn)多個DS18B20的單總線通信時,遇到了編程上的瓶頸,接著又在Proteus仿真中遇到了不會讀取DS18B20的序列號的困難,幸而被一一克服,才得以完成本設(shè)計最終的仿真實現(xiàn)。第一次親自動手編寫此類較為冗長的程序,將所學(xué)的C語言運用到實際,才發(fā)現(xiàn)實踐總是高于理論的,在實際應(yīng)用中總會出現(xiàn)困難。在完成本設(shè)計后,本人感覺工程設(shè)計能力有較大的提升,培養(yǎng)了系統(tǒng)的思維能力,總之得到了很好的鍛煉。參考文獻(xiàn) 唐穎. :北京大學(xué)出版社,2008 :北京航空航天大學(xué)出版社,2006附錄1DS18B20 ROM系列號測試程序includesbit DQ = P1^1。 //定義通信端口 unsigned char a[8]。//延時程序void delay_18B20(unsigned int i){ while(i)。}//初始化函數(shù)Init_DS18B20(void) { unsigned char x=0。 DQ = 1。 //DQ復(fù)位 delay_18B20(4)。 //稍做延時 DQ = 0。 //單片機將DQ拉低 delay_18B20(100)。 //精確延時 大于 480us DQ = 1。 //拉高總線 delay_18B20(40)。 }//讀一個字節(jié) ReadOneChar(void){ unsigned char i=0。 unsigned char dat = 0。 for (i=8。i0。i) { DQ = 0。 // 給脈沖信號 dat=1。 DQ = 1。 // 給脈沖信號 if(DQ) dat|=0x80。 delay_18B20(10)。 } return(dat)。}//寫一個字節(jié) WriteOneChar(unsigned char dat){ unsigned char i=0。 for (i=8。 i0。 i) { DQ = 0。 DQ = datamp。0x01。 delay_18B20(10)。 DQ = 1。 dat=1。 }}void main(void){ unsigned char i。 Init_DS18B20()。 WriteOneChar(0x33)。 for(i=0。i8。i++) a[i]=ReadOneChar()。//將Rom序列號存入a[]中 }附錄2主程序includeincludeincludeunsigned char TempBuffer[6]。sbit k=P3^0。void delay(unsigned int i){ while(i)。}void main(void){ unsigned int temp。 Init_DS18B20()。 delay(5000)。 while(1) { if(k==1) //打開開關(guān)顯示1ST DS18B20 {temp = ReadTemperature(1)。 if(flag_Negative_number)TempBuffer[0]=39。39。 else TempBuffer[0]=39。+39。 TempBuffer[1]=temp/1000+39。039。//百位數(shù) TempBuffer[2]=temp%1000/100+39。039。//十位數(shù) TempBuffer[3]=temp%100/10+39。039。//個
點擊復(fù)制文檔內(nèi)容
語文相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1