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

正文內(nèi)容

畢業(yè)設計-基于at89c51單片機的電子琴設計-文庫吧

2024-11-11 19:12 本頁面


【正文】 來產(chǎn)生不同的頻率非常方便,我們可以利用單片機的定時 /計數(shù)器 T0 來產(chǎn)生這樣方波頻率信號 ,因此,我們只要把一首歌曲的音階對應頻率關(guān)系正確即可 。 利用 AT89C51 的內(nèi)部定時器使其工作計數(shù)器模式( MODE1)下,改變計數(shù)值 TH0 及TL0 以產(chǎn)生不同頻率的方法產(chǎn)生不同音階,例如,頻率為 523Hz,其周期 T= 1/523= 1912μs ,因此只要令計數(shù)器計時 956μs/1μs = 956,每計數(shù) 956 次時將 I/O反相,就可得到中音 DO( 523Hz)。 計數(shù)脈沖值與頻率的關(guān)系式 (如式 21 所示 )是: N =fi247。2247。fr 21 式中, N 是計數(shù)值; fi 是機器頻率(晶體振蕩器為 12MHz 時,其頻率為 1MHz);fr 是想要產(chǎn)生的頻率。 其計數(shù)初值 T 的求法如下: T= 65536- N= 65536-fi247。2247。fr 例如:設 K= 65536, fi= 1MHz,求低音 DO( 261Hz)、中音 DO( 523Hz)、9 高音 DO( 1046Hz)的計數(shù)值。 T= 65536- N= 65536- fi247。2247。fr = 65536- 1000000247。2247。fr = 65536-500000/fr 低音 DO 的 T= 65536- 500000/262= 63627 中音 DO 的 T= 65536- 500000/523= 64580 高音 DO 的 T= 65536- 500000/1046= 65059 本系統(tǒng)按鍵發(fā)出對應音符模塊軟件流程圖如下: 5 系統(tǒng)使用說明 系統(tǒng)安裝及配置 說明 WINDOWS XP PROTEUS SP2 Keil uv3 安裝 Protues 和 keil uVsision3。 10 系統(tǒng)操作說 明 ( 1) Keil 下編譯,產(chǎn)生目標 HEX 文件, Proteus 下 Programme Files 選擇產(chǎn)生的 HEX文件,點擊運行開始模擬。 ( 2) 開啟本系統(tǒng),數(shù)碼管顯示“ ”。 ( 3) 按任意鍵盤,數(shù)碼管顯示所按下的鍵盤數(shù),揚聲器發(fā)出相應的音符。 6 結(jié)論 通過這次課程設計,我學到了不少課本上沒有的知識,也鍛煉了自己的動手能力,將以前學過的零散的知識串到一起。經(jīng)過我長時間的設計及調(diào)試,本系統(tǒng)基本能實現(xiàn)按下鍵盤矩陣中的按鍵會使數(shù)碼管顯示當前按鍵,揚聲器播放對應的音符。但由于仿真系統(tǒng)原因,本設計音頻效果不是很好。 不足 之處有: 的音符數(shù)較少,只能在一定范圍內(nèi)滿足用戶需要。可通過改進鍵盤識別模塊和發(fā)生模塊來增加 其復雜度 。 我的綜合設計主要涉及硬件和軟件兩方面的內(nèi)容,通過這些我的硬件和軟件開發(fā)能力都獲得了提高。首先硬件方面,基本了解了電子產(chǎn)品的開發(fā)流程和所要做的工作?;菊莆樟?Protel99SE 原理圖的方法,并設計了一個單片機最小系統(tǒng)。通過開發(fā)板的設計和硬件搭建的過程,使我對 51 系單片機的接口有了更深層次的理解,熟悉了一些單片機常用的外圍電路引腳和連接方法,如 LED 數(shù)碼管,鍵盤等。 并且我學會了分析問題 解決問題的能力,加深了對所學理論知識的理解和運用。我的動手能力得到了很大的提高,創(chuàng)新意識得到了鍛煉。 11 參考文獻 [1] 彭偉 .單片機 C 語言程序設計實訓 100 例 .電子工業(yè)出版社 .2021 年 [2] 吳運昌.模擬電子線路基礎.廣州:華南理工大學出版社, 2021 年 [3] 閻石.數(shù)字電子技術(shù)基礎.北京:高等教育出版社, 1997 年 [4] 張曉麗等.數(shù)據(jù)結(jié)構(gòu)與算法.北京:機械工業(yè)出版社, 2021 年 [5] 馬忠梅等. ARMamp。Linux 嵌入式系統(tǒng)教程.北京:北京航空航天大學出版社,2021 年 [6] 李建忠.單片 機原理及應用.西安:西安電子科技大學, 2021 年 [7] 韓志軍等 .單片機應用系統(tǒng)設計 [M].機械工業(yè)出版社, 2021 [8] 周潤景等 . Proteus 在 MCS51amp。ARM7 系統(tǒng)中的應用百例 [M].電子工業(yè)出版社,2021 [9] 馬忠梅等 .單片機的 C 語言應用程序設計 [M].北京航空航天大學出版社, 2021 [10] 劉樹中,孫書膺,王春平 .單片機和液晶顯示驅(qū)動器串行接口的實現(xiàn) [J].微計算機信息, 2021 12 附錄 本系統(tǒng)總體代碼如下: include define uchar unsigned char define uint unsigned int uchar code DSY_Table[]= {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80, 0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xBF}。 uint code Tone_Delay_Table[]= {64021,64103,64260,64400,64524,64580,64684,64777, 64820,64898,64968,65030,65058,65110,65157,65178}。 sbit BEEP=P3^0。 uchar KeyNo。 void DelayMS(uchar x) { uchar i。 while(x) for(i=0。i120。i++)。 } void Keys_Scan() { uchar Tmp,k。 P1=0x0F。 DelayMS(2)。 Tmp=P1^0x0F。 switch(Tmp) { case 1:k=0。break。 case 2:k=1。break。 case 4:k=2。break。 case 8:k=3。break。 default:return。 } P1=0xF0。 DelayMS(2)。 Tmp=(P14)^0x0F。 switch(Tmp) { case 1:k+=0。break。 case 2:k+=4。break。 case 4:k+=8。break。 13 case 8:k+=12。break。 default:return。 } KeyNo=k。 } void play_Tone() interrupt 1 { TH0=Tone_Delay_Table[KeyNo]/256。 TL0=Tone_Delay_Table[KeyNo]%256。 BEEP=~BEEP。 } void main() { P0=0xBF。 TMOD=0x01。 IE=0x82。 while(1) { P1=0xF0。 if(P1!=0xF0) { Keys_Scan()。 P0=DSY_Table[KeyNo]。 TR0=1。 } else { TR0=0。 } DelayMS(2)。 } } 1 目 錄 摘要 ................................................................................................................................ 1 1 引言 .............................................................................................................................2 目的和意義 .........................................
點擊復制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1