【正文】
98865030低4 FA34964103高1 D0104665058低5 S039264260高2 RE117565110低6 LA44064400高3 M131865157低7 SI49464524高4 FA139765178中1 D052364580高5 S0156865217中2 RE58764684高6 LA176065252中3 M65964777高7 SI196765283我們要為這個音符建立一個表格,單片機通過查表的方式來獲得相應的數(shù)據(jù) uint code tab[ ]={0,63628,63835,64021,64103,64260,64400,64524,64580,64684,64777,64820,64898,64968,65030,65058,65110,65157,65178,65217,65252,65283,}音樂的音拍,一個節(jié)拍為單位(C調(diào))如表 43所示:表 43 曲調(diào)值表曲調(diào)值DELAY曲調(diào)值DELAY調(diào)4/4125ms調(diào)4/462ms調(diào)3/4187ms調(diào)3/494ms調(diào)2/4250ms調(diào)2/4125ms對于不同的曲調(diào)我們也可以用單片機的另外一個定時/計數(shù)器來完成。只能 通過外部功能鍵來實現(xiàn)曲目及功能的切換,是該電子琴設計的一個缺憾。(2)具有模擬電路仿真、數(shù)字電路仿真、單片機及其外圍電路組成的系統(tǒng)的仿真、RS232動態(tài)仿真、C調(diào)試器、SPI調(diào)試器、鍵盤和LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號發(fā)生器等。 keil 簡介單片機開發(fā)中除必要的硬件外,同樣離不開軟件,我們寫的匯編語言源程序 要變?yōu)镃PU可以執(zhí)行的機器碼有兩種方法,一種是手工匯編,另一種是機器匯編, 目前已極少使用手工匯編的方法了。掌握這一軟件的使用對于使用51系列單片機的愛好者來說是十分必要的,如果你使用C語言編程,那么Keil幾乎就是你的不二之選(目前在國內(nèi)你只能買到該軟件、而你買的仿真機也很可能只支持該軟件),即使不使用C語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強大的軟件仿真調(diào)試工具也會令你事半功倍。第 6 章 結(jié)論將程序?qū)階T89C51芯片,調(diào)試成功后可任意彈奏自己想要的旋律。通過這次畢業(yè)設計,我感覺收獲了很多:首先,通過實踐,加深對單片機系列知識及其系統(tǒng)的認識。本設計還可以擴展其他功能,比如記憶功能,即可以存儲彈奏者所彈奏的音 樂且保存,待彈奏完后播放給彈奏齊聽。老師在我畢業(yè)論文的撰寫過程中,給我提供了極大的幫助和指導。其次,要感謝所有曾經(jīng)給我們班任課的老師,老師們教會我的不僅僅是專業(yè)知識,更多的是對待學習、對待生活的態(tài)度。最后對老師,同學和家人再次致以我最衷心的感謝!教導過我的老師,你們 的人格魅力永記我心間。參考資料[1](數(shù)字部分).. 07[2][3](線性部分).[4][5]李群芳,、接口及應用— [6][7]長德,李華,[8]李群芳,張士軍, [9] [10]、實驗、測試(第二版).[11], Design Techniques for Analog And Digital [12] CiruitsAnalysis Simulation and Design. Prentice .附錄Ⅰ完整程序include include include include math. hdefine uchar unsigned char define uint unsigned intuchar STHO; //定時器計數(shù)初值uchar STLO;bit FY=0; //放樂曲時FY=1,電子琴彈奏時FY=0uchar Song0_Index=0,Tone_Index=0; //放音樂的參數(shù)uchar k,key;sbit SPK=P3^7;sbit LEDl=P^0;sbit LED2=P1^1;uchar code DSY_CODE[]= {Ox3f,Ox06,Ox5b,Ox4f,Ox66,Ox6d,Ox7d,Ox07,Ox7f,Ox6f,Ox77,Ox7c,Ox39,Ox5e,Ox79,Ox71};uchar code Song[ ] [50]= //任意選幾首音樂的旋律{{1,2,3,1,1,2,3,1,3,4,5,3,4,5,5,6,5,3,5,6,5,3,5,3,2,1,2,1,1},{3,3,3,4,5,5,5,5,6,5,3,5,3,2,1,5,6,5,3,3,2,1,1,1},{3,2,1,3,2,1,1,2,3,2,1,2,3,1,3,4,5,3,4,5,5,6,5,3,5,3,2,1,3,2,1,1,1},{10,10,10,9,10,9,10,9,9,6,6,7,8,9,8,7,6,5,6,1},{10,10,10,9,10,13,12,13,12,12,9,9,10,11,12,11,10,9,8,10,10,1},{13,14,13,12,12,10,12,10,12,9,13,12,10,9,10,10,1},{9,13,13,13,8,13,13,13,13,14,15,14,13,14,13,14,10,10,1},{13,14,13,12,12,10,12,10,12,13,14,13,14,13,14,10,1},{9,13,13,13,8,13,13,13,13,14,15,14,13,13,14,12,13,1},{5,5,10,9,8,5,5,5,5,10,9,8,6,6,6,11,10,9,6,1},{6,12,12,11,9,10,8,5,5,10,9,8,5,5,5,10,9,8,6,1},{6,6,11,10,9,12,12,12,12,13,12,11,9,8,10,10,10,1},{10,10,10,10,12,8,9,10,11,1,11,11,11,10,10,10,10,10,9,9,8,9,12,12,12,1,9,8,1},{13,13,8,13,13,13,13,14,15,14,13,14,13,14,10,10,13,14,13,12,12,10,12,10,12,13,14,13,14,13,14,10,9,13,13,13,8,13,13,13,13,14,15,14,13,13,14 ,12,13,1},{6,6,11,10,9,12,12,12,12,13,12,11,9,8,10,10,10,10,10,10,10,12,8,9,10,11,11,11,11,11,10,10,10,10,10,9,9,8,9,12,12,12,11,9,8,1},{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,1}};uchar code Len[ ][50]= //上面幾首音樂的旋律每個音符對應的節(jié)拍{ {1,1,1,1,1,1,1,1,1,1,2,1,1,2,1,1,1,1,1,1,1,1,1,1,1,2,2,2,1},{1,1,1,1,1,1,2,1,1,1,1,1,1,1,2,1,1,1,1,1,1,2,2,1},{1,1,2,1,1,2,1,1,1,1,1,1,1,1,1,1,2,1,1,2,1,1,1,1,1,1,1,2,1,1,2,2,1},{1,1,1,1,2,1,1,1,1,0,1,1,0,1,1,0,1,1,2,1},{1,1,1,1,0,1,1,1,1,1,0,1,1,0,1,1,0,1,1,3,1,1},{0,1,1,0,1,1,2,1,1,0,1,1,0,1,1,2,1},{0,1,1,2,0,1,1,0,1,1,0,1,1,0,1,1,2,1,1},{0,1,1,0,1,1,2,1,1,0,1,1,0,1,1,4,1},{0,1,1,2,0,1,1,0,1,1,0,1,1,0,1,4,1},{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},{1,1,2,0,1,1,0,1,1,0,1,1,0,1,1,2,1,0,1,1,0,1,1,2,1,1,0,1,1,0,1,1,4,0,1,1,2,0,1,1,0,1,1,0,1,1,0,1,4,1},{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},},/*音符與計數(shù)值對應表*/uint code tab[] ={ 0,63628,63835,64021,64103,64260,64400,64524,64580,64684,64777,64820,64898,64968,65030,65058,65110,65157,65178,65217,65252,65283};void delay1(uint ms) //播放歌曲時實現(xiàn)節(jié)拍的延時函數(shù){uchar t。Oxf0)!=Oxf0) //本行有鍵按下{tmpcode = (P0amp。 //行掃描碼左移一位}}/*外部中斷0,這里是彈唱按鍵*/void EX0_INT( ) interrupt 0 {FY=0;LED1=1;LED2=0;}/*外部中斷1,這里是播放按鍵*/void EX1_INT( ) interrupt 2?{FY=1;LED1=0;LED2=1;}/*定時器0中斷服務子程序*/void timeO_int(void) interrupt 1 using 0 {/*設置計數(shù)初值*/TH0 = STH0;TL0 = STL0;SPK=!SPK; //反相,產(chǎn)生輸出脈沖P2=DSY_CODE[k];}void main(void){ LED1=1;LED2=0;P2=Ox3f;IE=Ox87;TMOD=Ox01;IT0=1;IT1=1; while(1){P0= Oxf0; //發(fā)全0列掃描碼if ((P0amp。這些單片機的高速處理速度和增強型外圍設備集合使得它們適合于這種高速事件應用場合。這種環(huán)境的目標不僅是為AT89C51 汽車單片機提供一種健壯測試環(huán)境,而且開發(fā)一種能夠容易擴展并重復用來驗證其他幾種將來的單片機。MCS51 單片機典型的應用是高速事件控制系統(tǒng)。由于這些決定性應用,市場需要一種可靠的具有低干擾潛伏響應的費用效能控制器,服務大量時間和事件驅(qū)動的在實時應用需要的集成外圍的能力,具有在單一程序包中高出平均處理功率的中央處理器。另外,部件的替代品領域是極其昂貴的,因為設備要用來把模塊典型地焊接成一個總體的價值比各個部件高幾倍。系統(tǒng)的類型和應用需求決定了能夠在設備上執(zhí)行的測試類型。掉電方式保存RAM 中的內(nèi)容,但振蕩器體制工作并禁止其他所有不見工作直到下一個硬件復位。主要技術(shù)參數(shù)技術(shù)要求:(1)、使用MSC51系列單片機完成系統(tǒng)設計;(2)、使用Proteus設計系統(tǒng)電路圖;(3)、使用矩陣鍵盤作為輸入,每鍵代表一個音符。2013年5月21日~2013年6月15日:根據(jù)老師的意見對論文初稿進行整改,并繼續(xù)完善系統(tǒng)設計。t agree with the disciplinary action your employer has taken against youappealeddamagesbased agreement. In England and Wales, your solicitor can39。re clear about the terms of the agreement. It might be best to get advice from an experienced adviser, for example, at a Citizens Advice Bureau. s antiracism taskforce, is in London for the Football Association39。opened disciplinary proceedings against CSKAs governing body, has also ordered an immediate investigation into the referee39?;蛟S是愧疚于自己似乎把轉(zhuǎn)瞬即逝的很多個不同的日子過成了同一天的樣子;或許是追溯過去,對自己那些近乎偏執(zhí)的怪異信念的醒悟,這些天以來,思緒一直很凌亂,在腦海中不斷糾纏。 Junior high school, though