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

正文內(nèi)容

基于單片機的多功能電子鐘課程設計說明書(文件)

2025-07-30 19:48 上一頁面

下一頁面
 

【正文】 le()。 if((KEY1 == 1)||(KEY2 == 1)||(KEY3 == 1)||(KEY4 == 1)) { delay1ms(100)。 else if(i0xc5) i=0xc2。 //將字符格式的年份轉換為數(shù)值格式 month=(DataBuf[7]amp。0xf)*10+(DataBuf[11]amp。 if((year%4)!=0) if(month==2amp。 if(month12) month=1。(year%4)==0) //計算是否閏年 day=29。(year%4)==0) //計算是否閏年 { if(day29) day=1。0xf)。 TimeBuf[1]=n%10+0x30。 n++。 } DataBuf[4]=year/10+0x30。 DataBuf[10]=day/10+0x30。 DS1302_Write((DataBuf[4]amp。 DS1302_Write(0x8a)。i11。0xf))。i+=3,n=2) { DS1302_Write(n)。 RST=0。 return。 for(i=1。 TimeBuf[1]=(alarm[0]amp。0xf)+0x30。 while(1) { P0=0xe。 P2=0xff。 if(i0xc5) i=0xc2。 n++。 } else { n=(TimeBuf[3]amp。 if(n59) n=0。 } else if(KEY3 == 1) { DS1302_Write(0xc0)。 RST=0。0xf))。 山東建筑大學信息與電氣工程學院課程設計說明書 32 DS1302_Write(DataBuf[0])。 return。 } } } if(j==0) { TR0=0。 DS1302_Write(0x8c)。 RST=0。 for(i=7,n=0x88。0xf)*16+(DataBuf[i+1]amp。i7。0xf))。 DS1302_Write(0x8E)。 //清屏并光標復位 Enable()。 //文字不動 ,光標自動右移 Enable()。 //讀取時間 LCDShow()。 //延時 去抖動 if((KEY1 == 1)||(KEY2 == 1)||(KEY3 == 1)) { j=7。 } else if(KEY2 == 1) { SetAlarm()。 DS1302_Write(0xc4)。 } } 。 RST=0。 if(DataBuf[0]==FLAG) DataBuf[0]=0x20。 TR0=1。 山東建筑大學信息與電氣工程學院課程設計說明書 34 P2=0xff。 TimeStart()。 //設置顯示模式 :8 位 2 行 5x7 點陣 Enable()。 RST=0。 } } /************************************************************/ //主函數(shù) main() { IE=0x82。 DS1302_Write((TimeBuf[i]amp。 山東建筑大學信息與電氣工程學院課程設計說明書 33 RST=0。i+=3,n=2) { DS1302_Write(n)。 DS1302_Write(SetWeek())。0xf)*16+(DataBuf[5]amp。 return。 TimeStart()。 TR0=0。 DataBuf[0]=FLAG。 DS1302_Write((TimeBuf[3]amp。0xf)*16+(TimeBuf[1]amp。 TimeBuf[4]=n%10+0x30。0xf)。 TimeBuf[0]=n/10+0x30。0xf)*10+(TimeBuf[1]amp。 //延時 去抖動 if((KEY1 == 1)||(KEY2 == 1)||(KEY3 == 1)||(KEY4 == 1)) { 山東建筑大學信息與電氣工程學院課程設計說明書 31 j=7。 P0=i。 LCDShow()。 TimeBuf[3]=alarm[1]/16+0x30。i++) { DataBuf[i]=0x20。 return。 return。0xf)*16+(TimeBuf[i+1]amp。 } for(i=0。 DS1302_Write((DataBuf[i]amp。 RST=0。0xf))。 LCDShow()。 DataBuf[7]=month/10+0x30。 TimeBuf[3]=n/10+0x30。0xf)*10+(TimeBuf[4]amp。 if(n23) n=0。 } } else if(i==0xc2) //設置小時 { n=(TimeBuf[0]amp。 if(dayDay[month1]) { if(month==2amp。 if(month==2amp。day==29) day=28。 //將字符格式的日數(shù)轉換為數(shù)值格式 if(i==0x85) //設置年份 { year++。0xf)。0xf)*10+(DataBuf[5]amp。 if(KEY1 == 1) { i+=3。 //定光標 Enable()。 LCDShow()。 } ET1=0。 return。 if(KEY4 == 1) { delay1ms(100)。n3。 TH1=th1=table1[a]/256,TL1=tl1=table1[a]%256。 a=4。 while(1) { a=table2[i]。 ET1=1。 } TH0=TIME/256,TL0=TIME%256。 //將兩位數(shù)據(jù)的十位轉為字符格式 TimeBuf[i+1]=time[m]%16+0x30。i+=3,n=2,m++) //連續(xù)讀取時 ,分 ,秒 { DS1302_Write(n)。 RST=0。 alarm[1]=DS1302_Read()。 //時間分隔顯示 DS1302_Write(0xc1)。 //拉高時鐘脈沖 } 山東建筑大學信息與電氣工程學院課程設計說明書 24 return(j)。 //拉低時鐘脈沖 _nop_()。i8。 //拉高時鐘脈沖 temp=1。i++) //循環(huán) 8 次 { DAT=tempamp。//延時一指令周期 RST=1。 山東建筑大學信息與電氣工程學院課程設計說明書 23 LCD1602_WriteStr(TimeBuf,16)。 //寫入顯示起始地址 //Enable()。 LCD1602_WriteSChr(j)。 } /************************************************************/ //LCD1602 寫入字符串函數(shù) //入口函數(shù) //uchar data *address : 寫入數(shù)據(jù)首地址 //ucharm:寫入字節(jié)數(shù) LCD1602_WriteStr(uchar *address,uchar m) { uchar i,j。 RW=0。 delay1ms(3)。j++)。 for(i=0。 //音律表 uint code table1[]={64260,64400,64524,64580,64684,64777, 64820,64898,64968,65030,65058,65110,65157,65178,65217}。//日期 uchar TimeBuf[16] = {}。 sbit KEY3 = P2^2。 sbit E=P1^7。 sbit DAT=P1^3。 通過這次課程設計使我懂得了理論與實際相結合是很重要的,只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結合起來,從理論中得出結論,才能真正為社會服務,從而提高自己的實際動手能力和獨立思考的能力。其流程圖如圖 所示。 8DH 8EH 8FH 第二行 0C0H 0C1H 0C2H 要顯示字符時要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符。 當 E 端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。 ③ VL: 液晶顯示 偏壓信號。模塊采用數(shù)字式接口,能夠方便地與單片機等控制類芯片進行通 信。當 CE 仍為高時。 對于數(shù)據(jù)輸入:開始的 8 個 SCLK 周期,輸入寫命令字節(jié),數(shù)據(jù)字節(jié)在后 8 個 SCLK 周期的上升沿輸入。其 次, CE 提供了一個終止單字節(jié)或多字節(jié)數(shù)據(jù)傳輸方法。同樣,在緊跟 8 位的控制字指令后的下一個 SCLK 脈沖的下降沿,讀出 DS1302 的數(shù)據(jù),讀出的數(shù)據(jù)也是從最低位到最高位。引腳功能如表 32 所示: 表 32 DS1302 引腳功能說明 引腳號 名稱 功能 1 VCC1 備份電源輸入 2 X1 晶振輸入 3 X2 晶振輸出 4 GND 地 5 RST
點擊復制文檔內(nèi)容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1