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

正文內容

電子鐘溫度計課程設計--電子鐘溫度計的設計(編輯修改稿)

2025-07-10 09:25 本頁面
 

【文章內容簡介】 } //溫度顯示子函數(shù) void write_temp(uchar add,uchar dat)// 向LCD 寫溫度數(shù)據(jù) ,并指定顯示位置 { uchar gw,sw。 gw=dat%10。//取得個位數(shù)字 sw=dat/10。//取得十位數(shù)字 write_1602(er+add)。//er 是頭文件規(guī)定的值 0x80+0x40 write_1602dat(0x30+sw)。//數(shù)字 +30 得到該數(shù)字的 LCD1602 顯示碼 write_1602dat(0x30+gw)。//數(shù)字 +30得到該數(shù)字的 LCD1602 顯示碼 write_1602dat(0xdf)。//顯示溫度的小圓圈符號, 0xdf 是液晶屏字符庫的該符號地址碼 write_1602dat(0x43)。 //顯示 C符號,0x43 是液晶屏字符庫里大寫 C 的地址碼 } //時分秒顯示子函數(shù) void write_sfm(uchar add,uchar dat)//向 LCD寫時分秒 ,有顯示位置加、現(xiàn)示數(shù)據(jù),兩個參數(shù) { uchar gw,sw。 gw=dat%10。//取得個位數(shù) 字 sw=dat/10。//取得十位數(shù)字 write_1602(er+add)。//er 是頭文件規(guī)定的值 0x80+0x40 15 write_1602dat(0x30+sw)。//數(shù)字 +30 得到該數(shù)字的 LCD1602 顯示碼 write_1602dat(0x30+gw)。//數(shù)字 +30得到該數(shù)字的 LCD1602 顯示碼 } //年月日顯示子函數(shù) void write_nyr(uchar add,uchar dat)//向 LCD寫年月日,有顯示位置加數(shù)、顯示數(shù)據(jù),兩個參數(shù) { uchar gw,sw。 gw=dat%10。//取得個位數(shù)字 sw=dat/10。//取得十位數(shù)字 write_1602(yh+add)。// 設定顯示位置為第一個位置 +add write_1602dat(0x30+sw)。//數(shù)字 +30 得到該數(shù)字的 LCD1602 顯示碼 write_1602dat(0x30+gw)。//數(shù)字 +30得到該數(shù)字的 LCD1602 顯示碼 } void write_week(uchar week)//寫星期函數(shù) { write_1602(yh+0x0c)。//星期字符的顯示 位置 switch(week) { case 1:write_1602dat(39。M39。)。//星期數(shù)為 1 時,顯示 write_1602dat(39。O39。)。 write_1602dat(39。N39。)。 break。 case 2:write_1602dat(39。T39。)。//星期數(shù)據(jù)為 2 時顯示 write_1602dat(39。U39。)。 write_1602dat(39。E39。)。 break。 case 3:write_1602dat(39。W39。)。//星期數(shù)據(jù)為 3 時顯示 write_1602dat(39。E39。)。 write_1602dat(39。D39。)。 break。 case 4:write_1602dat(39。T39。)。//星期數(shù)據(jù)為 4 是顯示 write_1602dat(39。H39。)。 write_1602dat(39。U39。)。 break。 case 5:write_1602dat(39。F39。)。//星期數(shù)據(jù)為 5 時顯示 write_1602dat(39。R39。)。 write_1602dat(39。I39。)。 break。 case 6:write_1602dat(39。S39。)。//星期數(shù)據(jù)為 6 時顯示 write_1602dat(39。T39。)。 write_1602dat(39。A39。)。 break。 case 7:write_1602dat(39。S39。)。//星期數(shù)據(jù)為 7 時顯示 write_1602dat(39。U39。)。 write_1602dat(39。N39。)。 break。 } } //**************** 鍵 盤 掃 描 有 關 函 數(shù)********************** void keyscan() { if(key1==0)//key1 為功能鍵(設置鍵) { delay(9)。//延時,用于消抖動 if(key1==0)//延時后再次確認按鍵按下 { while(!key1)。 key1n++。 if(key1n==9) key1n=1。//設置按鍵共有秒、分、時、 星期、日、月、年、返回, 8 個功能循環(huán) switch(key1n) { case 1: TR0=0。//關閉定時器 //TR1=0。 write_1602(er+0x09)。// 設置按鍵按動一次,秒位置顯示光標 write_1602(0x0f)。//設置光標為閃爍 temp=(miao)/10*16+(miao)%10。// 秒數(shù)據(jù)寫入 DS1302 write_1302(0x8e,0x00)。 write_1302(0x80,0x80|temp)。//miao write_1302(0x8e,0x80)。 break。 case 2: write_1602(er+6)。//按 2 次fen 位置顯示光標 //write_1602(0x0f)。 break。 case 3: write_1602(er+3)。//按動 3 16 次, shi //write_1602(0x0f)。 break。 case 4: write_1602(yh+0x0e)。//按動4 次, week //write_1602(0x0f)。 break。 case 5: write_1602(yh+0x0a)。//按動5 次, ri //write_1602(0x0f)。 break。 case 6: write_1602(yh+0x07)。//按動6 次, yue //write_1602(0x0f)。 break。 case 7: write_1602(yh+0x04)。//按動7 次, nian //write_1602(0x0f)。 break。 case 8: write_1602(0x0c)。//按動到第 8 次,設置光標不閃爍 TR0=1。//打開定時器 temp=(miao)/10*16+(miao)%10。 write_1302(0x8e,0x00)。 write_1302(0x80,0x00|temp)。//miao 數(shù)據(jù)寫入DS1302 write_1302(0x8e,0x80)。 break。 } } } // 加鍵key2 if(key1n!=0)//當 key1 按下以下。再按以下鍵才有效(按鍵次數(shù)不等于零) { if(key2==0) //上調鍵 { delay(10)。 if(key2==0) { while(!key2)。 switch(key1n) { case 1:miao++。//設置鍵按動 1 次,調秒 if(miao==60) miao=0。//秒超過 59,再加1,就歸零 write_sfm(0x08,miao)。// 令LCD 在正確位置顯示 加 設定好的秒數(shù) temp=(miao)/10*16+(miao)%10。// 十進制轉換成 DS1302 要求的 DCB 碼 write_1302(0x8e,0x00)。 //允許寫,禁止寫保護 write_1302(0x80,temp)。 // 向DS1302 內寫秒寄存器 80H 寫入調整后的秒數(shù)據(jù) BCD 碼 write_1302(0x8e,0x80)。 //打開寫保護 write_1602(er+0x09)。// 因為設置液晶的模式是寫入數(shù)據(jù)后,光標自動右移,所以要指定返回 //write_1602(0x0b)。 break。 case 2:fen++。 if(fen==60) fen=0。 write_sfm(0x05,fen)。//令 LCD在正確位置顯示 加 設定好的分數(shù)據(jù) temp=(fen)/10*16+(fen)%10。//十進制轉換成 DS1302 要求 的 DCB 碼 write_1302(0x8e,0x00)。// 允許寫,禁止寫保護 write_1302(0x82,temp)。// 向DS1302 內寫分寄存器 82H 寫入調整后的分數(shù)據(jù) BCD 碼 wri
點擊復制文檔內容
畢業(yè)設計相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1