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

正文內(nèi)容

電氣控制課程設計報告-閱讀頁

2025-02-05 17:54本頁面
  

【正文】 void WriteOneChar(uchar val){ uchar i,j。 i 0。 for(j=0。j++) {_nop_()。} DQ = 0。jDELAY_TIME1。 _nop_()。 _nop_()。//5us } DQ = val amp。 //最低位移出,并寫入總線 ds18b20_delay(6)。 //右移一位,倒數(shù)第二位變?yōu)樽畹臀?} DQ = 1。 //高電平維持11us,寫結(jié)束}//*********************18B20讀1個字節(jié)函數(shù)*********************//uchar ReadOneChar(void){ uchar i,j。 for (i = 8。 i) { DQ = 1。jDELAY_TIME1。 _nop_()。 //右移一位 DQ = 0。jDELAY_TIME1。 _nop_()。 _nop_()。 for(j=0。j++) { _nop_()。 _nop_()。 //4us ,讀時隙 } if (DQ) value |= 0x80。 //66us } DQ = 1。}float ReadTemperature(void){ uchar n = 0。 uchar a,b。 //總線復位 WriteOneChar(0xCC)。 // 發(fā)讀命令 a = ReadOneChar()。 //溫度高8位 Init_DS18B20()。 // Skip ROM WriteOneChar(0x44)。 return (t*)。extern bit KeyFlag。extern bit DisFlag。unsigned char code keycode[16]={0x77,0x7b,0x7d,0x7e, //1,2,3,A0xb7,0xbb,0xbd,0xbe, //4,5,6,B0xd7,0xdb,0xdd,0xde, //7,8,9,C0xe7,0xeb,0xed,0xee, //*,0,D}。 unsigned char KeyCode。 if(P2 != 0x0f) { Delay(500)。 P2 = 0xf0。 while(P2!=0xf0)。 } } else { KeyCode = 0xff。i16。 return 255。 i=Key_Scan()。KeyFlag=1。 case 1:j=2。break。KeyFlag=1。 case 3:break。A case 4:j=4。break。KeyFlag=1。 case 6:j=6。break。 //39。 case 8:j=7。break。KeyFlag=1。 case 10:j=9。break。 //39。 case 12:j=39。KeyFlag=1。KeyCounter=0。 case 13:j=0。break。b39。DisFlag=~DisFlag。 case 15:j=39。KeyFlag=1。break。D39。D39。break。}數(shù)碼管顯示includesbit SegDin=P3^6。 //數(shù)據(jù)顯示時鐘unsigned char code Seg_Table[13] = { 0xC0,/*0*/ 0xF9,/*1*/ 0xA4,/*2*/ 0xB0,/*3*/ 0x99,/*4*/ 0x92,/*5*/ 0x82,/*6*/ 0xF8,/*7*/ 0x80,/*8*/ 0x90,/*9*/ 0x9c,/*10*/ //上框 代表實際溫度 0xa3,/*11*/ //下框 代表設定溫度 0xff//all off }。unsigned char Digit[3] = {0}。}/*函數(shù):Seg_Display()功能:數(shù)碼管在指定位置顯示指定的數(shù)參數(shù):Pos 顯示位置(0 1 2 3) ucDATA (0~9)待顯示的數(shù)字 Point 為1則顯示小數(shù)點,否則不顯示返回值:無*/void Bit_Display(unsigned char Pos, unsigned char ucDATA, bit Point){ unsigned char i。 ucTemp = Seg_Table[ucDATA]。= 0x7f。//關(guān)閉所有顯示 for(i = 0。 i++) { SegDin = ucTemp amp。/*每次取最高位,最高位為1,則SEG_DIN=1;反之亦然*/ SegClk = 0。 /*產(chǎn)生74164移位時鐘上升沿*/ ucTemp = 1。//使能位選}/*函數(shù):Seg_Display()功能:數(shù)碼管上顯示指定的數(shù)參數(shù):uiData (0~9999)待顯示的數(shù)字返回值:無*/void Seg_Display(float uiData){ unsigned char i。 //十位 Digit[1] = (unsigned int)uiData%10。 //小數(shù)后一位 for(i = 0。 i++) { if(i!=1) Bit_Display(i,Digit[i],0)。 //顯示小數(shù)點 Delay(50)。 //溫度顯示值unsigned char data SetData[2]。 //設置溫度位數(shù)計數(shù)器float RTValue。 //設置溫度值unsigned char ShowTime[3]={0}。 //定義粗略延遲變量unsigned int cc。unsigned int TimeCounter=0。 //是否顯示恒溫時間bit KeyFlag=0。 //是否設定鍵按下 1按下bit DisFlag=0。sbit Heat = P3^1。//MODE 1 TH0=(6553650000)/256。 EA=1。 //開定時器0中斷 P4SW=0xf0。 unsigned char Counter=0。 unsigned int stime=0。 while(1) { RTValue=ReadTemperature()。 if(DisFlag==0amp。SetFlag==0) //顯示實際溫度 { for(j=0。j++) //每次用循環(huán)顯示 也許可以提高亮度 for(i=0。i++) { Bit_Display(3,10,0)。 } } if(DisFlag==1amp。SetFlag==0)//顯示設定溫度 { for(j=0。j++) //每次用循環(huán)顯示 也許可以提高亮度 for(i=0。i++) { Bit_Display(3,11,0)。 } } if(TimeCounter==1000) { TimeCounter=0。 ShowTime[0]=stime/100。 ShowTime[2]= stime%10。amp。amp。j50。i50。 //P表示恒溫時間 m=50。 Bit_Display(0,ShowTime[0],0)。 while(m)。 m=50。 Bit_Display(2,ShowTime[2],0)。 while(m)。amp。a39。 Bit_Display(KeyCounter+1,num,0)。 if(KeyCounter1) { KeyCounter=0。 STValue=10*SetData[0]+SetData[1]。 //不鳴叫 Heat=0。amp。 if(CountFlag == 1) { TR0=0。 CountFlag=0。 Beep=1。 if(k1) k=1。 } if(()=RTValueamp。RTValue=(STValue)) { //TimeCounter++。 TR0=1。 Beep=1。 if(k1) k=1。 } if(STValueRTValueamp。RTValue=(STValue+)) { //TimeCounter++。 TR0=1。//不鳴叫 Heat=1。 TimeCounter=0。 } Beep=0。 //不加熱 } } while(Counter==1000) Counter=0。 TL0=(6553650000)%256。 if(cc==20) { cc=0。 }}XXXI
點擊復制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1