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

正文內(nèi)容

數(shù)字電子鐘整體設(shè)計(jì)畢業(yè)論文-閱讀頁(yè)

2025-07-13 15:15本頁(yè)面
  

【正文】 p22 = P2^2。char done,count,temp,stop,up_stop,press。uchar code ShowBuff[11]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00}。 //LED片選//*****************延時(shí)**************************void delay(uint j){ uint i。j0。i62。} }}//************十六進(jìn)制轉(zhuǎn)化為bcd碼*******void H_toBCD(void) { switch(temp) { case 0x0A:temp=0x10。 case 0x1A:temp=0x20。 case 0x2A:temp=0x30。 case 0x3A:temp=0x40。 case 0x4A:temp=0x50。 case 0x5A:temp=0x60。 case 0x6A:temp=0x70。 case 0x7A:temp=0x80。 case 0x8A:temp=0x90。 case 0x9A:temp=0x00。 }}//*****************LED顯示部分**************************void Print(unsigned char *str) //將字符輸出到LED顯示{ uint i,c。i4。039。break。139。break。239。break。339。break。439。break。539。break。639。break。739。break。839。break。939。break。A39。break。 P0=ShowBuff[c]。 } delay(8)。 unsigned char Minute。 unsigned char Day。 unsigned char DateStr[4]。 }SYSTEMTIME。define AM(X) Xdefine PM(X) (X+12) // 轉(zhuǎn)成24小時(shí)制define DS1302_SECOND 0x80 //時(shí)鐘芯片的寄存器位置,存放時(shí)間,秒寄存器寫(xiě)操作define DS1302_MINUTE 0x82 //分寄存器寫(xiě)操作define DS1302_HOUR 0x84 //時(shí)寄存器寫(xiě)操作define DS1302_DAY 0x86 //日寄存器寫(xiě)操作define DS1302_MONTH 0x88 //月寄存器寫(xiě)操作void DS1302WriteByte(unsigned char d) //DS1302寫(xiě)入一字節(jié)(內(nèi)部函數(shù)){ uchar i。 for(i=8。 i) { if(ACCamp。 //相當(dāng)于匯編中的 RRC } else DS1302_IO = 0。 DS1302_SCLK = 0。 } }unsigned char DS1302ReadByte(void) //DS1302讀取一字節(jié)(內(nèi)部函數(shù)){ unsigned char i。 i0。 //相當(dāng)于匯編中的 RRC ACC7 = DS1302_IO。 DS1302_SCLK = 0。 }unsigned char Read1302(unsigned char Address) //讀取DS1302某地址的數(shù)據(jù),Address: DS1302地址, Data: 要寫(xiě)的數(shù)據(jù){ unsigned char Datata。 DS1302_SCLK = 0。 DS1302WriteByte(Address|0x01)。 // 讀1Byte數(shù)據(jù) DS1302_SCLK = 1。 return(Datata)。 DS1302_SCLK = 0。 DS1302WriteByte(Address)。 // 寫(xiě)1Byte數(shù)據(jù) DS1302_SCLK = 1。} void DS1302_GetTime(SYSTEMTIME *Time) //獲取時(shí)鐘芯片的時(shí)鐘數(shù)據(jù)到自定義的結(jié)構(gòu)型數(shù)組{ unsigned char ReadValue。 TimeSecond = ((ReadValueamp。0x0F)。 TimeMinute = ((ReadValueamp。0x0F)。 TimeHour = ((ReadValueamp。0x0F)。 TimeDay = ((ReadValueamp。0x0F)。 TimeMonth = ((ReadValueamp。0x0F)。039。039。A39。A39。039。039。A39。A39。{ if(shan_m2) { TimeTimeStr[0] = TimeMinute/10 + 39。 TimeTimeStr[1] = TimeMinute%10 + 39。 } else { TimeTimeStr[0] = 39。 TimeTimeStr[1] = 39。 } if(shan_s2) { TimeTimeStr[2] = TimeSecond/10 + 39。 TimeTimeStr[3] = TimeSecond%10 + 39。 } else { TimeTimeStr[2] = 39。 TimeTimeStr[3] = 39。 } }void naoToStr(void) //將鬧鐘時(shí),分?jǐn)?shù)據(jù)轉(zhuǎn)換成顯示字符放到數(shù)組 TimeStr[]。039。039。A39。A39。039。039。A39。A39。 if(Secondamp。 //寫(xiě)入允許 Write1302(0x8c,0x09)。 //5月 Write1302(0x86,0x24)。 //12時(shí) Write1302(0x82,0x00)。 //0秒 Write1302(0x8e,0x80)。 if(Up==0) { delay(8)。 //讀取日數(shù) temp=temp+1。 H_toBCD()。 break。 //讀取月數(shù) temp=temp+1。 H_toBCD()。 break。 } while(Up==0)。 if(Up==0) { delay(8)。 //讀取秒數(shù) temp=temp+1。 H_toBCD()。 break。 //讀取分鐘 temp=temp+1。 H_toBCD()。 break。 } while(Up==0)。 if(Set==0) { delay(8)。 //Setkey按一次,count就加1 done=1。 }}void keydonedate()//日期按鍵功能{ uchar Second。 //寫(xiě)入允許 temp=Read1302(0x80)。 //時(shí)鐘停止 Write1302(0x8e,0x80)。 //時(shí)鐘停止標(biāo)志 } Setkey()。 if(up_stop==1) { Write1302(0x8e,0x00)。 //寫(xiě)入新的日數(shù) Write1302(0x8e,0x80)。 } shan_day++。 }break。 Upkeydate()。 //寫(xiě)入允許 Write1302(0x88,temp)。 //禁止寫(xiě)入 up_stop=0。 if(shan_month3) shan_month=0。 case 3: shan_month=0。 Write1302(0x8e,0x00)。0x7f)。 //禁止寫(xiě)入 done=0。 //開(kāi)啟中斷,標(biāo)志位置0并退出 default:count=0。break。 if(stop==0) //關(guān)閉時(shí)鐘,停止計(jì)時(shí) { Write1302(0x8e,0x00)。 Write1302(0x80,temp|0x80)。 //禁止寫(xiě)入 stop=1。 //掃描模式切換按鍵 switch(count) { case 1: //調(diào)整秒 { Upkeytime()。 //寫(xiě)入允許 Write1302(0x80,temp)。 //禁止寫(xiě)入 up_stop=0。 if(shan_s3) shan_s=0。 case 2: //調(diào)整分 { shan_s=0。 if(up_stop==1) { Write1302(0x8e,0x00)。 //寫(xiě)入新的分?jǐn)?shù) Write1302(0x8e,0x80)。 } shan_m++。 }break。 // 跳出調(diào)整模式,返回默認(rèn)顯示狀態(tài) Second=Read1302(DS1302_SECOND)。 //寫(xiě)入允許 Write1302(0x80,Secondamp。 Write1302(0x8E,0x80)。 break。done=0。 }}//**********************鬧鐘部分*********************void Upkeynao()//鬧鐘加一按鍵{ Up=1。 switch(press) { case 1: temp=naom。 up_stop=1。 if(temp0x59) temp=0。 case 2: temp=naoh。 up_stop=1。 if(temp0x23) temp=0。 default:break。 }}void n_Setkey() //鬧鐘模式選擇按鍵{ sao_z=1。 press=press+1。 //進(jìn)入調(diào)整模式 naoToStr()。 while(sao_z==0)。 //掃描模式切換按鍵 switch(press) { case 1: { Upkeynao()。 up_stop=0。 if(shan_naom3) shan_naom=0。 Print(naoStr)。 case 2: { shan_naom=0。 if(up_stop==1) { naoh=temp。 } shan_naoh++。 naoToStr()。 }break。 done=0。 default:press=0。break。amp。amp。amp。 //響鈴 } else XiangLing=1。 while(done==1) { keydonenao()。Time1302)。Time1302)
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1