![帶校時和音樂報時功能實時時鐘的設計與實現(xiàn)_第1頁](http://file4.renrendoc.com/view/eb86332450cde5d05d2f3941382ab628/eb86332450cde5d05d2f3941382ab6281.gif)
![帶校時和音樂報時功能實時時鐘的設計與實現(xiàn)_第2頁](http://file4.renrendoc.com/view/eb86332450cde5d05d2f3941382ab628/eb86332450cde5d05d2f3941382ab6282.gif)
![帶校時和音樂報時功能實時時鐘的設計與實現(xiàn)_第3頁](http://file4.renrendoc.com/view/eb86332450cde5d05d2f3941382ab628/eb86332450cde5d05d2f3941382ab6283.gif)
![帶校時和音樂報時功能實時時鐘的設計與實現(xiàn)_第4頁](http://file4.renrendoc.com/view/eb86332450cde5d05d2f3941382ab628/eb86332450cde5d05d2f3941382ab6284.gif)
![帶校時和音樂報時功能實時時鐘的設計與實現(xiàn)_第5頁](http://file4.renrendoc.com/view/eb86332450cde5d05d2f3941382ab628/eb86332450cde5d05d2f3941382ab6285.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、帶校時和音樂報時功能實時時鐘的設計與實現(xiàn)1)硬件電路硬件電路如圖11-2所示,PA 口為LED數(shù)碼管的8段碼輸出,PC0-PC5共6個I/O 口, 作為控制時間顯示的6個LED數(shù)碼管的位掃描線。PC6、PC7分別接連接兩個按鍵,用于設 置時鐘的工作狀態(tài)和校時時間的設置。圖中音樂報時電路部分(未畫出)與第8章中的圖 8-20相同,由端口 PD5輸出產生音樂的脈沖信號,經三極管驅動蜂鳴器發(fā)聲。(ADCO)PAO (ADCl)PAl (ADC2)PA2 (ADC3)PA3 (ADC4)PA4 (ADC5)PA5 )(ADC6)PA6 (ADC7)PA7 AREF GND AVcc (TOSC2)PC
2、7 (TOSC1)PC6 (TDI)PC5 (TDO)PC4 (TMS)PC3 (TCK)PC2)(SDA)PC1 ) (SCL)PCO (OC2)PD7圖11-2帶校時功能的實時時鐘電路圖3938373635343332311329282726 25 j24 Xj23 722 721 70.0.0.0.0.0.LlPlod DPlod DPlod OPlod 心 P;Cjd DPlodATmegal6定義兩個按鍵的功能為:K1用于設置轉換時鐘工作狀態(tài),K2用于設置校時時間(加1 操作)。時鐘工作狀態(tài)轉換圖如圖11-3所示,具體每個狀態(tài)的定義和功能如下:/ 平時時鐘工作在時鐘顯示狀態(tài),每按一下
3、K1鍵,時鐘依次進入校時時間的設置狀 態(tài)。/ 時鐘由“時鐘顯示”進入“秒低位設置”時,校時時間的初始值為轉換時刻的時鐘 值。/ 時鐘由“時高位設置”回到(K1作用下)“時鐘顯示”時,時鐘時間由校時時間代 替,確認完成校時的設置。/ 當時鐘處在時間設置的6個狀態(tài)時,每按一次K2鍵,相應的位上的數(shù)值加1,并 且要能根據具體所在的位置自動做相應的調整。如秒高位的數(shù)字只能在0-5之間, 而時高位的數(shù)值要限制在0、1、2 (時個位數(shù)小于3時),或時高位的數(shù)值要限制 在0、1(時個位數(shù)大于3時)。/ 當時鐘處在時間設置的6個狀態(tài)時,在20秒內無任何鍵按下,系統(tǒng)自動返回“時 間顯示”狀態(tài),設置的時間無效,不
4、改變原時鐘的計時時間。/ 在效時時間設置的操作過程中,時鐘不停止其前時間的計時過程,除非當時鐘由“時 高位設置”回到(K1作用下)“時鐘顯示”時,時鐘的計時時間由確認的校時時間 代替而改變。/ 時鐘顯示亮度均勻、無閃爍。當設置相應時間位時,該位應閃爍提示。圖11-3時鐘工作狀態(tài)轉換圖2)軟件設計本示例的程序是在前幾章所給例子的綜合應用基礎上實現(xiàn)的,代碼中也給出了相應的解 釋,因此本節(jié)中不再做更多的說明,留給讀者去自行分析。希望能在真正掌握了前幾章內容 的基礎上,慢慢的去品味和體會,掌握如何更好的綜合使用AVR硬件的功能,以及程序設計 的方法與技巧。File name:demo_11_4.cCh
5、ip type:ATmega16Program type:ApplicationClock frequency:1.000000 MHzMemory model: SmallExternal SRAM size: 0Data Stack size:256#include flash char led_710 = 0 x3F,0 x06,0 x5B,0 x4F,0 x66,0 x6D,0 x7D,0 x07,0 x7F,0 x6F;flash char position6 = 0 xfe,0 xfd,0 xfb,0 xf7,0 xef,0 xdf;flash unsigned int t9 =
6、0,956,865,759,716,638,568,506,470;flash unsigned char d9 = 0,105,116,132,140,157,176,198,209;#define Max_note 32flash unsigned char musicMax_note=5,2,8,2,5,2,4,2,3,2,2,2,1,4,1,2,1,2,2,2,3,2,3,2,1,2,3,2,4,2,5,8;unsigned char note_n;unsigned int int_n;bit play_on;char time3,time_set3;/時、分、秒計數(shù)和設置單元char
7、 dis_buff6;/顯示緩沖區(qū),存放要顯示的6個字符的段碼值char time_counter,key_stime_counter; / 時間計數(shù)單元,char clock_state = 6,return_time;bit point_on,set_on,time_1s_ok,key_stime_ok;void display(void)/ 6位LED數(shù)管動態(tài)掃描函數(shù)static char posit=0;PORTC = 0 xff;PORTA = led_7dis_buffposit;if (set_on & (posit=clock_state) PORTA= 0 x00;/ 校時閃
8、爍if (point_on & (posit=2|posit=4) PORTA |= 0 x80;/ 秒閃爍PORTC = positionposit; if (+posit =6 ) posit = 0; / Timer 0比較匹配中斷服務,2ms定時interrupt TIM0_COMP void timer0_comp_isr(void) display();/ LED 掃描顯示if (+key_stime_counter =5) key_stime_counter = 0; key_stime_ok = 1;/ 10ms 到if (!(+time_counter % 25) set_o
9、n = !set_on; / 設置校時閃爍標志 if (time_counter = 100) time_counter = 0; time_1s_ok = 1;/ 1s 到 / T/C1比較匹配A中斷服務 interrupt TIM1_COMPA void timer1_compa_isr(void) if (!play_on) note_n = 0; int_n = 1; play_on = 1; else if (-int_n = 0) TCCR1B = 0 x08; if (note_n Max_note) OCR1A = tmusicnote_n; int_n = dmusicnot
10、e_n; note_n+; int_n = int_n * musicnote_n; note_n+; TCCR1B = 0 x09;elseplay_on = 0;void time_to_disbuffer(char *time)/時鐘時間送顯示緩沖區(qū)函數(shù)char i,j=0;for (i=0;i= 60)time0 = 0;(!play_on) TCCR1B =(+time1 = 60)/秒閃爍標志/秒加1,以下為時間調整ifif0 x09;/ 1分鐘到,播放音樂time1 = 0;if (+time2 = 24) time2 = 0;if (+return_time = 20) & (
11、clock_state != 6) clock_state = 6;if (clock_state = 6) time_to_disbuffer(time);if (key_stime_ok)/ 10ms 到,鍵處理key_stime_ok = 0;/調用按鍵接口程序/確認有鍵按下key_temp = read_key();if (key_temp)return_time = 0;if (key_temp = key_k1) / K1 鍵按下,狀態(tài)轉換if (+clock_state = 7) clock_state = 0;if (clock_state = 0)for (i=0;i=2;i+) time_seti = 0;time_to_disbuffer(time_
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 6 我們神圣的國土 第三課時 (說課稿)-部編版道德與法治五年級上冊
- 7-1《短歌行》說課稿 2024-2025學年統(tǒng)編版高中語文必修上冊
- 2025年企業(yè)招標承包經營合同
- 《7 剪紙藝術》(說課稿)-2023-2024學年四年級下冊綜合實踐活動粵教版
- Module 8 Unit 1 Were going to visit Hainan.(說課稿)-2024-2025學年外研版(三起)英語四年級上冊
- Unit 2 My week Period 4 Get ready for the new school year(說課稿)-2024-2025學年人教PEP版英語五年級上冊
- 19海濱小城 (說課稿)-2024-2025學年三年級上冊語文統(tǒng)編版
- 2025農副產品買賣合同書模板(合同版本)
- 2023八年級語文上冊 第五單元 口語交際 復述與轉述配套說課稿 新人教版
- 2024年春八年級歷史下冊 第10課 社會主義民主與法制的加強說課稿1(pdf) 川教版
- 傷殘撫恤管理辦法實施細則
- 提升模組良率-六西格瑪
- DL-T+5196-2016火力發(fā)電廠石灰石-石膏濕法煙氣脫硫系統(tǒng)設計規(guī)程
- 2024-2030年中國產教融合行業(yè)市場運營態(tài)勢及發(fā)展前景研判報告
- 2024年微生物檢測試劑行業(yè)商業(yè)計劃書
- 河南開封介紹課件
- 通信設備售后服務方案
- 高中英語選擇性必修一單詞表
- 初中生物校本課程綱要
- 物業(yè)公司介紹
- 賣花生混聲合唱簡譜
評論
0/150
提交評論