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

正文內容

基于單片機的實時時鐘系統(tǒng)設計c語言編程、含pcb圖-免費閱讀

2025-06-14 21:51 上一頁面

下一頁面
  

【正文】 CLKwei=1。 CLKwei=0。 delay(5)。 CLKduan=0。 P1=duantable[minutes0]。 CLKduan=1。 CLKduan=0。 //秒鐘的十位求模 seconds0=second%10。amp。 case 2: if(flag_runnian==1) { if(century_set1) century_set=29。 case 4: 39 if(century_set1) century_set=30。 case 7: if(century_set1) century_set=31。 if(SW3==0) { while(SW3==0) display(read_12C887(day_of_month),read_12C887(month),read_12C887(year))。 case 11: if(century_set30) century_set=1。 case 12: if(century_set31) 36 century_set=1。 case 5: if(century_set31) century_set=1。amp。 34 SW2=1。 } } if(SW3==0) { delay(5)。 SW1=1。 else 32 flag_runnian=0。 write_12C887(year,century_set)。 if(SW2==0) { while(SW2==0) display(read_12C887(day_of_month),read_12C887(month),read_12C887(year))。 bit flag_runnian。在閏年的日期調整中 1 月、 3 月、 5 月、 7 月、 8 月、 10 月、 12 月按 31 天計算,如果 SW2被按下時則當前月的日期加 1,當加到 31 后 日期置 1。 } } } 年、月、日調整子程序設計 在正常的走時狀態(tài)下,連續(xù) 三 次按下 SW1 按鈕,將進入 年 、月、日 調整狀態(tài)。amp。SW1)==0) display(read_12C887(seconds_alarm),read_12C887(minutes_alarm),read_12C887(hours_alarm))。 if(alarmset0) alarmset=59。(SW1==0))!=1) { if(SW2==0) { delay(5)。 while((SW2amp。 if(SW3==0) { while(SW3==0) display(read_12C887(seconds_alarm),read_12C887(minutes_alarm),read_12C887(hours_alarm))。 while(((SW2==0)amp。 } SW1=1。 write_12C887(hours_alarm,alarmset)。//讀取當前小時的值 SW2=1。在分鐘調整過程中,如果 SW2 按鈕每按下一次時將對分鐘當前值 加 1 次,當加到 60 時分鐘清零,小時加 1;如果 SW3 按鈕每被按下一次時將對分鐘當前值減 1 次,當減到 0 后再按一次 SW3 時分鐘賦值到 59。 while((SW2amp。 write_12C887(seconds,hours_timeset)。 SW2=1。 } } display(read_12C887(seconds),read_12C887(minutes),read_12C887(hours))。 hours_timeset++。SW1)==0) display(read_12C887(seconds),read_12C887(minutes),read_12C887(hours))。//小時值減 1 if(hours_timeset0) hours_timeset=23。 if(SW2==0) { while(SW2==0) display(read_12C887(seconds),read_12C887(minutes),read_12C887(hours))。 if(flag_set_time==1) { write_12C887(REGISTER_B,0XA6)。在小時調整過程中,如果 SW2 按鈕每按下一次時將對小時 當前值 加 1 次,當加到 24 時小時清零;如果 SW3 按鈕每被按下一次時將對小時當前值減 1 次,當減到 0 后再按一次 SW3 時 小時 賦值到 23。 if(i==1) { flag_set_time=1。 } 時間調整,鬧鐘調整,年、月、日調整 切換 子程序設計 當按下按鈕 SW1 時 ,中間標志位 i 會自動進行加操作。 AS=0。 AS=1。 DS=1。當調整結束后又回到新的走時狀態(tài)。該編程器主要由 MAX232 電平轉換芯片和單片機最小系統(tǒng)構成, 利用 RS232 接口實現(xiàn)單片機和計算機通信,并由單片機專用燒錄軟件將程序寫在單片機中。低電平有效,當 1 腳是低電平時,輸出腳 2( 1Q)、 5( 2Q)、 6( 3Q)、 9( 4Q)、 12( 5Q)、 15( 6Q)、 16( 7Q)、 19( 8Q)。每個更新周期后此位都會置 1,當 UIE 位位置 1 時, UF 若為 1 就會引起 IRQF 置 1,將驅動 /IRQ 引腳為低電平,申請中斷。 寄存器 C 字節(jié)內容如下。 SQWE:方波使能位,可讀寫,復位時清除此位。為 0 時,不處于設置狀態(tài),芯片進行正常時間數(shù)據(jù)更新;為 1 時,抑制數(shù)據(jù)更新,可以通過程序設定 時間和日歷信息。 MSB LSB UIP: 更新標志位。 SQW( 23 腳):方波信號輸出腳。 NC (2,3,16,20,21,22 腳 ):懸空腳。 低功耗,能夠掉電工作幾十年 。就連人們常帶的電子手表也要定期更換 電池,否則將停止工作。該時鐘走時準確,并且在掉電的狀態(tài)下最少也能準時間工作 10 年,它不 但 具有走時準確的功能,而且還能夠準確的顯示年,月,日,星期 。 要求: 確定 單片機 的 I/O 口 ,選擇 單片機 的型號,選擇外圍設備,所須電源參數(shù)。 單片機 外圍 I/O 接線圖 設計控制程序 1)、選擇 STC89C52 單片機 設計 2)、 選擇 DS12CR887 作為時鐘源 3)、選擇 74LS273 作為地址鎖存器 4)、選擇 TDA2822 作為鬧鐘功率放大器 程序與說明 畢業(yè)設計 (論文 )進度計劃表 日 期 工 作 內 容 執(zhí) 行 情 況 指導教師 簽 字 2020 年 4 月 20 日 - 2020年 4月 30日 認識課題:圍繞要 求掌握的內容,查閱書籍、資料確定設計方案。 在本設計中充分利用了單片機內部資源,涉及到了鍵盤控制、數(shù)碼管顯示、中斷 系統(tǒng) 、定時 /計數(shù)器、 串口通信 等,這既是對所學知識的總結 也是對自己動手能力的最好鍛煉。 然而又有沒有人想過在更換電池 上所話費金錢的多少呢?我們就以電子鐘一個月更換一次電池來計算吧,換一次電池大概需要 3 元 錢,一年下來將要花費 36 元 錢,十年下來將要花費 360 元,還不算電池漲價的情況與時鐘維修的錢! 而本次設計的實時時鐘不但時間是連續(xù)的,而且在掉電的情況下也能工作幾十年,并且制作成本也才 20 來塊錢。 工作 無噪音,不影響他人休息 。 AD0~AD7(4~11 腳 ):地址 /地址數(shù)據(jù)復用總線引腳。可通過設置寄存器位 SQWE 關斷此信號輸出,此信號的輸出頻率也可通過對芯片內部的寄存器編程予以改變。 為只讀位且不受復位操作的影響,為 1 時,表示即將發(fā)生的數(shù)據(jù)更新;為 0 時,表示至少 244US 不會更新數(shù)據(jù)。 PIE:周期性中斷使能位,可讀寫,復位時清除此位。 為 0 時, SQW 引腳保持低電平;為 1 時, SQW 引腳輸出方波信號,其頻率由 RS3~RS0 決定。 MSB LSB IQRF:中斷申請標志位。此位由復位操作或讀寄存器 C 操作清除。 全部輸出 0,即全部復位。由于 STC89C52 單片機在寫程序進去時,具有冷啟動過程,所以在編程之前必去將主電源復位一次,本電路中復位按鈕為 S1。 按鍵調時控制電路如下所示: 14 鬧鐘電路 該電路主要由 TDA2822 功率放大模塊將單片機發(fā)出的鬧鐘信號進行放大,進而推動一個 3W 喇叭。 RW=1。 CS=1。 DS=0。當 i 等于 1 時,時間調整標志位置 1,進入時間調整狀態(tài)。//將時間 調整 標志位置 1 } else if(i==2) { flag_set_time=0。小時調整完畢后 將所調整好的小時值寫入小時寄存器中 ,然后又將寫入 到 小時寄存器的數(shù)值從 DS12CR887 中讀取出來 并 在顯示屏上 顯示出來 。 flag_set_time=0。 hours_timeset++。 write_12C887(hours,hours_timeset)。 if(timeset==1) { hours_timeset=read_12C887(minutes)。 if(hours_timeset=60) hours_timeset=0。 } timeset=2。 SW1=1。 } } if(SW3==0) { delay(5)。amp。分鐘調整完畢后將所調整好的分鐘值寫入分鐘寄存器中,然后又將寫入到分鐘寄存器的數(shù)值從DS12CR887 中讀取出來并在顯示屏上顯示出來。 SW1=1。//將調整后的小時的值寫入小時寄存器 23 } } if(SW3==0) { delay(5)。 SW2=1。amp。 alarmset。amp。 if(SW2==0) { while(SW2==0) display(read_12C887(seconds_alarm),read_12C887(minutes_alarm),read_12C887(hours_alarm))。 write_12C887(seconds_alarm,alarmset)。 28 } } } 年、月、日 顯示 子程序設計 在時間顯示的情況下,如過 SW2 與 SW3 按鈕都被按下時,則進入年、月、日顯示狀態(tài)。SW3)==0) display(read_12C887(seconds_alarm),read_12C887(minutes_alarm),read_12C887(hours_alarm))。首先進行 年份 調整,然后進行 月份 調整,最后進行 日期 調整。 如果 SW3 按鈕每被按下一次時將對 日期 當前值減 1 次,當減到 1 后再按一次 SW3 時 日期 賦值到 31。 if(flag_set_century==1) 30 { flag_set_century=0。 century_set++。//將調整后的年份寫入年寄存器 } } display(read_12C887(day_of_month)
點擊復制文檔內容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1