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

正文內(nèi)容

基于at89c52單片機(jī)的簡(jiǎn)易電子琴設(shè)計(jì)畢業(yè)設(shè)計(jì)論文-在線瀏覽

2025-04-30 21:02本頁面
  

【正文】 中僅需要產(chǎn)生簡(jiǎn)單的音符或者簡(jiǎn)單的曲子,可以使用單片機(jī)配合揚(yáng)聲器產(chǎn)生需要的音樂效果。單片機(jī)演奏的音樂基本上都是單音頻率。在這兩個(gè)當(dāng)中,音調(diào)表示某個(gè)音符所表現(xiàn)的頻率的高低程度;節(jié)拍表示某個(gè)音符所表現(xiàn)的時(shí)間長(zhǎng)久。用單片機(jī)播放音樂的方法如下: ( 1) 復(fù)位單片機(jī)定時(shí)器 ( 2) 將樂譜中的各個(gè)音符的音調(diào)及 節(jié)拍轉(zhuǎn)換成各個(gè)對(duì)應(yīng)的音調(diào)和節(jié)拍參數(shù) ( 3) 將樂譜中音符的參數(shù)做成數(shù)據(jù)表格存放在存儲(chǔ)器中 ( 4)通過程序取出一個(gè)音符的相關(guān)參數(shù) ......,如此直到播放完畢最后一個(gè)音符,根據(jù)需要也可循環(huán)不停地播放整個(gè)樂曲。在音樂中標(biāo)準(zhǔn)音高為中音 C上方的 A音,它的頻率是 f = 440Hz,把其它的音和它進(jìn)行比較。 在音樂中音符 1( do)與音符ⅰ之間其中一個(gè)的頻率正好是另外一個(gè)音符頻率的兩倍,它在音樂學(xué)中 3 被稱為相差一個(gè)八度音。以 1ⅰ八音區(qū)為例。由于人耳的聽覺效果,這 12個(gè)音節(jié)的分度基本上都是以對(duì)數(shù)關(guān)系來劃分它們的。 在知道了一個(gè)音符的頻率后,就可以讓單片機(jī)發(fā)出相應(yīng)的頻率所對(duì)應(yīng)的的振蕩信號(hào),從而產(chǎn)生相應(yīng)的音符聲音。為了讓單片機(jī)發(fā)出不同頻率音符的聲音,只需將定時(shí)器預(yù)置不同的定時(shí)值來實(shí)現(xiàn)。 如果單片機(jī)采用定時(shí)器工作方式 1,它的計(jì)數(shù)脈沖為振蕩器的十二分頻信號(hào)。所以定時(shí)器的高低計(jì)數(shù)器的初值為: 256)12/(256/ 0 ????? ftC ou ntTTTH ( 24) 4 256)%12/(256%0ftC ou ntTTTL ???? ( 25) 如果單片機(jī)外接 12MHz的晶振,則 MHzf 120 ?,把 t=1136us和 MHzf 120 ?代入上面的兩式,隨之可以求出標(biāo)準(zhǔn)音高 A在單片機(jī)定時(shí)器工作方式 1下的定時(shí)器高低計(jì)數(shù)器的初值為: F B HTTTH A ?????? 256)12/12113665536(256/ ( 26) HTTTH A 90256)%12/12113665536(256% ????? ( 27) 參考以上的求法,我們就可以得出其他音調(diào)相應(yīng)的計(jì)數(shù)器的 預(yù)置初值。這里 1=C, 1=G標(biāo)識(shí)樂譜的曲調(diào),簡(jiǎn)單的說就是跟音調(diào)有關(guān)系;這里的 44 、 43 用來表示節(jié)拍。它表示樂譜中以四分音符為節(jié)拍,每一小節(jié)有三拍。 在圖中,總共有三拍: 2為一拍, 5為一拍, 6為一拍。 圖 22 節(jié)拍示意圖 對(duì)于一拍的發(fā)音時(shí)間,如果樂曲沒有特殊說明,一般說來,一拍的時(shí)長(zhǎng)大約為 400~450ms。 從而,在單片機(jī)上可采用循環(huán)延時(shí)的辦法來實(shí)現(xiàn)控制一個(gè)音符唱多長(zhǎng)時(shí)間。 單片機(jī)電子琴演奏音樂的方法: 步驟一:將樂譜中的每個(gè)音符的音調(diào)及節(jié)拍變換成相應(yīng)的音調(diào)參數(shù)和節(jié)拍數(shù)。 步驟三:通過按鍵調(diào)用程序取出一個(gè)音符的相關(guān)參數(shù),播放該音符。 對(duì)于演奏樂曲,一般將休止符的音調(diào)參數(shù)設(shè)置為 FFH,節(jié)拍參數(shù)設(shè)置為 00H。其次,在這次設(shè)計(jì)可行性上進(jìn)行分析如下: ① 技術(shù)可行性 技術(shù)可行性主要是分析技術(shù)條件上是否能夠順 利開展并完成課程設(shè)計(jì)的主要問題,硬件、軟件能否滿足設(shè)計(jì)者的需要等。 ② 經(jīng)濟(jì)可行性 所謂經(jīng)濟(jì)可行性,即在這次設(shè)計(jì)上需要投入資金的多少,由于課程設(shè)計(jì)是提高我們的動(dòng)手能力以及資金有限。通過分析后,無論是在器件價(jià)格或是常見度上均是可行的。 設(shè)計(jì)指標(biāo) 實(shí)現(xiàn)電子琴發(fā)聲控制系統(tǒng),要求電路實(shí)現(xiàn)如下功能: 利用 LCD數(shù)碼管作為顯示部件,喇叭作為發(fā)聲部件,設(shè)置 8 個(gè)按鍵,實(shí)現(xiàn)高音、中音、低音的 8 的發(fā)音。 用 PROTEUS 實(shí)現(xiàn)的電子琴仿真設(shè)計(jì)。 3. 硬件電路 通過 LCD 顯示屏、喇叭、鍵盤這一些外部器件,經(jīng)過按鍵實(shí)現(xiàn)各種音調(diào)和音符的輸入, LCD 顯示屏進(jìn)行被操作的按鍵顯示,用放大電路實(shí)現(xiàn)低音頻信號(hào)的功率放大,然后 通過調(diào)試用喇叭播放相關(guān)音樂。 自然界中的 物質(zhì)有 氣態(tài)、液態(tài)、固態(tài) 三種型態(tài)。 因此人們 就 可以 將液態(tài) 再次 細(xì)分 成好多型態(tài)。 生活中的電視、手機(jī)絕大多數(shù)產(chǎn)品都屬于液晶產(chǎn)品,因此,液晶對(duì)于人們的生活來說并不陌生 。 (2)時(shí)鐘頻率 由于單片機(jī)只有在時(shí)鐘的驅(qū)動(dòng)下才能完成工作。外部振蕩源電路一般選用石英晶體振蕩器,此電路在加電大約延遲 10mS后振蕩器起振,在 XTAL2引腳產(chǎn)生幅度為 3V左右的正弦波時(shí)鐘信號(hào),其振蕩頻率主要由石英晶振的頻率確定。 C1,C2的典型值為 30PF。時(shí)鐘信號(hào)頻率的倒數(shù)是零大小,通常用 fosc表示。s。 AT89C52是美國(guó) Atmel公司生產(chǎn)的具有低高性能、低電壓等特點(diǎn)的 CMOS 8 位單片機(jī),內(nèi)部含有 8KB 的可以不斷修改的程序存儲(chǔ)器和 12B的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器( RAM),它使用了 Atmel公司的高質(zhì)密、不容易失性存儲(chǔ)的技術(shù)生產(chǎn),并且和標(biāo)準(zhǔn)MCS51 指令系統(tǒng)所兼容,片內(nèi)配置通用 8 位中央處理器( CPU)和 Flash 存儲(chǔ)單元,由于 AT89C52 的強(qiáng)大功能使它可以廣泛的應(yīng)用到人們生產(chǎn)生活的各個(gè)方面。 AT89C52的引腳圖如圖 32。 ( 1) 但單片機(jī)的應(yīng)用系統(tǒng)中 ,單片機(jī)是核心部件, 它 能夠自動(dòng)完成 用戶的需求所賦予的任務(wù) 。因 9 此,要使單片機(jī)正常運(yùn)行,就必須為其提供能量,即為片內(nèi)的晶體管或場(chǎng)效應(yīng)管供給電源,使其能工作在相應(yīng)的狀態(tài)。如,單片機(jī)與外設(shè)的通訊就是通過輸入輸出口線 來 實(shí)現(xiàn)的。 當(dāng) 驅(qū) 動(dòng)能力不足 的 時(shí) 候,就 可以在口線上接驅(qū)動(dòng)器。 ② 任何工作都按時(shí)間順序。通常在引腳 XTALl和 XTAL2跨接石英晶體和兩個(gè)補(bǔ)償電容構(gòu)成自激振蕩器,結(jié)構(gòu)圖 33中 X C C2。上電復(fù)位要求接通電源后,自動(dòng)實(shí)現(xiàn)復(fù)位操作。一般采用的辦法是在 RST端和正 電源 Vcc之間接一個(gè)按鈕。手動(dòng)按鈕復(fù)位的電路如所示。 手動(dòng)復(fù)位的要求是,在電源接通的條件下,在單片機(jī)運(yùn)行的期間內(nèi),使用按 鈕開關(guān)操作將單片機(jī)復(fù)位。上電復(fù)位要求是,接通電源后,系統(tǒng)能夠自動(dòng)實(shí)現(xiàn)復(fù)位操作。它的結(jié)構(gòu)見下圖。 在 矩陣 式 鍵盤 里 , 各個(gè) 水平線和垂直線在交叉處 是 不直接連通 的 ,而是通過一個(gè)按鍵 將它們 加以連接的 。 綜上所述 ,在需要的鍵數(shù)比較多 的情況時(shí) , 使用 矩陣 法來做鍵盤是 很 合理的。矩陣式鍵盤由行線和列線組成,按鍵位于行、列線的交叉點(diǎn)上。雖然矩陣鍵盤在硬件電路上相比其他鍵盤比較復(fù)雜,而且在程序算法上還比較麻煩,不過它在節(jié)省端口資源上非常具有優(yōu)勢(shì),因所以它比較適合于多按鍵電路。 圖 35 鍵盤 軟件主要由初始化程序、鍵盤掃描程序、音調(diào)發(fā)生程序、延時(shí)程序和曲調(diào)播放程序組成。 主程序流程圖 本設(shè)計(jì)共兩種播放模式,包括自動(dòng)播放存儲(chǔ)音樂和按鍵發(fā)音。當(dāng) DO、 RE、 MI、 FA、 SO、 LA、 SI、 DO(高音)八種音符鍵按下時(shí),根據(jù)音階值和音符值在定義的音頻數(shù)組中查找相應(yīng)音律,然后給定時(shí)器賦初值,即按鍵發(fā)音。 【播放程序見附錄】 12 圖 41 程序流程圖 程序設(shè)計(jì)內(nèi)容 ( 1) 44 矩陣 鍵盤識(shí)別處理 之中 每個(gè)按鍵有它 們自己 的行值和列值, 它們 的組合就是 能夠 識(shí)別這個(gè)按鍵的編碼。每個(gè)按鍵的狀態(tài) 都需要 變成數(shù)字量 “0” 和 “1” ,開關(guān)的一端(列線)通過電阻接 VCC,而接地 就 是通過程序輸出數(shù)字 “0” 所 實(shí)現(xiàn)的。兩個(gè)并行口中,一個(gè)輸出掃描碼,另一個(gè)并行口 開始 開中斷并設(shè)置工作式寄存器 有鍵按下 自動(dòng)播放鍵按下 進(jìn)入中斷 查找相應(yīng)音律 給定時(shí)器賦值 播放音樂 進(jìn)入中斷 查找相應(yīng)音律 給定時(shí)器賦值 播放鍵值對(duì)應(yīng)音符 13 隨之 輸入按鍵狀態(tài), 將 按鍵逐行動(dòng)態(tài)接地,行掃描值和回饋信號(hào)共同形成鍵 編碼而識(shí)別按鍵, 該鍵功能可以通過軟件查表來看到 。 lcd_init()。 // 開機(jī)畫面 lcd_string(11,5,dis1[1])。 //初始化定時(shí)器 0,主要用于數(shù)碼管動(dòng)態(tài)掃描 SPK=0。 while (1) { switch(KeyPort) { case 0xfe:num= 1。 case 0xfd:num= 2。 case 0xfb:num= 3。 case 0xf7:num= 4。 case 0xef:num= 5。 case 0xdf:num= 6。 case 0xbf:num= 7。 case 0x7f:num= 8。 default:num= 0。 } lcd_string(0x40+7,1,YINFU[num])。 SPK=0。 Low =freq[num1][0]。 } if(tab==0) { delayms(10)。 while(i100) { k=MUSIC[i]+7*MUSIC[i+1]1。 Low=FREQL[k]。 //節(jié)拍時(shí)長(zhǎng) i=i+3。 if(P1!=0xff) i=101。 } TR0=0。 想要 產(chǎn)生音頻脈沖 的話 , 一般 算出某一音頻的周期( 1/頻率),再將此 它 除以 2, 就是所謂的 半周期的時(shí)間。利用 AT89C52單片機(jī) 的內(nèi)部定時(shí)器 讓它的 工作計(jì)數(shù)器模式( MODE1)下,改變計(jì)數(shù)值 TH0 及 TL0 以產(chǎn)生不同頻率的方法產(chǎn)生不同 的 音階, 比如 ,頻率為 523Hz,其周期 T= 1/523=1912μs , 所以 只要 讓 計(jì)數(shù)器計(jì)時(shí) 956μs/1μs = 956,每計(jì)數(shù) 956次時(shí)將 I/O反相,就可得到中音 DO( 523Hz)。//賦值定時(shí)器時(shí)間,決定頻率 TL0=Low。 //打開定時(shí)器 delayjie(Time)。2247。 其計(jì)數(shù)初值 T的求法如下: T= 65536- N= 65536- fi247。fr 5.調(diào)試 Proteus 簡(jiǎn)介 Proteus 是英國(guó) Labcenter 公司嵌入式系統(tǒng)仿真開發(fā)平臺(tái)。 本論文設(shè)計(jì)主要是運(yùn)用 ( 電路原理圖設(shè)計(jì)系統(tǒng) )仿真單片機(jī)控制 1616LED 點(diǎn)陣,下面將簡(jiǎn)單介紹 Proteus 的 電路原理圖設(shè)計(jì)系統(tǒng)。既有理想元件模型。 Proteus 的電路原理圖設(shè)計(jì)系統(tǒng)的仿真實(shí)驗(yàn) 功能:電路不僅能做電路基礎(chǔ)實(shí)驗(yàn)、模擬電路實(shí)驗(yàn)與數(shù)字電路實(shí)驗(yàn),而且能做單片機(jī)與接口實(shí)驗(yàn)。它的仿真要求為: ,檢測(cè)數(shù)字電路模型是否連通,有無連接錯(cuò)誤。 3. Proteus 仿真電路最終能成功顯示 C 語言程序編譯后的結(jié)果。機(jī)器匯編是通過匯編軟件將源程序變?yōu)闄C(jī)器碼,用于 MCS51 單片機(jī)的匯編軟件有早期的 A51,隨著單片機(jī)開發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級(jí)語言開發(fā),單片機(jī)的開發(fā)軟件也在不斷發(fā)展, Keil軟件是目前最流行開發(fā) MCS51 系列單片機(jī)的軟件,這從近年來各仿真機(jī)廠商紛紛宣布全面支持 Keil即可看出。運(yùn)行 Keil 軟件需要 Pentium 或以上的CPU, 16MB或更多 RAM、 20M 以上空閑的硬盤空間、 WIN9 NT、 WIN202 WINXP 等操作系統(tǒng)。 該軟件的優(yōu)點(diǎn)為: ( 1) Keil C51 生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。 ( 2) 與匯編相比, C 語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。 注意事項(xiàng) : ( 1) 仿真器 標(biāo)配 的晶振,但用戶可以在仿真器上的晶振插孔中換插其他頻率的晶振。 ( 3) 仿真芯片的 31 腳( /EA)已接至高電平,所以仿真時(shí)只能使用片內(nèi) ROM,不能使用片外 ROM;但 仿真器 外引插針中的 31 腳并不與仿真芯片的 31 腳相連,故該仿真器仍可插入到擴(kuò)展有外部 ROM(其CPU 的 /EA引腳接至低電平)的目標(biāo)系統(tǒng)中使用。 ( 1) 用 Keil軟件編寫程序 ( 2) 編譯和生成 hex文件,如圖 52 圖 52 編譯生成 hex文件 19 打開 Proteus,設(shè)計(jì)硬件電路圖,見圖 53 X T A L 218X T A L 119A L E30EA31P S E N29RS T9P 0 .0 /A D 039P 0 .1 /A D 138P 0 .2 /A D 237P 0 .3 /A D 336P 0 .4 /A D 435P 0 .5 /A D 534P 0 .6 /A D 633P 0 .7 /A D 732P 1 .0 /T 21P 1 .1 /T 2 E X2P 1 . 23P 1 . 34P 1 . 45P 1 . 56P 1 . 67P 1 . 78P 3
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1