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

正文內(nèi)容

基于c51單片機(jī)的數(shù)字溫度報(bào)警器的設(shè)計(jì)畢業(yè)設(shè)計(jì)(參考版)

2025-03-02 09:06本頁(yè)面
  

【正文】 LEDBUF[5] = 0x00。 LEDBUF[3] = LEDMAP[CurTemp/100%10]。 LEDBUF[1] = LEDMAP[CurTemp%10]。 CurTemp = c*+。 } else { w = 1。 LEDBUF[4] =LEDMAP[CurTemp/1000%10]。 LEDBUF[2] =LEDMAP[CurTemp/10%10]|0x80。 LEDBUF[0] =0x39。 WarLed=1。amp。 } } } a = x[0]*100+x[1]*10+x[2]。 } displayLCD(68,0)。 if(i==1) cod2[1]=key。 LEDBUF[2] = LEDBUF[2]|0x80。 34 if(key10){ LEDBUF[3i] = LEDMAP[x[i]amp。 x[i] = key。i3。 cod2[4]=11。 LEDBUF[5] = 0x00。 LEDBUF[3] = 0x00。 LEDBUF[1] = 0x00。 y[2] = 0。 y[0] = 0。 x[1] = 0。 while (1) { b = Ds18b20ReadTemp()。 //列驅(qū)動(dòng)高有效 RowHigh= 0x00。 //行驅(qū)動(dòng)低有效 ColHigh= 0xff。 LEDBUF[5] = 0x00。 LEDBUF[3] = 0x00。 LEDBUF[1] = 0x00。 XBYTE[0x8002] = 0x01。 TR0 = 1。 TL0 = 0x67。 TMOD = 0x01。 Clear()。 unsigned char key。 unsigned char y[3] = {0,0,0}。 } if(w==0) { WAR = ~WAR。 //移位 ,指向下一行 if(k15) { k=0。 k++。 0xff。 //寫(xiě)出一行數(shù)據(jù) 32ColHigh = ~ CRYSTALTAB[w][k*2+1]。 //首先清屏 RowHigh = 0x00。 }。amp。 } j++ 。i=0。break。 case 4 : XBYTE[0x8002] = 0x10。i++。break。 case 2 : XBYTE[0x8002] = 0x04。i++。break。 switch(i) { case 0 : XBYTE[0x8002] = 0x01。 TL0 = 0x67。 XBYTE[0x8004] = 0x00。 static unsigned char j=0。 displayLCD(68,0)。 Code_ = 0x05。 31 Page_ = 0x02。 Code_ = 0x04。 Page_ = 0x02。 Code_ = 0x03。 Page_ = 0x02。 Code_ = 0x02。 Page_ = 0x02。 Code_ = 0x01。 Page_ = 0x02。 Code_ = 0x00。 } } //液晶屏數(shù)字刷新顯示 void DisplayL() { Page_ = 0x02。 WriteNum16x8()。 Column = nCol+8*i。i5。 } //液晶屏刷新顯示 30void displayLCD(unsigned char nCol,unsigned char nPage ) { unsigned char i,j。 j++。 if( ++k = PD1 * 2) break。 // 寫(xiě)字模數(shù)據(jù) }。 // 設(shè)置列地址值 LCDData = NUMTAB[Code_][i]。 // 寫(xiě)字模數(shù)據(jù) } else{ // 為右半屏顯示區(qū)域 (E2) Command = kPD1。 // 設(shè)置列地址 值 LCDData = NUMTAB[Code_][i]。 // 列地址值 while(k Column + 8){ if (k PD1) { // 為左半屏顯示區(qū)域 (E1) Command = k。 WriteCommandE2()。 0x03) | 0xb8。 j = 0。 } // 數(shù)字顯示子程序 void WriteNum16x8() { unsigned char i,j,k。 j++。 29 if( ++k = PD1 * 2) break。 // 寫(xiě)字模數(shù)據(jù) }。 // 設(shè)置列地址值 LCDData = CHARCCTERTAB[Code_][i]。 // 寫(xiě)字模數(shù)據(jù) } else{ // 為右半屏顯示區(qū)域 (E2) Command = kPD1。 // 設(shè)置列地址值 LCDData = CHARCCTERTAB[Code_][i]。 // 列地址值 while(k Column + 16){ if (k PD1) { // 為左半屏顯示區(qū)域 (E1) Command = k。 WriteCommandE2()。 0x03) | 0xb8。 j = 0。 // 頁(yè)地址暫存器加一 // 顯示區(qū)清零循環(huán) } // 中文顯示子程序 void WriteCHN16x16() { unsigned char i,j,k。 } while(j !=0)。 // 顯示數(shù)據(jù)為 0 WriteDataE1()。 28 j = 0x50。 // 列地址設(shè)置為 0 WriteCommandE1()。 WriteCommandE2()。 do { Command = (i + 0xb8)。 } // LCD 液晶屏 清屏 void Clear() { unsigned char i,j。 WriteCommandE1()。 WriteCommandE2()。 Command = 0xc0。 WriteCommandE1()。 WriteCommandE2()。 Command = 0xa9。 WriteCommandE1()。 27 WriteCommandE2()。 Command = 0xe2。 LCDData = DRADD2。 } // (E2) void ReadDataE2() { while(CRADD2 amp。 0x80)。 CWADD2 = Command。 } // (E2) void WriteCommandE2() { while(CRADD2 amp。 0x80)。 26 DWADD1 = LCDData。 } // (E1) void WriteDataE1() { while(CRADD1 amp。 0x80)。 // 取出鍵碼 } else return(0xff)。 while (TestKey())。 XBYTE[0x8002] = 0。 else if (k amp。 else if (k amp。 if (k amp。 (k == 0))。 } while ((i != 0) amp。 k = ~XBYTE[0x8001] amp。 // 找出鍵所在列 25 do { XBYTE[0x8002] = ~ Pos。 i = 6。 uchar i。 0x0f)。 } //***********************DS18B20 讀取溫度程序 *****************************// //****************************鍵盤(pán)掃描 程 **********************************// code uchar KeyTable[] = // 鍵碼定義 { 0x16, 0x15, 0x14, 0xff, 0x13, 0x12, 0x11, 0x10, 0x0d, 0x0c, 0x0b, 0x0a, 0x0e, 0x03, 0x06, 0x09, 0x0f, 0x02, 0x05, 0x08, 0x00, 0x01, 0x04, 0x07 }。 temp|=tml。 //再讀高字節(jié) temp=tmh。 //然后等待轉(zhuǎn)換完后發(fā)送讀取溫度命令 tml=Ds18b20ReadByte()。 Ds18b20ChangTemp()。 //發(fā)送讀取溫度命令 } int Ds18b20ReadTemp() 24{ int temp=0。 Ds18b20WriteByte(0xcc)。 //溫度轉(zhuǎn)換命令 } void Ds18b20ReadTempCom() { Ds18b20Init()。 Ds18b20WriteByte(0xcc)。 } void Ds18b20ChangTemp() { Ds18b20Init()。 //讀取完之后等待 48us 再接著讀取下一個(gè)數(shù) while(i)。*/ byte=(byte1)|(bi7)。 //延時(shí) 6us 等待數(shù)據(jù)穩(wěn)定 bi=IN。 //然后釋放總線 i++。 //先將總線拉低 1us i++。j0。 unsigned int i,j。 //然后釋放總線,至少 1us 給總線恢復(fù)時(shí)間才能接著寫(xiě)入第二個(gè)數(shù)值 dat=1。 while(i)。0
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1