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

正文內(nèi)容

電子鐘溫度計(jì)課程設(shè)計(jì)--電子鐘溫度計(jì)的設(shè)計(jì)-資料下載頁(yè)

2025-01-17 02:59本頁(yè)面
  

【正文】 存器88H寫入調(diào)整后的月份數(shù)據(jù)BCD碼 write_1302(0x8e,0x80)。//打開寫保護(hù) write_1602(yh+7)。//因?yàn)樵O(shè)置液晶的模式是寫入數(shù)據(jù)后,指針自動(dòng)加一,所以需要光標(biāo)回位 break。 case 7:nian。 if(nian==1) nian=99。 write_nyr(3,nian)。 temp=(nian)/10*16+(nian)%10。//十進(jìn)制轉(zhuǎn)換成DS1302要求的DCB碼 write_1302(0x8e,0x00)。//允許寫,禁止寫保護(hù) write_1302(0x8c,temp)。//向DS1302內(nèi)寫年份寄存器8cH寫入調(diào)整后的年份數(shù)據(jù)BCD碼 write_1302(0x8e,0x80)。//打開寫保護(hù) write_1602(yh+4)。//因?yàn)樵O(shè)置液晶的模式是寫入數(shù)據(jù)后,指針自動(dòng)加一,所以需要光標(biāo)回位 break。 } } } }}void timer0() interrupt 1 //取得并顯示日歷和時(shí)間{ //Init_DS18B20()。//溫度傳感器DS18b2初始化子函數(shù),在頭文件中 flag=ReadTemperature()。//將18b2頭文件運(yùn)行返回的函數(shù)結(jié)果送到變量FLAG中,用于顯示 //讀取秒時(shí)分周日月年七個(gè)數(shù)據(jù)(DS1302的讀寄存器與寫寄存器不一樣): miao = BCD_Decimal(read_1302(0x81))。 fen = BCD_Decimal(read_1302(0x83))。 shi = BCD_Decimal(read_1302(0x85))。 ri = BCD_Decimal(read_1302(0x87))。 yue = BCD_Decimal(read_1302(0x89))。 nian=BCD_Decimal(read_1302(0x8d))。 week=BCD_Decimal(read_1302(0x8b))。 //顯示溫度、秒、時(shí)、分?jǐn)?shù)據(jù): write_temp(12,flag)。//顯示溫度,從第二行第12個(gè)字符后開始顯示 write_sfm(8,miao)。//秒,從第二行第8個(gè)字后開始顯示(調(diào)用時(shí)分秒顯示子函數(shù)) write_sfm(5,fen)。//分,從第二行第5個(gè)字符后開始顯示 write_sfm(2,shi)。//小時(shí),從第二行第2個(gè)字符后開始顯示 //顯示日、月、年數(shù)據(jù): write_nyr(9,ri)。//日期,從第二行第9個(gè)字符后開始顯示 write_nyr(6,yue)。//月份,從第二行第6個(gè)字符后開始顯示 write_nyr(3,nian)。//年,從第二行第3個(gè)字符后開始顯示 write_week(week)。}//void init() //定時(shí)器、計(jì)數(shù)器設(shè)置函數(shù){ TMOD=0x11。 //指定定時(shí)/計(jì)數(shù)器的工作方式為3 TH0=0。 //定時(shí)器T0的高四位=0 TL0=0。 //定時(shí)器T0的低四位=0 EA=1。 //系統(tǒng)允許有開放的中斷 ET0=1。 //允許T0中斷 TR0=1。 //開啟中斷,啟動(dòng)定時(shí)器}//*******************主函數(shù)**************************void main(){ lcd_init()。 //調(diào)用液晶屏初始化子函數(shù) ds1302_init()。 //調(diào)用DS1302時(shí)鐘的初始化子函數(shù) init()。 //調(diào)用定時(shí)計(jì)數(shù)器的設(shè)置子函數(shù) while(1) //無限循環(huán)下面的語句: { keyscan()。 //調(diào)用鍵盤掃描子函數(shù) }}附錄二:DS18B20部分程序sbit DQ = P2^3。 // /**** 延時(shí)函數(shù) *****/void DS18_delay(int useconds) {int s。for (s=0。 suseconds。s++)。}unsigned char ow_reset(void) { /*復(fù)位函數(shù)*/unsigned char presence。DQ = 0。 // 將 DQ 線拉低DS18_delay(29)。 // 保持 480μsDQ = 1。 // DQ返回高電平DS18_delay(3)。 // 等待存在脈沖presence = DQ。 // 獲得存在信號(hào)DS18_delay(25)。 // 等待時(shí)間隙結(jié)束return(presence)。 // 返回存在信號(hào),0 = 器件存在, 1 = 無器件} /**** 位寫入函數(shù) ****/void write_bit(char bitval) {DQ = 0。 // 將DQ 拉低開始寫時(shí)間隙if(bitval==1) DQ =1。 // 如果寫1,DQ 返回高電平DS18_delay(5)。 // 在時(shí)間隙內(nèi)保持電平值,DQ = 1。 // DS18_delay函數(shù)每次循環(huán)延時(shí)16μs,因此DS18_delay(5) = 104μs} /**** 字節(jié)寫入函數(shù) *****/void ds18write_byte(char val) {unsigned char i。unsigned char temp。for (i=0。 i8。 i++) { // 寫入字節(jié), 每次寫入一位 temp = vali。 temp amp。= 0x01。 write_bit(temp)。 }DS18_delay(5)。} /****位讀取函數(shù) ****/unsigned char read_bit(void) {unsigned char i。DQ = 0。 //將DQ 拉低開始讀時(shí)間隙DQ = 1。 // then return highfor (i=0。 i3。 i++)。 // 延時(shí)15μsreturn(DQ)。 // 返回 DQ 線上的電平值} /**** 字節(jié)讀取函數(shù) ****/unsigned char DSread_byte(void) {unsigned char i。unsigned char value = 0。for (i=0。i8。i++) { // 讀取字節(jié),每次讀取一個(gè)字節(jié)if(read_bit()) value|=0x01i。 // 然后將其左移DS18_delay(6)。 }return(value)。} /***** 讀取溫度函數(shù) *****/unsigned int ReadTemperature(void) {unsigned char get[10]。unsigned char temp_lsb,temp_msb。unsigned int t。unsigned char k。ow_reset()。ds18write_byte(0xCC)。 // 跳過 ROMds18write_byte(0x44)。 // 啟動(dòng)溫度轉(zhuǎn)換DS18_delay(5)。ow_reset()。ds18write_byte(0xCC)。 // 跳過 ROMds18write_byte(0xBE)。 // 讀暫存器for (k=0。k2。k++){get[k]=DSread_byte()。}temp_msb = get[1]。 // Sign byte + lsbittemp_lsb = get[0]。 // Temp data plus lsbt=temp_msb*256+temp_lsb。t=tamp。0x0ff0。if(t0xffamp。amp。t0xf0)t=(1)*t。return t4。//temp_f = (((int)temp_c)* 9)/5 + 32。 // 輸出華氏溫度值}
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1