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

正文內(nèi)容

多路智能溫度測控系統(tǒng)設(shè)計_課程設(shè)計(文件)

2024-09-20 14:15 上一頁面

下一頁面
 

【正文】 就是每一次總線上只連接一個器件,利用 0x33 讀器件序列號的命令在程序中得到完整的器件序列號。所得序列號如圖 2所示(本設(shè)計共用了兩個 DS18B20)。 是 DS18B20 的驅(qū)動程序,包含了 DS18B20 的初始化函數(shù)、讀寫一個字節(jié)的函數(shù)、匹配 ROM 函數(shù)、溫度讀取函數(shù)。在設(shè)計中碰到了一些困難,如在實現(xiàn)多個 DS18B20 的單總線通信時,遇到了編程上的瓶頸,接著又在 Proteus 仿真中遇到了不會讀取 DS18B20 的序列號的困難,幸而被一一克服,才得以完成本設(shè)計最終的仿真實現(xiàn)。 //定義通信端口 unsigned char a[8]。 //DQ 復(fù)位 delay_18B20(4)。 //拉高總線 delay_18B20(40)。i0。 // 給脈沖信號 if(DQ) dat|=0x80。 for (i=8。0x01。 } } void main(void) { unsigned char i。i8。 void delay(unsigned int i) { while(i)。 while(1) { if(k==1) //打開開關(guān)顯示 1ST DS18B20 {temp = ReadTemperature(1)。+39。039。039。 GotoXY(0,0)。 GotoXY(5,1)。 Print( cent)。39。039。039。.39。 Print( 2nd DS18B20)。 Print(amp。 delay(50000)。 unsigned char code str2[]={0x28,0x31,0xc5,0xb8,0x00,0x00,0x00,0xb9}。 //DQ 復(fù)位 delay_18B20(4)。 //拉高總線 delay_18B20(40)。i0。 // 給脈沖信號 if(DQ) dat|=0x80。 for (i=8。0x01。 } } //匹配 ROM MatchRom(unsigned char a) { char j。j++) WriteOneChar(str1[j])。//發(fā)送 18B20 的序列號,先發(fā)送低字節(jié) } } //讀取溫度 ReadTemperature(unsigned char z) { unsigned char a=0。 WriteOneChar(0xCC)。 //匹配 ROM 2 } WriteOneChar(0x44)。 //讀序列號 Init_DS18B20()。 //讀取溫度寄存器等(共可讀 9 個寄存器) 前兩個天津理工大學(xué) 通信工程 課程設(shè)計 21 就是溫度 a=ReadOneChar()。 // 跳過讀序號列號的操作 WriteOneChar(0x44)。 flag_Negative_number = 0。 //有效位到小數(shù)點后 2 位 return(t)。 sfr DBPort = 0x80。 LcdEn=1。//在用 Proteus 仿真時,注意用屏蔽此語句,在調(diào)用 GotoXY()時,會進(jìn)入死循環(huán), //可能在寫該控制字時,該模塊沒有返回寫入完備命令,即 DBPortamp。 LcdRs=style。 _nop_()。 _nop_()。 } //初始化 LCD void LCD_Initial() { LcdEn=0。 //開啟顯示 , 無光標(biāo) LCD_Write(LCD_COMMAND,LCD_CLEAR_SCREEN)。 } void Print(unsigned char *str) { while(*str!=39。 } } endif 。) { LCD_Write(LCD_DATA,*str)。 //AC 遞增 , 畫面不動 } //******************************************************* void GotoXY(unsigned char x, unsigned char y) { if(y==0) LCD_Write(LCD_COMMAND,0x80|x)。 //8 位數(shù)據(jù)端口 ,2 行顯示 ,5*7點陣 LCD_Write(LCD_COMMAND,0x38)。 } //設(shè)置顯示模式 define LCD_SHOW 0x04 //顯示開 define LCD_HIDE 0x00 //顯示關(guān) define LCD_CURSOR 0x02 //顯示光標(biāo) define LCD_NO_CURSOR 0x00 //無光標(biāo) define LCD_FLASH 0x01 //光標(biāo)閃動 define LCD_NO_FLASH 0x00 //光標(biāo)不閃動 void LCD_SetDisplay(unsigned char DisplayMode) { LCD_Write(LCD_COMMAND, 0x08|DisplayMode)。 _nop_()。 _nop_()。 return DBPort。 //while(DBPortamp。 天津理工大學(xué) 通信工程 課程設(shè)計 22 LcdRw=1。 sbit LcdRw = P2^1。 flag_Negative_number = 0xff。 t=8。 //啟動下一次溫度轉(zhuǎn)換 Init_DS18B20()。 //匹配 ROM 1 } if(z==2) { MatchRom(2)。 Init_DS18B20()。 if(z==1) { MatchRom(1)。 unsigned int t=0。j8。//發(fā)送匹配 ROM 命令 if(a==1) { 天津理工大學(xué) 通信工程 課程設(shè)計 20 for(j=0。 DQ = 1。 i) { DQ = 0。 } return(dat)。 // 給脈沖信號 dat=1。 unsigned char dat = 0。 //單片機(jī)將 DQ 拉低 delay_18B20(100)。 } //初始化函數(shù) Init_DS18B20(void)
點擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1