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

正文內(nèi)容

高精度數(shù)顯溫度測(cè)控儀的設(shè)計(jì)畢業(yè)設(shè)計(jì)-資料下載頁(yè)

2025-06-27 01:34本頁(yè)面
  

【正文】 display[5] = {0x00,0x00,0x00,0x00,0x00} 。unsigned char code ditab[16] = {0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04, 0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09} 。void beep() 。unsigned char code mytab[8] = {0x0C,0x12,0x12,0x0C,0x00,0x00,0x00,0x00} 。define delayNOP() 。 {_nop_() 。_nop_() 。_nop_() 。_nop_() 。} 。void keyscan()。/*******************************************************************/void delay 1(int ms){ unsigned char y 。 while(ms) { for(y = 0 。 y250 。 y++) { _nop_() 。 _nop_() 。 _nop_() 。 _nop_() 。 } }}/******************************************************************//*檢查L(zhǎng)CD忙狀態(tài) *//*lcd_busy為1時(shí),忙,等待。lcdbusy為0時(shí),閑,可寫(xiě)指令與數(shù)據(jù)。 *//******************************************************************/bit lcd_busy() { bit result 。 LCD_RS = 0 。 LCD_RW = 1 。 LCD_EN = 1 。 delayNOP() 。 result = (bit)(P0amp。0x80) 。 LCD_EN = 0 。 return(result) 。 }/*寫(xiě)指令數(shù)據(jù)到LCD *//*RS=L,RW=L,E=高脈沖,D0D7=指令碼。 *//*******************************************************************/void lcd_wcmd(uchar cmd){ while(lcd_busy()) 。 LCD_RS = 0 。 LCD_RW = 0 。 LCD_EN = 0 。 _nop_() 。 _nop_() 。 P0 = cmd 。 delayNOP() 。 LCD_EN = 1 。 delayNOP() 。 LCD_EN = 0 。}/*******************************************************************//*寫(xiě)顯示數(shù)據(jù)到LCD *//*RS=H,RW=L,E=高脈沖,D0D7=數(shù)據(jù)。 *//*******************************************************************/void lcd_wdat(uchar dat){ while(lcd_busy()) 。 LCD_RS = 1 。 LCD_RW = 0 。 LCD_EN = 0 。 P0 = dat 。 delayNOP() 。 LCD_EN = 1 。 delayNOP() 。 LCD_EN = 0 。}/* LCD初始化設(shè)定 *//*******************************************************************/void lcd_init(){ delay 1(15) 。 lcdwcmd(0x01) 。 //清除LCD的顯示內(nèi)容 lcdwcmd(0x38) 。 //16*2顯示,5*7點(diǎn)陣,8位數(shù)據(jù) delay 1(5) 。 lcdwcmd(0x38) 。 delay 1(5) 。 lcdwcmd(0x38) 。 delay 1(5) 。 lcdwcmd(0x0c) 。 //顯示開(kāi),關(guān)光標(biāo) delay 1(5) 。 lcdwcmd(0x06) 。 //移動(dòng)光標(biāo) delay 1(5) 。 lcdwcmd(0x01) 。 //清除LCD顯示內(nèi)容 delay 1(5) 。}/* 設(shè)定顯示位置 *//*******************************************************************/void lcdpos (uchar pos){ Lcdwcmd(pos | 0x80) 。 //數(shù)據(jù)指針=80+地址變量}/*自定義字符寫(xiě)入CGRAM *//*******************************************************************/void writetab(){ unsigned char i 。 lcdwcmd(0x40) 。 //寫(xiě)CGRAM for (i = 0 。 i 8 。 i++) lcdwdat(mytab[ i ]) 。}/*us級(jí)延時(shí)函數(shù) *//*******************************************************************/void Delay(unsigned int num){ while( num ) 。}/*初始化ds1820 *//*******************************************************************/Init_DS18B20(void){ DQ = 1 。 //DQ復(fù)位 Delay(8) 。 //稍做延時(shí) DQ = 0 。 //單片機(jī)將DQ拉低 Delay(90) 。 //精確延時(shí) 大于 480us DQ = 1 。 //拉高總線 Delay(8) 。 presence = DQ 。 //如果=0則初始化成功 =1則初始化失敗 Delay(100) 。 DQ = 1 。 return(presence) 。 //返回信號(hào),0=presence,1= no presence}/* 讀一個(gè)字節(jié) *//*******************************************************************/ Read One Char (void){unsigned char i = 0 。unsigned char dat = 0 。for (i = 8 。 i 0 。 i) { DQ = 0 。 dat = 1 。 DQ = 1 。 if(DQ) dat |= 0x80 。 Delay(4) 。 } return (dat) 。}/* 寫(xiě)一個(gè)字節(jié) *//*******************************************************************/ Write One Char (unsigned char dat){ unsigned char i = 0 。 for (i = 8 。 i 0 。 i) { DQ = 0 。 DQ = datamp。0x01 。 Delay(5) 。 DQ = 1 。 dat=1 。 }}/* 讀取溫度 *//*******************************************************************/ Read_Temperature(void){ Init_DS18B20() 。 Write One Char(0xCC) 。 // 跳過(guò)讀序號(hào)列號(hào)的操作 Write One Char(0x44) 。 // 啟動(dòng)溫度轉(zhuǎn)換 Init_DS18B20() 。 Write One Char(0xCC) 。 //跳過(guò)讀序號(hào)列號(hào)的操作 Write One Char(0xBE) 。 //讀取溫度寄存器 temp_data[0] = Read One Char() 。 //溫度低8位 tempdata[1] = Read One Char() 。 //溫度高8位}/* 數(shù)據(jù)轉(zhuǎn)換與溫度顯示 *//*******************************************************************/ Disp_Temperature(){ display[4]=tempdata[0]amp。0x0f 。 display[0]=ditab[display[4]]+0x30 。//查表得小數(shù)位的值 display[4]=((tempdata[0]amp。0xf0)4)|((temp_data[1]amp。0x0f)4) 。 display[3]=display[4]/100+0x30 。 display[1]=display[4]%100 。 display[2]=display[1]/10+0x30 。 display[1]=display[1]%10+0x30 。 if(display[3]==0x30) //高位為0,不顯示 { display[3]=0x20 。 if(display[2]==0x30) //次高位為0,不顯示 display[2]=0x20 。 } Lcdpos(0x48) 。 Lcdwdat(display[3]) 。 //百位數(shù)顯示 Lcdpos(0x49) 。 Lcdwdat(display[2]) 。 //十位數(shù)顯示 Lcdpos(0x4a) 。 Lcdwdat(display[1]) 。 //個(gè)位數(shù)顯示 Lcdpos(0x4c) 。 Lcdwdat(display[0]) 。 //小數(shù)位數(shù)顯示}/*******************************************************************//* 蜂鳴器響一聲 *//*******************************************************************/void beep() { unsigned char y 。 for (y=0 。y100 。y++) { Delay (60) 。 BEEP=!BEEP 。 //BEEP取反 } BEEP=1 。 //關(guān)閉蜂鳴器 Delay(40000) 。 }/* DS18B20 OK 顯示菜單 *//***
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1