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

正文內(nèi)容

片機(jī)課程設(shè)計--基于51單片機(jī)的萬年歷(留存版)

2025-08-05 22:45上一頁面

下一頁面
  

【正文】 感器 DS18B20, 它是 數(shù)字式溫度傳感器 , 具有測量精度高 ,電路連接簡單特點, 此類傳感器僅需要一條數(shù)據(jù)線進(jìn)行數(shù)據(jù)傳輸, 使用P 與 DS18B20 的 I/O 口連接加一個上拉電阻 ,Vcc 接電源 ,Vss 接地。 本設(shè)計是基于 51 系列的單片機(jī)進(jìn)行的電子萬年歷設(shè)計,可以顯示年月日時分秒及周信息,具有可調(diào)整日期和時間功能。程序采用 C 語言編寫。//取得百位數(shù)字 } else { dat=256dat。 SCLK=1。 RST=0。 write_1302(0x8e,0x00)。 gw=dat%10。 case 2:write_1602dat(39。 write_1602dat(39。)。)。 //系統(tǒng)允許有開放的中斷 ET0=1。//miao write_1302(0x8e,0x80)。 break。 case 11: write_1602(er+1)。//設(shè)置鍵按動 1次,調(diào)秒 if(miao==60) miao=0。//打開寫保護(hù) write_1602(er+6)。后的周數(shù)據(jù)顯示位置 write_week(week)。 } write_nyr(9,ri)。 case 7:nian++。 //設(shè)置鬧鐘的分鐘定時 fen1++。 buzzer=1。//十進(jìn)制轉(zhuǎn)換成 DS1302要求的 DCB碼 write_1302(0x8e,0x00)。 write_1602(yh+0x0C)。 case 4:case 6:case 9:case 11: if(ri==0) ri=30。//打開寫保護(hù) write_1602(yh+7)。//因為設(shè)置液晶的模式是寫入數(shù)據(jù)后,指針自動加一,在這里是寫回原來的位置 break。 //調(diào)用定時計數(shù)器的設(shè)置子函數(shù) led=0。//秒,從第二行第 8個字后開始顯示(調(diào)用時分秒顯示子函數(shù)) write_sfm(5,fen)。amp。 雖然編寫過程中有 參考其他程序,而且有些子程序(如 DS180 LCD)是直接調(diào)用的,但的的確確在理解的程度上完成了主程序。 buzzer=1。 nian=BCD_Decimal(read_1302(0x8d))。//因為設(shè)置液晶的模式是寫入數(shù)據(jù)后,指針自動加一,所以需要光標(biāo)回位 break。 //設(shè)置鬧鐘的秒定時 miao1。 temp=(yue)/10*16+(yue)%10。 break。//打開寫保護(hù) write_1602(er+3)。 case 2:fen。加鍵 39。 write_sfm(0x08,miao1)。//允許寫,禁止寫保護(hù) write_1302(0x88,temp)。 }break。 if(week==8) week=1。//令 LCD在正確位置顯示 加 設(shè)定好的分?jǐn)?shù)據(jù) temp=(fen)/10*16+(fen)%10。//蜂鳴器短響一次 delay(20)。 case 10:write_1602(er+1)。//按動 5次, ri //write_1602(0x0f)。//設(shè)置按鍵按動一次,秒位置顯示光標(biāo) write_1602(0x0f)。 定時器 0初始化程序 void init() //定時器、計數(shù)器設(shè)置函數(shù) { TMOD=0x11。T39。)。)。 write_1602dat(39。//取得十位數(shù)字 write_1602(er+add)。 return(Decimal=Decimal*10+(bcdamp。 RST=1。 for(a=8。amp。硬件部分主要由AT89C52 單片機(jī), LCD 顯示電路,以及調(diào)時按鍵電路等組成。在單片機(jī)的選擇上本人使用了 AT89C52 單片機(jī),該單片機(jī)適合于許多較為復(fù)雜控制應(yīng)用場合。dat=128) { gw=dat%10。a0。 write_byte(add)。=0x0F))。//er是頭文件規(guī)定的值 0x80+0x40 write_1602dat(0x30+sw)。N39。//星期數(shù)據(jù)為 3時顯示 write_1602dat(39。 break。)。 //指定定時 /計數(shù)器的工作方式為 1 TH0=0。//設(shè)置光標(biāo)為閃爍 temp=(miao)/10*16+(miao)%10。 break。 write_1602dat(0x53)。 buzzer=1。//十進(jìn)制轉(zhuǎn)換成 DS1302要求的 DCB碼 write_1302(0x8e,0x00)。 write_1602(yh+0x0C)。 case 4:case 6:case 9:case 11: ri++。//向 DS1302 內(nèi)寫月份寄存器 88H寫入調(diào)整后的月 份數(shù)據(jù) BCD碼 write_1302(0x8e,0x80)。//令 LCD在正確位置顯示 加 設(shè)定好秒的數(shù)據(jù) write_1602(er+9)。注釋 if(key3==0) { delay(10)。 if(fen==1) fen=59。//因為設(shè)置液晶的模式是寫入數(shù)據(jù)后,指針自動加一,所以需要光標(biāo)回位 break。 case 2: if(nian%4==0||nian%400==0) { if(ri==0) ri=29。//十進(jìn)制轉(zhuǎn)換成 DS1302要求的 DCB碼 write_1302(0x8e,0x00)。 if(miao1==1) miao1=59。 } } } } }//*******************主函數(shù) ************************** //*************************************************** void main() { lcd_init()。 week=BCD_Decimal(read_1302(0x8b))。 } /**************鬧鐘程序 : 將暫停鍵按下停止蜂鳴 ********************/ if(shi1==shiamp。也因此覺得自己的實驗是對自己負(fù)責(zé)的,并非盲目 COPY 完成的,也使得自己的編程能力提高了一些,只是我還是比較習(xí)慣用 C 語言編程,匯編能力還有待加強(qiáng)哦, O(∩ _∩ )O~!相比硬件,我想我還是更喜歡編程滴,雖然有些糾結(jié),雖然自己現(xiàn)有的知識甚是缺乏,嘿嘿!所以,我今后定會更加努力的學(xué)習(xí)相關(guān)理論知識,并運(yùn)用于實踐中,加油!~ 。fen1==fenamp。//顯示溫度,從第二行第 12個字符后開始顯示 write_sfm(8,miao)。 //調(diào)用 DS1302時鐘的初始化子函數(shù) init()。//令 LCD在正確位置顯示 加 設(shè)定好秒的數(shù)據(jù) write_1602(er+9)。//向 DS1302 內(nèi)寫月份寄存器 88H寫入調(diào)整后的月份數(shù)據(jù) BCD碼 write_1302(0x8e,0x80)。 }break。 if(week==0) week=7。 temp=(fen)/10*16+(fen)%10。//蜂鳴器短響一次 delay(20)。 case 9: write_1602(er+6)。//因為設(shè)置液晶的模式是寫入數(shù)據(jù)后,指針自動加一,所以需要光標(biāo)回位 break。
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1