版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、 陜西理工學院課程設計1. 基于單片機音樂倒數(shù)定時器的設計報告2. 【摘要】計時器在單片機模塊中是比較常見的模塊,計時器是一種用數(shù)字電路技術(shù)實現(xiàn)的計時裝置,與機械師中相比具有更高的準確性與直觀性,且無機械裝置,具有更長的使用壽命,因此得到了廣泛的使用。本設計采用AT89C51單片機對定時器的設計來實現(xiàn)一個簡單的多功能的音樂倒計時報警器,通過三個按鍵可設定任意時間的倒計時報警器來滿足用戶的簡單要求,如燒開水,煮面等簡單問題。3. 【關(guān)鍵詞】定時計數(shù)器;音樂代碼;1602液晶顯示第16頁共15頁4. 目錄5. 引言16. 一、設計要求27. 二、設計目的28. 三、設計的具體實現(xiàn)28.1. 1系統(tǒng)
2、概述28.1.1. 1.1 總體方案論證28.1.2. 1.2 單片機選擇方案38.2. 2單元電路設計48.2.1. 2.1控制電路68.2.2. 2.2控制程序88.3. 3軟件程設計和調(diào)試78.3.1. 3.1延時時間的計算78.3.2. 3.2工作方式設計88.3.3. 3.3有定時器產(chǎn)生各種頻率的聲音88.3.4. 3.4程序說明89. 四、結(jié)論和展望1410. 五、心得和體會1411. 六、參考文獻1512. 引言12.1. 隨著電子技術(shù)的飛速發(fā)展,各類分立電子元件及其所構(gòu)成的相關(guān)功能單元,已逐步被功能更強大、性能更穩(wěn)定、使用更方便的集成芯片所取代。由集成芯片和一些外圍電路構(gòu)成的各
3、種自動控制、自動報警、自動顯示電路遍及各種電子產(chǎn)品和設備。數(shù)字系統(tǒng)和數(shù)字設備已廣泛應用于各個領(lǐng)域,更新?lián)Q代速度可謂日新月異。12.2. 計時器在單片機模塊中是比較常見的模塊,計時器是一種用數(shù)字電路技術(shù)實現(xiàn)的計時裝置,與機械師中相比具有更高的準確性與直觀性,且無機械裝置,具有更長的使用壽命,因此得到了廣泛的使用,本次設計的任意時間倒計時器,是基于單片機的基礎(chǔ),日常生活中相關(guān)的設備是很多的,諸如定時報警、報時自動打鈴、時間程序自動控制、定時廣播、自動閉路燈等都是以計時器為基礎(chǔ)的。12.3. 通過對基于單片機控制的倒數(shù)計時器的設計過程中,讓自己對單片機有進一步的了解,激發(fā)興趣,做到主動探索和學習。1
4、3. 設計要求13.1. 利用單片機結(jié)合LCD顯示器設計一個倒數(shù)計時器,可以放在家中使用,例如煮方便面、煮開水或小睡片刻等,做一小段時間計時。當?shù)箶?shù)計時為0時,則發(fā)出一段音樂,通知倒數(shù)終了,該做重要的事情了。13.2. 具體要求:13.3. 文字型LCD(16*2)顯示目前倒數(shù)的時間;顯示格式為“COUNT DOWN時時: 分分:秒秒”;具有3個按鍵操作來設置現(xiàn)在想要倒數(shù)的時間;一旦按鍵后則開始倒數(shù)計時,當計時為零則發(fā)出一陣音樂聲響,程序開始執(zhí)行,顯示器顯示“0009”,按下操作鍵S1S3動作如下:操作鍵S1,可調(diào)整倒數(shù)時間時分秒;操作鍵S2,設置倒數(shù)計時時間為上升,顯示“增加”;操作鍵S3,
5、設置倒數(shù)計時時間為下降,顯示“減少”; RESET按下后顯示如下:13.3.1. COUNT DOWN 13.3.2. 00:00:09ß倒數(shù)時間14. 操作鍵S2:增加倒數(shù)計時,操作鍵S3,減少倒數(shù)計時,操作鍵S1按第四下設置完成。一旦按鍵后則開始倒數(shù)計時,當計時為0時則發(fā)出一段音樂。 15. 設計目的15.1. 通過該設計能提高學生分析解決問題的能力。15.2. 了解模擬電路及數(shù)字電路的相關(guān)知識。15.3. 學習單片機定時器時間計時處理、按鍵掃描、LCD顯示及音樂旋律演奏的設計方法。16. 設計的具體實現(xiàn)16.1.1. 系統(tǒng)概述16.2. 總體方案論證16.3. 要實現(xiàn)音樂倒數(shù)定
6、時器可以用兩種方案實現(xiàn)。17. 方案一:利用PROG-110可編程控制器17.1. PROG-110 可編程器,是一種用數(shù)字簡碼控制的產(chǎn)品,它的特點是:自帶一套用于輸入數(shù)碼的按鍵和顯示程序的數(shù)碼管,只要我們現(xiàn)場輸入一列2位數(shù)碼,編制的程序即能完成,即編,即用。每一種數(shù)字簡碼控制器,它都自帶一套系統(tǒng)軟件,每一套系統(tǒng)軟件都有一套相對應的指令表,配套的指令表表明,只要輸入什么樣的數(shù),程序?qū)⑷プ鍪裁词拢斎胍涣袛?shù),它就會按次序去完成你要求它做的所有的事。17.2. 但是首先PROG-110模塊總共只有6個I/O端口,這就必須擴展模塊端口,用兩部以上模塊串聯(lián),但花錢要多;其次是程序過長,PROG-110
7、模塊的E2PROM存儲器24C01只可輸入128步程序;第三是受PROG-110模塊跳轉(zhuǎn)指令步數(shù)的限制。18. 方案二:利用單片機、LCD顯示器和壓電喇叭18.1. 單片機具有性能高、速度快、體積小、價格低、穩(wěn)定可靠、應用廣泛、通用性強等突出優(yōu)點。它在硬件結(jié)構(gòu)、指令系統(tǒng)、I/O端口、功率消耗及可靠性等方面均有其獨特之處,其最顯著的特點之一就是具有非常有效的控制功能。而LCD顯示器具有體積小、重量輕、工作電壓低、功耗極低、顯示內(nèi)容豐富、穩(wěn)定可靠、成本低、控制驅(qū)動方便、接口簡單易用、模塊化結(jié)構(gòu)緊湊等特點。18.2. 綜上所述,按照設計要求我選擇第二種方案,即利用單片機和LCD顯示器來實現(xiàn)定時倒數(shù),
8、通過壓電喇叭來發(fā)出音樂。18.3. 單片機選擇方案18.4. 采用8051單片機18.5. 8051單片機內(nèi)部包含一個8位CPU、一個片內(nèi)振蕩器及時鐘電路、ROM程序存儲器、RAM數(shù)據(jù)存儲器、兩個16位定時器/計數(shù)器、可分別尋址64KB的程序存儲器空間和64KB的數(shù)據(jù)存儲器空間、32條可編程的I/O口線(4個8位并行I/O端口)、一個可編程全雙工串行口、具有5個中斷源和2個優(yōu)先級的中斷結(jié)構(gòu)??梢杂行崿F(xiàn)本次設計中要求的各項功能。18.6. 具體的設計流程可見圖1:主程序開始初始化變量及LCD接口初始化定時器LCD閃動表示程序開始執(zhí)行LCD掃描顯示器更新倒數(shù)時間數(shù)據(jù),檢查鬧鈴時間是否到了是否按K
9、1,K2,K3鍵S1:調(diào)整倒數(shù)時間S2:倒數(shù)計時時間加S3:倒數(shù)計時時間減YN19. 圖1 設計流程圖19.1.1. 單元電路設計19.1.2. 2.1控制電路19.2. 倒數(shù)計數(shù)器的控制電路可以見附圖,其中主要分為以下幾部分19.2.1.1. 單片機805119.3. 8051 基本資料如下:20.21. 圖2 8051引腳圖21.1. 8051主要使用引腳功能說明如下:22. 8051的引腳40接+5V電源,引腳20接電源地線。23. 傳統(tǒng)8051工作時鐘的最高為12MHz。24. EA引腳低電平動作用來存取外部程序ROM控制。25. EA接地,由外部程序ROM來執(zhí)行程序。26. EA接高
10、電平,由內(nèi)部ROM來執(zhí)行程序。27. 開機時必須加入芯片重置信號。(RESET)28. RESET信號高電平動作,高電平時產(chǎn)生芯片重置。29. RESET信號低電平時,由程序ROM地址0開始執(zhí)行程序。29.1. 在本次設計中采用的8051外接電路如圖3所示:29.2.29.3. 圖3 8051外接電路圖29.4. 8051系列的單片機的時鐘方式分為內(nèi)部方式和外部方式。內(nèi)部方式就是在單片機的引腳18、19外接晶振,就夠成了自激振蕩器在單片機內(nèi)部產(chǎn)生時鐘脈沖信號。外部時鐘方式是把外部已經(jīng)有的時鐘信號引入到單片機內(nèi)部。時鐘電路在計算機系統(tǒng)中起著非常重要的作用,是保證系統(tǒng)正常工作的基礎(chǔ)。在一個單片機應
11、用系統(tǒng)中,時鐘有兩方面的含義:一是指為保障系統(tǒng)正常工作的基準振蕩定時信號,主要由晶振和外圍電路組成,晶振頻率的大小決定了單片機系統(tǒng)工作的快慢;二是指系統(tǒng)的標準定時時鐘,即定時時間。29.5. 用一個12MHz晶振和兩個30Pf瓷片電容組成,為單片機提供標準時鐘,其中兩個瓷片電容可以增加電路的穩(wěn)定性,可以抗噪聲增加穩(wěn)定性,不容易死機。29.6. 在8051中之所以采用高性能的振蕩電路,因為:29.6.1.1.1. 單片機電子鐘的計時脈沖基準是由外部晶振的頻率經(jīng)過12分頻后提供,采用內(nèi)部的定時/計數(shù)器來實現(xiàn)計時功能。所以,外接晶振頻率精確度直接影響電子鐘計時的準確性。 29.6.1.1.2. 單片
12、機電子鐘利用內(nèi)部定時/計數(shù)器溢出產(chǎn)生中斷(12M晶振一般為50ms)再乘以相應的倍率來實現(xiàn)秒、分、時的轉(zhuǎn)換。大家都知道從定時/計數(shù)器產(chǎn)生中斷請求到響 應中斷需要3-8個機器周期,定時中斷子程序中的數(shù)據(jù)入棧和重裝定時/計數(shù)器的初值還需要占用數(shù)個機器周期,還有從中斷入口轉(zhuǎn)到中斷子程序也要占用一定的機器周期。29.6.1.2. 復位電路29.7.29.8. 圖4 單片機復位電路29.9. 本次設計使用的倒數(shù)計時LCD控制,使用的是16字*2行設計。圖4中為4位控制電路,以8051 P0的6調(diào)輸出控制線來實現(xiàn)控制,P0還有提升電阻以增強其驅(qū)動能力,控制信號如下:R/W=0,LCD執(zhí)行寫入的動作,RS寄
13、存器選擇控制線。EN啟用控制線。VO亮度調(diào)整控制引腳。D0D7雙向的數(shù)據(jù)總線。必須在有亮度照明的地方,才能看見時間,若使用LCD,選擇有背光顯示的模塊,則在夜晚或黑暗的場合也可以使用,有背光顯示的LCD模塊在引腳上,與無背光顯示的模塊兼容,指示價格較貴,一般顯示的背光顏色為黃光,與手機的背光顏色相似。29.9.1.1. 按鍵控制29.10. 按鍵控制室控制程序執(zhí)行時數(shù)據(jù)的輸入或是特殊功能的設置及操作,使用8051端口2的4條輸入口,由程序來控制,平時輸入端為高電平,當有按鍵按下則相對位會呈現(xiàn)低電平,進過輪流掃描判斷輸入端是否為低電平,便可知道按下的是哪一個按鈕。29.10.1.1. 音樂喇叭2
14、9.11. 8051端口1的第3位是壓電喇叭的驅(qū)動位,持續(xù)送出工作脈沖可以推動喇叭發(fā)出嗶的聲響,當工作頻率越高時,聲音越清脆,工作頻率低時,聲音則較低沉。29.11.1.1. 電源輸入29.12. J1為+5V電源輸入,當電源加入時電源指示燈LED將亮起,用哪個以指示電源供給正常,定時器在倒數(shù)時間到后壓電喇叭會發(fā)出音樂旋律,并啟動繼電器使其狀態(tài)為ON,控制繼電器的ON/OFF狀態(tài),可以直接控制家電開關(guān)。29.12.1. 2.2控制程序29.13. 本課程設計中,可以學習利用單片機定時器設計時間計時處理,其時分秒控制,定時器0計時中斷程序每個5ms中斷一次當做一個計數(shù),每中斷一次則計數(shù)加1,當計
15、數(shù)200次時,表示1s到了,秒變量加1,同理再判斷是否1min鐘到了,再判斷是否1h到了,若計數(shù)到了則將相關(guān)變量清除為0。單片機定時器負責定時的技術(shù),不會因為案件處理而中斷時間描述的增加,時,分,秒數(shù)據(jù)是存在變量內(nèi)并寫入LCD而顯示相關(guān)時間的。29.14. 在主控程序循環(huán)中主要工作為掃描是否有按鍵,若有按鍵則做相應的功能處理,同時也檢查所倒數(shù)的時間是否為0,若為0表示倒數(shù)的時間終了,應該執(zhí)行想對應的工作了,圖為主程序控制工作流程。時間計時處理程序時等過了1s 后,則更新時間數(shù)據(jù),將最新剩余倒數(shù)的分秒的時間數(shù)據(jù)轉(zhuǎn)換為數(shù)字數(shù)據(jù),并顯示在LCD上。程序中如何判斷是否已過了1s?可以設一舊秒數(shù)變量,當
16、新舊秒數(shù)變量不一樣時,則表示已過了1s,要做相關(guān)程序處理了。倒數(shù)計時鬧鈴的動作利用時間計時處理來做秒數(shù)倒數(shù),當所設置的時間為0,壓電喇叭則不斷發(fā)出音樂聲,LED持續(xù)閃動,啟動繼電器,有繼電器可以控制家電開啟或關(guān)閉。29.15. 音樂聲的產(chǎn)生也是有定時器來產(chǎn)生固定頻率的方波信號推動壓電喇叭,發(fā)出旋律。而定時器原先已利用設計時間計時處理了,怎么能在設計來做音樂旋律的控制?在此設計定義一個音樂演奏標志,若音樂演奏標志為0則執(zhí)行中斷程序中計時程序的部分程序,若音樂演奏標志為1則執(zhí)行音樂發(fā)生控制程序。因此只要適當?shù)倪\用程序設計技巧,計時中斷程序中可以做許多種不同的工作,而這些工作是需要特定一段時間久必須
17、要被觸發(fā)而被執(zhí)行的程序。29.16. 倒數(shù)計數(shù)器控制程序文件名為DSDS.ASM。注意:在程序中128行有以下的指令:29.17. SINCLUDE (DSDS1.ASM); 加載程序一起來匯編及編譯29.18. 表示在主程序DSDS.ASM中還會自動加載另一程序DSDS1.ASM程序一起進來匯編及編譯,只是為了方便程序編譯用,一些測試正確的程序代碼可以分別存檔好方便管理,此外整個程序源代碼長度也不至于太長,不方便編輯。DSDS1.ASM主要的程序代碼功能為以定時器演奏歌曲旋律的控制。29.18.1. 軟件程設計和調(diào)試29.18.2. 3.1延時時間的計算29.19. 若我們想設計程序執(zhí)行55
18、ms時間延時,程序可以設計如下29.20. /延時29.21. void delay(uint z)29.22. 29.22.1. uint x,y;29.22.2. for(x=z;x>0;x-)29.22.2.1. for(y=110;y>0;y-);29.23. 29.24. 如果執(zhí)行18次此子程序,則延時時間約為1s29.24.1. 3.2工作方式設計29.25. 本次設計中采用的定時器模式0來設計,在此方式中T0、T0可以進行13位的計時,其值保存在兩個8位的定時寄存器中。29.26. 對于其中任一定時器,工作時鐘可以由內(nèi)部或是外部來提供,由C/T位來決定做定時器還是計數(shù)
19、器。定時器的時鐘為系統(tǒng)工作時鐘除以12.此次試驗中采用12MHz石英震蕩器則產(chǎn)生55ms的計數(shù)時間脈沖寬度。本次實驗的定時器計時時間為1s,因此定時器0需計數(shù)5000次,其定時器初值的加載可以計算如下:29.27. TH0=(65536-5000)/25629.28. TL1=(65536-5000)%25629.29. 執(zhí)行后的結(jié)果為,產(chǎn)生的脈沖寬度為29.30. T=55ms29.30.1. 3.3有定時器產(chǎn)生各種頻率的聲音29.31. 我們可以設定發(fā)音的頻率來改變聲音產(chǎn)生音樂,計時時間長短也是按照發(fā)音的頻率而定的。由頻率值推得定時器計數(shù)初值由下關(guān)系式得到:29.32. T=1/f(us)
20、 ;方波寬度29.33. Co=(int)t/2 ;定時器所得計數(shù)的次數(shù)29.34. TH0=(65536-5000)/256;計數(shù)初值底字節(jié)29.35. TL1=(65536-5000)%256;計數(shù)初值高字節(jié)29.36. 軟件的編譯和調(diào)試使用的是KEIL軟件,文件格式是C。29.36.1. 3.4程序說明30. #include<reg51.h>31. #define uchar unsigned char32. #define uint unsigned int33. sbit lcde=P10;34. sbit lcdrs=P11;35. sbit lcdw=P12;36.
21、 sbit speaker=P13;37. sbit s1=P30;38. sbit s2=P31;39. sbit s3=P32;40. sbit rd=P37;41. uchar code table=" count down !"42. uchar code table1=" 00:00:09"43. uchar count,s1num;44. static char miao=9,shi=0,fen=0;44.1.1.1. /生日快樂歌的音符頻率表,不同頻率由不同的延時來決定45. uchar code SONG_TONE=212,212,190
22、,212,159,169,212,212,190,212,142,159,45.1.1.1.1.1. 212,212,106,126,159,169,190,119,119,126,159,142,159,0;46. /uchar code SONG_TONE=212,212,190,212,159,169,0;46.1.1.1. /生日快樂歌節(jié)拍表,節(jié)拍決定每個音符的演奏長短47. uchar code SONG_LONG=9,3,12,12,12,24,9,3,12,12,12,24,47.1.1.1.1.1. 9,3,12,12,12,12,12,9,3,12,12,12,24,0;48
23、. /uchar code SONG_LONG=9,3,12,12,12,24,0;49. /延時50. void delay(uint z)51. 51.1. uint x,y;51.2. for(x=z;x>0;x-)51.2.1. for(y=110;y>0;y-);52. 53. void write_com(uchar x)54. P2=x;54.1. lcdrs=0;54.2. lcdw=0;54.3. lcde=1;54.4. delay(2);54.5. lcde=0;54.6. lcdw=0;55. 56. void write_date(uchar x)57.
24、57.1. lcdrs=1;57.2. lcdw=0;57.3. P2=x;58. /delay(5);58.1. lcde=1;58.2. delay(2);58.3. lcde=0;59. 60. void write_sfm(uchar add,uchar date)61. 61.1. uchar shi,ge;61.2. shi=date/10;61.3. ge=date%10;61.4. write_com(0x80+0x40+add);61.5. write_date(0x30+shi);61.6. write_date(0x30+ge);62. 63. /播放函數(shù)64. void
25、 PlayMusic()65. uint i=0,j,k;65.1. while(SONG_LONGi!=0|SONG_TONEi!=0)65.1.1. /播放各個音符,SONG_LONG為拍子長度65.1.1.1. for(j=0;j<SONG_LONGi*20;j+)65.1.1.1.1. 65.1.1.1.1.1. speaker=speaker;65.1.1.1.1.2. /SONG_TONE延時表決定了每個音符的頻率65.1.1.1.1.3. for(k=0;k<SONG_TONEi/3;k+);65.1.1.1.2. 65.1.1.2. delay(10);65.1.1
26、.3. i+;65.1.2. 66. 67. void init()68. 68.1. uchar num;68.2. write_com(0x38);68.3. write_com(0x0c);68.4. write_com(0x06);68.5. write_com(0x01);68.6. write_com(0x80);68.7. for(num=0;num<15;num+)68.7.1. 68.7.1.1. write_date(tablenum);68.7.1.2. delay(5);68.7.2. 68.8. write_com(0x80+0x40);68.9. for(nu
27、m=0;num<12;num+)68.9.1. 68.9.1.1. write_date(table1num);68.9.1.2. delay(5);68.9.2. 68.10. TMOD=0x01;68.11. TH0=(65536-50000)/256;68.12. TL0=(65536-50000)%256;68.13. EA=1;68.14. ET0=1;68.15. TR0=1;69. 70. void keyscan()71. 72. /rd=0;72.1. if(s1=0)72.2. 72.2.1. delay(5);72.2.2. if(s1=0)72.2.3. s1nu
28、m+;72.2.3.1. while(!s1);72.2.3.2. if(s1num=1)72.2.3.3. 72.2.3.3.1. TR0=0;72.2.3.3.2. write_com(0x80+0x40+10);72.2.3.3.3. write_com(0x0f);72.2.3.4. 72.3. 72.3.1.1. if(s1num=2)72.3.1.2. 72.3.1.2.1. write_com(0x80+0x40+7);72.3.1.3. 72.3.1.4. if(s1num=3)72.3.1.5. 72.3.1.5.1. write_com(0x80+0x40+4);72.3.
29、1.6. 72.3.1.7. if(s1num=4)72.3.1.8. 72.3.1.8.1. s1num=0;72.3.1.8.2. write_com(0x0c);72.3.1.8.3. TR0=1;72.3.1.9. 72.3.2. 72.3.3. if(s1num!=0)72.3.4. 72.3.4.1. if(s2=0)72.3.4.2. 72.3.4.2.1. delay(5);72.3.4.2.2. if(s2=0)72.3.4.2.3. 72.3.4.2.3.1. while(!s2);72.3.4.2.3.2. if(s1num=1)72.3.4.2.3.3. 72.3.4.
30、2.3.3.1. miao+;72.3.4.2.3.3.2. if(miao=60)72.3.4.2.3.3.2.1. miao=0;72.3.4.2.3.3.3. write_sfm(10,miao);72.3.4.2.3.3.4. write_com(0x80+0x40+10);72.3.4.2.3.4. 72.3.4.2.3.5. if(s1num=2)72.3.4.2.3.6. 72.3.4.2.3.6.1. fen+;72.3.4.2.3.6.2. if(fen=60)72.3.4.2.3.6.2.1. fen=0;72.3.4.2.3.6.3. write_sfm(7,fen);7
31、2.3.4.2.3.6.4. write_com(0x80+0x40+7);72.3.4.2.3.7. 72.3.4.2.3.8. if(s1num=3)72.3.4.2.3.9. 72.3.4.2.3.9.1. shi+;72.3.4.2.3.9.2. if(shi=24)72.3.4.2.3.9.2.1. shi=0;72.3.4.2.3.9.3. write_sfm(4,shi);72.3.4.2.3.9.4. write_com(0x80+0x40+4);72.3.4.2.3.10. 72.3.4.2.4. 72.3.4.3. 72.3.4.4. if(s3=0)72.3.4.5. 7
32、2.3.4.5.1. delay(5);72.3.4.5.2. if(s3=0)72.3.4.5.3. 72.3.4.5.3.1. while(!s3);72.3.4.5.3.2. if(s1num=1)72.3.4.5.3.3. 72.3.4.5.3.4. /*if(miao=0)72.3.4.5.3.4.1. 72.3.4.5.3.4.1.1. miao=59;72.3.4.5.3.4.1.2. write_sfm(10,miao);72.3.4.5.3.4.1.3. write_com(0x80+0x40+10);72.3.4.5.3.4.2. */72.3.4.5.3.4.3. mia
33、o-;72.3.4.5.3.4.4. if(miao=-1)72.3.4.5.3.4.4.1. miao=59;72.3.4.5.3.4.5. write_sfm(10,miao);72.3.4.5.3.4.6. write_com(0x80+0x40+10);72.3.4.5.3.5. 72.3.4.5.3.6. if(s1num=2)72.3.4.5.3.7. 72.3.4.5.3.7.1. fen-;72.3.4.5.3.7.2. if(fen=-1)72.3.4.5.3.7.2.1. fen=59;72.3.4.5.3.7.3. write_sfm(7,fen);72.3.4.5.3.
34、7.4. write_com(0x80+0x40+7);72.3.4.5.3.8. 72.3.4.5.3.9. if(s1num=3)72.3.4.5.3.10. 72.3.4.5.3.10.1. shi-;72.3.4.5.3.10.2. if(shi=-1)72.3.4.5.3.10.2.1. shi=23;72.3.4.5.3.10.3. write_sfm(4,shi);72.3.4.5.3.10.4. write_com(0x80+0x40+4);72.3.4.5.3.11. 72.3.4.5.4. 72.3.4.6. 72.3.5. 73. 74. void main()75. 7
35、5.1. init();75.2. while(1)75.3. 75.3.1. keyscan();75.3.2. if(miao=0&&fen=0&&shi=0)75.3.3. TR0=0;75.3.3.1. PlayMusic();75.3.4. 75.4. 76. 77. void timer0() interrupt 178. 78.1. TH0=(65536-50000)/256;78.2. TL0=(65536-50000)%256;78.3. count+;79. if(count=18)79.1.1. 79.1.1.1. count=0;79.1
36、.1.2. miao-;79.1.1.3. if(miao=-1)79.1.1.4. 79.1.1.4.1. miao=59;79.1.1.4.2. fen-;79.1.1.4.3. if(fen=-1)79.1.1.4.4. 79.1.1.4.4.1. fen=59;79.1.1.4.4.2. shi-;79.1.1.4.4.3. if(shi=-1)79.1.1.4.4.4. 79.1.1.4.4.4.1. shi=23;79.1.1.4.4.5. 79.1.1.4.4.6. write_sfm(4,shi);79.1.1.4.5. 79.1.1.4.6. write_sfm(7,fen);79.1.1.5. 79.1.1.6. write_sfm(10,miao);79.1.2. 80. 81. 結(jié)論和展望81.1. 本次設計比較復雜,而且設計的基礎(chǔ)知識很多,也很重要,對我們未來的工作和學習有著一定的奠基作用,是對單片機、數(shù)電、模電等知識的總結(jié)很歸納。81.2. 本次設計參考資料較多,而且由于沒有設計完成電路制版,所以對設計的程序沒
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 暑假社會實踐報告
- 單位老員工辭職報告13篇
- 煉油化工專業(yè)危害因素識別與風險防控-風險識別防控崗位資格復習試題含答案
- 2022電子商務實習報告
- 《八十天環(huán)游地球》讀書心得學生感悟
- 2024年度房地產(chǎn)項目債權(quán)債務擔保協(xié)議書范本3篇
- 2024年碎石供應專項協(xié)議范本版B版
- 瑜伽課程設計思路
- 2024年標準荒山開發(fā)承包協(xié)議樣本版
- 2024年員工職務作品知識產(chǎn)權(quán)歸屬、保密及競業(yè)限制合同6篇
- 小學體育知識樹PPT課件(帶內(nèi)容)
- 汽車標準件手冊
- 全球試驗室儀器耗材國際品牌簡介
- 鋼抱箍+工字鋼梁在蓋梁施工中的應用
- 瀝青配合比匯總
- 消防聯(lián)動調(diào)試記錄(2)
- 追求“真實、樸實、扎實”的語文課堂
- 工業(yè)機器人論文
- UC2845的應用和PWM變壓器設計
- 螺桿空壓機操作規(guī)程完整
- 圓柱螺旋扭轉(zhuǎn)彈簧計算公式EXCEL計算
評論
0/150
提交評論