版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、. 1方案論證1.1原理圖圖1-1 電子琴電路圖Figure1-1 Keyboard circuit diagram1.2系統(tǒng)板硬件連線系統(tǒng)板硬件連線如圖1-1所示,發(fā)生模塊,鍵盤模塊,及LED顯示模塊連接如下1.把“單片機系統(tǒng)區(qū)域中的P1.0端口用導線連接到“音頻放大模塊區(qū)域中的SPK IN端口上;2.把“單片機系統(tǒng)區(qū)域中的P3.0P3.7端口用8芯排線連接到“4*4行列式鍵盤區(qū)域中的C1C4R1R4端口上;3.把“單片機系統(tǒng)區(qū)域中的P0.0/AD0P0.7/AD7端口用8芯排線連接到“四路靜態(tài)數(shù)碼顯示模塊區(qū)域中的任一個ah端口上;要求:P0.0/AD0對應(yīng)著a,P0.1/AD1對應(yīng)著b,P
2、0.7/AD7對應(yīng)著h。圖1-2 管腳圖Figure1-2 pin map1.3.1.1 主要功能特性 兼容MCS-51指令系統(tǒng)32個雙向I/O口 2個16位可編程定時/計數(shù)器 全雙工UART串行中斷口線 2個外部中斷源 中斷喚醒省電模式 看門狗WDT電路 靈活的ISP字節(jié)和分頁編程 4k可反復擦寫ISP Flash ROM4.5-5.5V工作電壓 時鐘頻率0-33MHz128*8bit部RAM 低功耗空閑和省電模式 3級加密位 軟件設(shè)置空閑和省電功能 雙數(shù)據(jù)存放器指針 LM3861.3.2.1 LM386部電路LM386是美國國家半導體公司生產(chǎn)的音頻功率放大器,主要應(yīng)用于低電壓消費類產(chǎn)品。L
3、M386特性:靜態(tài)功耗低,約為4mA,可用于電池供電;工作電壓圍寬,4V-12V或5V-18V;外圍元件少;電壓增益可調(diào),20-200;低失真度。LM386是一種音頻集成功放,具有自身功耗低、電壓增益可調(diào)整、電源電壓圍大、外接元件少和總諧波失真小等優(yōu)點,廣泛應(yīng)用于錄音機和收音機之中。 HYPERLINK photo.blog.sina./showpic.html l blogid=49013b4801009rfc&url=static9.photo.sina./orignal/49013b4845103b5edf408 t _blank 圖1-3 LM386部電路原理圖Fig1-3 LM386
4、 internal circuit diagramLM386部電路原理圖如圖1-3所示。與通用型集成運放相類似,它是一個三級放大電路. 第一級為差分放大電路,T1和T3、T2和T4分別構(gòu)成復合管,作為差分放大電路的放大管;T5和T6組成鏡像電流源作為T1和T2的有源負載;T3和T4信號從管的基極輸入,從T2管的集電極輸出,為雙端輸入單端輸出差分電路。使用鏡像電流源作為差分放大電路有源負載,可使單端輸出電路的增益近似等于雙端輸出電容的增益第二級為共射放大電路,T7為放大管,恒流源作有源負載,以增大放大倍數(shù)。第三級中的T8和T9管復合成PNP型管,與NPN型管T10構(gòu)成準互補輸出級。二極管D1和D
5、2為輸出級提供適宜的偏置電壓,可以消除交越失真。引腳2為反相輸入端,引腳3為同相輸入端。電路由單電源供電,故為OTL電路。輸出端引腳5應(yīng)外接輸出電容后再接負載。電阻R7從輸出端連接到T2的發(fā)射極,形成反應(yīng)通路,并與R5和R6構(gòu)成反應(yīng)網(wǎng)絡(luò),從而引入了深度電壓串聯(lián)負反應(yīng),使整個電路具有穩(wěn)定的電壓增益。圖2.3 音頻放大器電路Figure 2.3 audio amplifier circuit1.3.3 LED數(shù)碼管圖1-4 7段數(shù)碼管Figure1-4 7 segment digital tube數(shù)碼管如圖1-4所示使用條件:a、段及小數(shù)點上加限流電阻b、使用電壓:段:根據(jù)發(fā)光顏色決定;小數(shù)點:根
6、據(jù)發(fā)光顏色決定c、使用電流:靜態(tài):總電流 80mA每段 10mA;動態(tài):平均電流 4-5mA 峰值電流 100mA上面這只是七段數(shù)碼管引腳圖,其中共陽極數(shù)碼管引腳圖和共陰極的是一樣的。數(shù)碼管使用考前須知說明:1數(shù)碼管外表不要用手觸摸,不要用手去弄引角;2焊接溫度:260度;焊接時間:5S3外表有保護膜的產(chǎn)品,可以在使用前撕下來。2實現(xiàn)過程2.1 4*4行列式鍵盤識別及顯示組成鍵盤的按鍵有機械式、電容式、導電橡膠式、薄膜式多種,但不管什么形式,其作用都是一個使電路接通與斷開的開關(guān)。目前微機系統(tǒng)中使用的鍵盤按其功能不同,通??煞譃榫幋a鍵盤和非編碼鍵盤兩種根本類型。編碼鍵盤:鍵盤本身帶有實現(xiàn)接口主要
7、功能所需的硬件電路。不僅能自動檢測被按下的鍵,并完成去抖動、防串鍵等功能,而且能提供與被按鍵功能對應(yīng)的鍵碼如ASCII碼送往CPU。所以,編碼鍵盤接口簡單、使用方便。但由于硬件電路較復雜,因而價格較貴。非編碼鍵盤:鍵盤只簡單地提供按鍵開關(guān)的行列矩陣。有關(guān)按鍵的識別、鍵碼確實定與輸入、去抖動等功能均由軟件完成。目前微機系統(tǒng)中,一般為了降低本錢大多數(shù)采用非編碼鍵盤。鍵盤接口必須具有去抖動、防串鍵、按鍵識別和鍵碼產(chǎn)生4個根本功能。1去抖動:每個按鍵在按下或松開時,都會產(chǎn)生短時間的抖動。抖動的持續(xù)時間與鍵的質(zhì)量相關(guān),一般為520mm。所謂抖動是指在識別被按鍵是必須避開抖動狀態(tài),只有處在穩(wěn)定接通或穩(wěn)定斷
8、開狀態(tài)才能保證識別正確無誤。去抖問題可通過軟件延時或硬件電路解決。2防串鍵:防串鍵是為了解決多個鍵同時按下或者前一按鍵沒有釋放又有新的按鍵按下時產(chǎn)生的問題。常用的方法有雙鍵鎖定和N鍵輪回兩種方法。雙鍵鎖定,是當有兩個或兩個以上的按鍵按下時,只把最后釋放的鍵當作有效鍵并產(chǎn)生相應(yīng)的鍵碼。N鍵輪回,是當檢測到有多個鍵被按下時,能根據(jù)發(fā)現(xiàn)它們的順序依次產(chǎn)生相應(yīng)鍵的鍵碼。 3被按鍵識別:如何識別被按鍵是接口解決的主要問題,一般可通過軟硬結(jié)合的方法完成。常用的方法有行掃描法和線反轉(zhuǎn)法兩種。行掃描法的根本思想是,由程序?qū)︽I盤逐行掃描,通過檢測到的列輸出狀態(tài)來確定閉合鍵,為此,需要設(shè)置入口、輸出口一個,該方法
9、在微機系統(tǒng)中被廣泛使用。線反轉(zhuǎn)法的根本思想是通過行列顛倒兩次掃描來識別閉合鍵,為此需要提供兩個可編程的雙向輸入/輸出端口。 4鍵碼產(chǎn)生:為了從鍵的行列坐標編碼得到反映鍵功能的鍵碼,一般在存區(qū)中建立一個鍵盤編碼表,通過查表獲得被按鍵的鍵碼。用AT89S51的并行口P1接44矩陣鍵盤,以P1.0P1.3作輸入線,以P1.4P1.7作輸出線;在數(shù)碼管上顯示每個按鍵的“0F序號。圖2-1 鍵盤識別模塊Fig2-1Keyboard recognition module2.1.1 系統(tǒng)板上硬件連線設(shè)計鍵盤模塊硬件連線如圖2-1所示:1把“單片機系統(tǒng)區(qū)域中的P3.0P3.7端口用8芯排線連接到“4*4行列式
10、鍵盤區(qū)域中的C1C4R1R4端口上;2把“單片機系統(tǒng)區(qū)域中的P0.0/AD0P0.7/AD7端口用8芯排線連接到“7段數(shù)碼顯示模塊區(qū)域中的任一個ah端口上;要求:P0.0/AD0對應(yīng)著a,P0.1/AD1對應(yīng)著b,P0.7/AD7對應(yīng)著h。2.1.2 程序設(shè)計容144矩陣鍵盤識別處理,每個按鍵有它的行值和列值,行值和列值的組合就是識別這個按鍵的編碼。矩陣的行線和列線分別通過兩并行接口和CPU通信。每個按鍵的狀態(tài)同樣需變成數(shù)字量“0和“1,開關(guān)的一端列線通過電阻接VCC,而接地是通過程序輸出數(shù)字“0實現(xiàn)的。2鍵盤處理程序的任務(wù)是:確定有無鍵按下,判斷哪一個鍵按下,鍵的功能是什么;還要消除按鍵在閉
11、合或斷開時的抖動。兩個并行口中,一個輸出掃描碼,使按鍵逐行動態(tài)接地,另一個并行口輸入按鍵狀態(tài),由行掃描值和回饋信號共同形成鍵編碼而識別按鍵,通過軟件查表,查出該鍵的功能。電路圖如下圖2.1.1 行列式鍵盤電路Figure 2.1.1 determinant keyboard circuit2.1.3 I/O并行口直接驅(qū)動LED顯示LED顯示模塊如圖2-2所示,利用AT89S51單片機的P0端口的P0.0P0.7連接到一個七段數(shù)碼管的ah的筆段上,數(shù)碼管的公共端接地。在數(shù)碼管上循環(huán)顯示07數(shù)字,時間間隔0.2秒。圖2-2 電路原理圖Fig2-2 Circuit diagram系統(tǒng)板上硬件連線:如
12、圖2-2所示 把“單片機系統(tǒng)區(qū)域中的P0.0/AD0P0.7/AD7端口用8芯排線連接到“七段數(shù)碼顯示模塊區(qū)域中的任一個數(shù)碼管的ah端口上;要求:P0.0/AD0與a相連,P0.1/AD1與b相連,P0.2/AD2與c相連,P0.7/AD7與h相連。程序設(shè)計容 1LED數(shù)碼顯示原理: 七段LED顯示器部由七個條形發(fā)光二極管和一個小圓點發(fā)光二極管組成,根據(jù)各管的極管的接線形式,可分成共陰極型和共陽極型。 LED數(shù)碼管的ga七個發(fā)光二極管因加正電壓而發(fā)亮,因加零電壓而不以發(fā)亮,不同亮暗的組合就能形成不同的字形,這種組合稱之為字形碼,下面給出共陰極的字形碼表如表2-1所示表2-1 字形碼表Table
13、 2-1 font code table“03FH“87FH“106H“96FH“25BH“A77H“34FH“b7CH“466H“C39H“56DH“d5EH“67DH“E79H“707H“F71H2)由于顯示的數(shù)字09的字形碼沒有規(guī)律可循,只能采用查表的方式來完成我們所需的要求了。這樣我們按著數(shù)字09的順序,把每個數(shù)字的筆段代碼按順序排好!建立的表格如下所示:TABLEDB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH。2.2 音樂產(chǎn)生的方法2.2.1 原理一首音樂是許多不同的音階組成的,而每個音階對應(yīng)著不同的頻率,這樣我們就可以利用不同的頻率的組合,即可
14、構(gòu)成我們所想要的音樂了,當然對于單片機來產(chǎn)生不同的頻率非常方便,我們可以利用單片機的定時/計數(shù)器T0來產(chǎn)生這樣方波頻率信號,因此,我們只要把一首歌曲的音階對應(yīng)頻率關(guān)系正確即可。假設(shè)要產(chǎn)生音頻脈沖,只要算出*一音頻的周期1/頻率,再將此周期除以2,即為半周期的時間。利用定時器計時半周期時間,每當計時終止后就將P1.0反相,然后重復計時再反相。就可在P1.0引腳上得到此頻率的脈沖。 利用AT89C51的部定時器使其工作計數(shù)器模式MODE1下,改變計數(shù)值TH0及TL0以產(chǎn)生不同頻率的方法產(chǎn)生不同音階,例如,頻率為523Hz,其周期T1/5231912s,因此只要令計數(shù)器計時956s/1s956,每計
15、數(shù)956次時將I/O反相,就可得到中音DO523Hz。 計數(shù)脈沖值與頻率的關(guān)系式(如式2-1所示)是: Nfi2fr 2-1式中,N是計數(shù)值;fi是機器頻率晶體振蕩器為12MHz時,其頻率為1MHz;fr是想要產(chǎn)生的頻率。其計數(shù)初值T的求法如下: T65536N65536fi2fr 例如:設(shè)K65536,fi1MHz,求低音DO261Hz、中音DO523Hz、高音DO1046Hz的計數(shù)值。 T65536N65536fi2fr6553610000002fr65536500000/fr 低音DO的T65536500000/26263627 中音DO的T65536500000/52364580 高音
16、DO的T65536500000/104665059單片機12MHZ晶振,高中低音符與計數(shù)T0相關(guān)的計數(shù)值如表2-2所示表2-2 音符頻率表1發(fā)聲程序表4音符頻率表音符頻率簡譜碼中69864820低26263628中78464898低29463835中88064968低33064021中98865030低34964103高104665058低39264260高117565110低4406440高131865157低49464524高139765178中52364580高156865217中58764684高176065252中65964777高196765283我們要為這個音符建立一個表格,單片
17、機通過查表的方式來獲得相應(yīng)的數(shù)據(jù) 低音019之間,中音在2039之間,高音在4059之間 TABLE: DW 0,63628, 63835,64021,64103,64260,64400,64524,0,0 DW 0,63731,63928,0,64185,64331,64463,0,0,0 DW 0,64580,64684,64777,64820,64898,64968,65030,0,0 DW 0,64633,64732,0,64860,64934,64994,0,0,0 DW 0,65058,65110,65157,65178,65217,65252,65283,0,0 DW 0,650
18、85,65134,0,65198,65235,65268,0,0,0 DW 0音樂的音拍,一個節(jié)拍為單位C調(diào)如表2-3所示表2-3 曲調(diào)值表Table 2-3Tune the value of the table曲調(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ù)器來完成。琴鍵處理程序,根據(jù)檢測到得按鍵值,查詢音律表,給計時器賦值,發(fā)出相應(yīng)頻率的聲音。對音調(diào)的控制:根據(jù)不同的按鍵,對定時器T1送入不同的初值,調(diào)節(jié)T1的溢出時間,這樣就可以輸出不同音調(diào)頻率的方波
19、。不同音調(diào)下各個音階的定時器。在這個程序中用到了兩個定時/計數(shù)器來完成的。其中T0用來產(chǎn)生音符頻率,T1用來產(chǎn)生音拍。2.2.2 程序框圖音樂發(fā)聲程序框圖如圖2-4所示:圖2-4 音樂發(fā)聲程序框圖電路原理圖:程序框圖程序框圖如下圖:C語言源程序#includeunsigned char code table=0*3f,0*06,0*5b,0*4f,0*66, 0*6d,0*7d,0*07,0*7f,0*6f;unsigned char discount;void delay02s(void) unsigned char i,j,k; for(i=20;i0;i-) for(j=20;j0;j-
20、) for(k=248;k0;k-);void main(void) while(1) for(discount=0;dispcount0;i-)for(j=200;j0;j-);temp=P3;temp=temp & 0*0f;if (temp!=0*0f)temp=P3;temp=temp & 0*0f;switch(temp)case 0*0e:key=7;break;case 0*0d:key=8;break;case 0*0b:key=9;break;case 0*07:key=10;break;temp=P3;P1_0=P1_0;P0=tablekey;temp=temp & 0*
21、0f;while(temp!=0*0f)temp=P3;temp=temp & 0*0f;P3=0*ff;P3_5=0;temp=P3;temp=temp & 0*0f;if (temp!=0*0f)for(i=50;i0;i-)for(j=200;j0;j-);temp=P3;temp=temp & 0*0f;if (temp!=0*0f)temp=P3;temp=temp & 0*0f;switch(temp)case 0*0e:key=4;break;case 0*0d:key=5;break;case 0*0b:key=6;break;case 0*07:key=11;break;te
22、mp=P3;P1_0=P1_0;P0=tablekey;temp=temp & 0*0f;while(temp!=0*0f)temp=P3;temp=temp & 0*0f;P3=0*ff;P3_6=0;temp=P3;temp=temp & 0*0f;if (temp!=0*0f)for(i=50;i0;i-)for(j=200;j0;j-);temp=P3;temp=temp & 0*0f;if (temp!=0*0f)temp=P3;temp=temp & 0*0f;switch(temp)case 0*0e:key=1;break;case 0*0d:key=2;break;case
23、0*0b:key=3;break;case 0*07:key=12;break;temp=P3;P1_0=P1_0;P0=tablekey;temp=temp & 0*0f;while(temp!=0*0f)temp=P3;temp=temp & 0*0f;P3=0*ff;P3_7=0;temp=P3;temp=temp & 0*0f;if (temp!=0*0f)for(i=50;i0;i-)for(j=200;j0;j-);temp=P3;temp=temp & 0*0f;if (temp!=0*0f)temp=P3;temp=temp & 0*0f;switch(temp)case 0*
24、0e:key=0;break;case 0*0d:key=13;break;case 0*0b:key=14;break;case 0*07:key=15;break;temp=P3;P1_0=P1_0;P0=tablekey;temp=temp & 0*0f;while(temp!=0*0f)temp=P3;temp=temp & 0*0f;程序框圖 音樂發(fā)聲程序框圖如下圖:程序#includeunsigned char code table=0*3f,0*06,0*5b,0*4f,0*66,0*6d,0*7d,0*07, 0*7f,0*6f,0*77,0*7c,0*39,0*5e,0*79
25、,0*71;unsigned char temp;unsigned char key;unsigned char i,j;unsigned char STH0;unsigned char STL0;unsigned int code tab=64021,64103,64260,64400, 64524,64580,64684,64777, 64820,64898,64968,65030, 65058,65110,65157,65178;void main(void) TMOD=0*01; ET0=1; EA=1; while(1) P3=0*ff; P3_4=0; temp=P3; temp=
26、temp & 0*0f; if (temp!=0*0f) for(i=50;i0;i-) for(j=200;j0;j-); temp=P3; temp=temp & 0*0f; if (temp!=0*0f) temp=P3; temp=temp & 0*0f; switch(temp) case 0*0e: key=0; break; case 0*0d: key=1; break; case 0*0b: key=2; break; case 0*07: key=3; break; temp=P3; P1_0=P1_0; P0=tablekey; STH0=tabkey/256; STL0
27、=tabkey%6; TR0=1; temp=temp & 0*0f; while(temp!=0*0f) temp=P3; temp=temp & 0*0f; TR0=0; P3=0*ff; P3_5=0; temp=P3; temp=temp & 0*0f; if (temp!=0*0f) for(i=50;i0;i-) for(j=200;j0;j-); temp=P3; temp=temp & 0*0f; if (temp!=0*0f) temp=P3; temp=temp & 0*0f; switch(temp) case 0*0e: key=4; break; case 0*0d: key=5; break; case 0*0b: key=6; break; case 0*07: key=7; break; temp=P3; P1_0=P1_0; P0=tablekey; STH0=tabkey/256; STL0=tabkey%6; TR0=1; temp=temp & 0*0f; while(temp!=0*0f) temp=P3; temp=temp &
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 政府采購寵物醫(yī)療服務(wù)合同
- 產(chǎn)品安全與合規(guī)性管理合同
- 中學團委工作制度
- 智慧園區(qū)信息化系統(tǒng)建設(shè)整體解決方案
- 2024至2030年中國簡易型停車場收費管理系統(tǒng)數(shù)據(jù)監(jiān)測研究報告
- 質(zhì)量保修擔保合同
- 119消防安全教育活動策劃方案
- 煤礦事故現(xiàn)場處置管理制度
- 體育用品代加工合同
- 2024至2030年中國光帶燈行業(yè)投資前景及策略咨詢研究報告
- 江蘇省鎮(zhèn)江市第二中學2023-2024學年高二上學期期中考試數(shù)學試卷(無答案)
- 地 理城鎮(zhèn)與鄉(xiāng)村(課件)2024-2025學年七年級地理上冊同步課堂(人教版2024)
- 職域行銷BBC模式開拓流程-企業(yè)客戶營銷技巧策略-人壽保險營銷實戰(zhàn)-培訓課件
- 中華民族共同體概論課件專家版7第七講 華夷一體與中華民族空前繁盛(隋唐五代時期)
- SB/T 10379-2012速凍調(diào)制食品
- CPrimerPlus第六版中文版習題答案
- 低溫等離子PPT課件
- 美國商務(wù)簽證面簽在職證明模板
- 多特瑞精油使用集
- API接口文檔(簡單版)Word版
- 銀行業(yè)金融機構(gòu)從業(yè)人員個人處罰信息授權(quán)查詢使用承諾書
評論
0/150
提交評論