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

正文內(nèi)容

基于單片機(jī)的實時時鐘系統(tǒng)設(shè)計畢業(yè)設(shè)計論文c語言編程、含pcb圖(編輯修改稿)

2024-09-02 08:23 本頁面
 

【文章內(nèi)容簡介】 間標(biāo)志位 i 會自動進(jìn)行加操作。當(dāng) i 等于 1 時,時間調(diào)整標(biāo)志位置 1,進(jìn)入時間調(diào)整狀態(tài)。當(dāng) i 等于 2 時,鬧鐘調(diào)整標(biāo)志位置 1,進(jìn)入鬧鐘調(diào)整狀態(tài)。當(dāng)i 等于 3 時,年、月、日調(diào)整標(biāo)志位置 1,進(jìn)入年、月、日調(diào)整狀態(tài)。1,時間調(diào)整,鬧鐘調(diào)整,年、月、日調(diào)整卻換子程序如下: void gongneng_quehuan() //功能卻換子程序{if(SW1==0){delay(5)。if(SW1==0){while(SW1==0)。display(read_12C887(seconds),read_12C887(minutes),read_12C887(hours))。i++。if(i==1){flag_set_time=1。//將時間調(diào)整標(biāo)志位置 1}else if(i==2){flag_set_time=0。flag_set_alarm=1。//將鬧鐘調(diào)整標(biāo)志位置 1}else if(i==3){i=0。flag_set_century=1。 //將年、月、日調(diào)整標(biāo)志位置 1}}}} 時間調(diào)整子程序設(shè)計 由于本人想向單片機(jī)更高層次編程,本設(shè)計只用三個按鈕根據(jù)不同的組合狀態(tài)進(jìn)行時間,鬧鐘,年,月,日的調(diào)整。所以程序相對來說是比較復(fù)雜的。具體時間調(diào)整過程是這樣的,首先進(jìn)行小時調(diào)整,然后進(jìn)行分鐘調(diào)整,最后進(jìn)行秒鐘調(diào)整。在小時調(diào)整過程中,如果 SW2 按鈕每按下一次時將對小時當(dāng)前值加 1 次,當(dāng)加到 24 時小時清零;如果 SW3 按鈕每被按下一次時將對小時當(dāng)前值減 1 次,當(dāng)減到 0 后再按一次 SW3 時小時賦值到 23。小時調(diào)整完畢后將所調(diào)整好的小時值寫入小時寄存器中,然后又將寫入到小時寄存器的數(shù)值從DS12CR887 中讀取出來并在顯示屏上顯示出來。在分鐘調(diào)整過程中,如果SW2 按鈕每按下一次時將對分鐘當(dāng)前值加 1 次,當(dāng)加到 60 時分鐘清零,小時加 1;如果 SW3 按鈕每被按下一次時將對分鐘當(dāng)前值減 1 次,當(dāng)減到 0 后再按一次 SW3 時分鐘賦值到 59。分鐘調(diào)整完畢后將所調(diào)整好的分鐘值寫入分鐘寄存器中,然后又將寫入到分鐘寄存器的數(shù)值從 DS12CR887 中讀取出來并在顯示屏上顯示出來。在秒鐘調(diào)整過程中,如果 SW2 按鈕每按下一次時將對秒鐘當(dāng)前值加 1 次,當(dāng)加到 60 時秒鐘清零,分鐘加 1;如果 SW3 按鈕每被按下一次時將對秒鐘當(dāng)前值減 1 次,當(dāng)減到 0 后再按一次 SW3 時秒鐘賦值到 59。秒鐘調(diào)整完畢后將所調(diào)整好的秒鐘值寫入秒鐘寄存器中,然后又將寫入到秒鐘寄存器的數(shù)值從 DS12CR887 中讀取出來并在顯示屏上顯示出來。當(dāng)小時、分鐘、秒鐘都調(diào)整完畢后按下確認(rèn)鍵(SW1 和 SW2 都被按下時)時間調(diào)整完成,并將當(dāng)前所調(diào)整出來的數(shù)值在顯示屏上面顯示出來,進(jìn)入時間顯示狀態(tài)。 1,時間調(diào)整子程序如下: void shijian_tiaozheng(){char hours_timeset,timeset=0。if(flag_set_time==1){write_12C887(REGISTER_B,0XA6)。flag_set_time=0。if(timeset==0){hours_timeset=read_12C887(hours)。//讀取當(dāng)前小時的值SW2=1。SW1=1。while(((SW2==0)amp。amp。(SW1==0))!=1)//如果確認(rèn)鍵未按下,一直處于小時調(diào)整狀態(tài){if(SW2==0){delay(5)。if(SW2==0){while(SW2==0)display(read_12C887(seconds),read_12C887(minutes),read_12C887(hours))。hours_timeset++。//小時值加 1if(hours_timeset=24)hours_timeset=0。write_12C887(hours,hours_timeset)。//將調(diào)整后的小時的值寫入小時寄存器// LED2=1。}}if(SW3==0){delay(5)。if(SW3==0){while(SW3==0)display(read_12C887(seconds),read_12C887(minutes),read_12C887(hours))。hours_timeset。//小時值減 1if(hours_timeset0)hours_timeset=23。write_12C887(hours,hours_timeset)。//將調(diào)整后的小時的值寫入小時寄存器}}display(read_12C887(seconds),read_12C887(minutes),read_12C887(hours))。}timeset=1。}SW1=1。SW2=1。while((SW2amp。amp。SW1)==0)display(read_12C887(seconds),read_12C887(minutes),read_12C887(hours))。if(timeset==1){hours_timeset=read_12C887(minutes)。SW2=1。SW1=1。while(((SW2==0)amp。amp。(SW1==0))!=1){if(SW2==0){delay(5)。if(SW2==0){while(SW2==0)display(read_12C887(seconds),read_12C887(minutes),read_12C887(hours))。hours_timeset++。if(hours_timeset=60)hours_timeset=0。write_12C887(minutes,hours_timeset)。}}if(SW3==0){delay(5)。if(SW3==0){while(SW3==0)display(read_12C887(seconds),read_12C887(minutes),read_12C887(hours))。hours_timeset。if(hours_timeset0)hours_timeset=59。write_12C887(minutes,hours_timeset)。}}display(read_12C887(seconds),read_12C887(minutes),read_12C887(hours))。}timeset=2。}SW1=1。SW2=1。while((SW2amp。amp。SW1)==0)display(read_12C887(seconds),read_12C887(minutes),read_12C887(hours))。if(timeset==2){hours_timeset=read_12C887(seconds)。SW2=1。SW1=1。while(((SW2==0)amp。amp。(SW1==0))!=1){if(SW2==0){delay(5)。if(SW2==0){while(SW2==0)display(read_12C887(seconds),read_12C887(minutes),read_12C887(hours))。hours_timeset++。if(hours_timeset=60)hours_timeset=0。write_12C887(seconds,hours_timeset)。}}if(SW3==0){delay(5)。if(SW3==0){while(SW3==0)display(read_12C887(seconds),read_12C887(minutes),read_12C887(hours))。hours_timeset。if(hours_timeset0)hours_timeset=59。write_12C887(seconds,hours_timeset)。}}display(read_12C887(seconds),read_12C887(minutes),read_12C887(hours))。}timeset=0。while((SW2amp。amp。SW1)==0)display(read_12C887(seconds),read_12C887(minutes),read_12C887(hours))。write_12C887(REGISTER_B,0X26)。}}} 鬧鐘定時調(diào)整子程序設(shè)計在正常的走時狀態(tài)下,連續(xù)兩次按下 SW1 按鈕,將進(jìn)入鬧鐘調(diào)整狀態(tài)。首先進(jìn)行小時調(diào)整,然后進(jìn)行分鐘調(diào)整,最后進(jìn)行秒鐘調(diào)整。在小時調(diào)整過程中,如果 SW2 按鈕每按下一次時將對小時當(dāng)前值加 1 次,當(dāng)加到 24 時小時清零;如果 SW3 按鈕每被按下一次時將對小時當(dāng)前值減 1 次,當(dāng)減到 0 后再按一次SW3 時小時賦值到 23。小時調(diào)整完畢后將所調(diào)整好的小時值寫入小時寄存器中,然后又將寫入到小時寄存器的數(shù)值從 DS12CR887 中讀取出來并在顯示屏上顯示出來。在分鐘調(diào)整過程中,如果 SW2 按鈕每按下一次時將對分鐘當(dāng)前值加 1次,當(dāng)加到 60 時分鐘清零,小時加 1;如果 SW3 按鈕每被按下一次時將對分鐘當(dāng)前值減 1 次,當(dāng)減到 0 后再按一次 SW3 時分鐘賦值到 59。分鐘調(diào)整完畢后將所調(diào)整好的分鐘值寫入分鐘寄存器中,然后又將寫入到分鐘寄存器的數(shù)值從 DS12CR887 中讀取出來并在顯示屏上顯示出來。在秒鐘調(diào)整過程中,如果SW2 按鈕每按下一次時將對秒鐘當(dāng)前值加 1 次,當(dāng)加到 60 時秒鐘清零,分鐘加 1;如果 SW3 按鈕每被按下一次時將對秒鐘當(dāng)前值減 1 次,當(dāng)減到 0 后再按一次 SW3 時秒鐘賦值到 59。秒鐘調(diào)整完畢后將所調(diào)整好的秒鐘值寫入秒鐘寄存器中,然后又將寫入到秒鐘寄存器的數(shù)值從 DS12CR887 中讀取出來并在顯示屏上顯示出來。當(dāng)小時、分鐘、秒鐘都調(diào)整完畢后按下確認(rèn)鍵(SW1 和 SW2都被按下時)時間調(diào)整完成,并將當(dāng)前所調(diào)整出來的數(shù)值存入鬧鐘寄存器 C 中為以后的鬧鐘中斷程序服務(wù),然后進(jìn)入時間顯示狀態(tài)。1,時間調(diào)整子程序如下所示:void naozhong_tiaozheng(){char alarmset,alarmset_flag=0。if(flag_set_alarm==1){flag_set_alarm=0。if(alarmset_flag==0){alarmset=read_12C887(hours_alarm)。//讀取當(dāng)前小時的值SW2=1。SW1=1。while(((SW2==0)amp。amp。(SW1==0))!=1)//如果確認(rèn)鍵未按下,一直處于小時調(diào)整狀態(tài){if(SW2==0){delay(5)。if(SW2==0){while(SW2==0)display(read_12C887(seconds_alarm),read_12C887(minutes_alarm),read_12C887(hours_alarm))。alarmset++。//小時值加 1if(alarmset=24)alarmset=0。write_12C887(hours_alarm,alarmset)。//將調(diào)整后的小
點擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1