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

正文內(nèi)容

畢業(yè)設(shè)計-基于at89s52單片機的電子琴設(shè)計-閱讀頁

2025-01-28 02:22本頁面
  

【正文】 生成、軟件仿真、硬件仿真等完整的開發(fā)流程尤其是 C 編譯工具在產(chǎn)生代碼的準確性和效率方面達到了較高的水平,而且可以附加靈活的控制選項,在開發(fā)大型項目時非常理想。 利用 AT89S52 的內(nèi)部定時器 T0 使其工作計數(shù)器模式( MODE1)下,改變計數(shù)值 TH0 及 TL0 以產(chǎn)生不同頻率的方法產(chǎn)生不同音階。 通過開關(guān)控制其播放。 9 音階鍵識別 七段 LED 顯示器內(nèi)部由七個條形發(fā)光二極管和一個小圓點發(fā)光二極管組成,根據(jù)各管的極管的接線形式,可分成共陰極型和共陽極型。 本系統(tǒng)按鍵顯示模塊軟件流程圖如下: 圖 31 音階顯示流程 10 開始 是否有按鍵按下 do、 re、 m、 fa、so、 la、 si、do 是鍵按下 是否有音鍵按下 檢測是高中低按下 是 1? 是否為 1 TR0 置 0 節(jié)拍延時 置 1TR1 置 1 置 0TR1 置 0 相應(yīng)的數(shù)值減一 do re m fa so la si doTRO 置 1TR1 置0 執(zhí)行 T0 中斷 系統(tǒng) 總流程圖 圖 32 總流程圖11 4 Proteus 軟件仿真 程序仿真 在系統(tǒng)設(shè)計中采用模塊設(shè)計法,所以方便對各電路模塊功能進行逐級測試:中心控制模塊的調(diào)試,音樂播放模塊的調(diào)試,按鍵控制模塊的調(diào)試等,最后將各模塊組合后進行整體測試。然后通過 Keil 軟件對編好的程序進行調(diào)試,檢查語法錯誤。 其中 keil 的運行截圖如下: 圖 41 程序運行 proteus 仿真 首先,嘗試仿真模擬,低音曲調(diào)。低音的頻率最低,故最先實現(xiàn)。據(jù)觀察,實現(xiàn)方便。嘗試比較,同一音符的不同音調(diào)即可辨別中低音的區(qū)別。如圖 43,中音顯示。與低音、中音相比較,便可分辨出。仿真結(jié)果顯示 2。雖然有點小模糊,但是依稀可以辨別歌曲。再次按住,實現(xiàn)重新播放。 圖 45 歌曲播放 14 電子琴的關(guān)鍵功能是能彈奏樂符,上述仿真已經(jīng)完成了高中低音和內(nèi)置歌曲播放。音符有 7 個,分別是 1, 2, 3, 4, 5,6, 7,形聲以 DO、 RA、 M、 FA、 SO、 LA、 SI 試音。再分別用高、中、低音發(fā)聲,分別聽取不同的音調(diào)。另外,一個微動開關(guān)的動合實現(xiàn)內(nèi)置歌曲和彈奏的切換。 本次報告截取音階 7 的 Proteus 仿真圖。 圖 46 音階 7 的仿真 15 5 課程設(shè)計體會 通過這次單片機課程設(shè)計,我們加深了對單片機理論的理解,將理論很好的應(yīng)用到實際當中去。 這次單片機課程設(shè)計, 讓我有不小的收獲。對于這次單片機綜合課程設(shè)計,我的第一大心得體會就是作為一名工程技術(shù)人員,要求具備的首要素質(zhì)絕對應(yīng)該是嚴 謹。 在做人 處事 上,我認識到,無論做什么事 情,只要你足夠堅強, 有足夠的毅力和決心,有足夠的挑戰(zhàn)困難的勇氣,就沒有什么辦不到的;同學(xué)們相互幫助,可以進步很快,團隊協(xié)作真的很重要,幫助他人可以有更多成就感,獲得更大的快樂。發(fā)現(xiàn)、提出、分析、解決問題和實踐能力提高都會受益于我在今后的學(xué)習、工作和生活中。 2. 本實驗要充分了解電子琴的程序, 清楚每個模塊功能,認真按照步驟 編譯 、鏈接、運行以生成可執(zhí)行文件,并將此文件植入 AT89S52 中進行仿真。我們認真演示 原理,畫出程序流程圖,通過源程序,做出電路圖,在仿真中發(fā)現(xiàn)很多問題,通過仔細研究,不但解決了問題,還學(xué)到了在平時的學(xué)習中學(xué)不到的東西。 5. 在焊接實物過程中應(yīng)合理布局各元件,不僅要實現(xiàn)功能而且還要美觀。 void KeyScan(void)。 void delay_1ms(uchar i)。 void DisPlay(void)。//蜂鳴器接口 uchar Th0,Tl0。//模式 ,0 表示音樂 ,FF 表示按鍵 uchar key=0。//顯示 uchar gaodi=0。//歌曲 所用頻率 uchar code Music[]={0X36,0X22,0X14,0X54,0XAC,0X92,0XA2,0X96,0X0A2, 0X96,0X82,0X3C,0X54,0X36,0X22,0X14,0X54,0XAC,0X92,0XA2,0X16,0X12,0X14,0X22, 0X32,0X2C,0X02,0X82,0X16,0X32,0X56,0X12,0XA6,0X32,0X56,0X52,0X66,0X72,0XB6, 0X62,0X62,0X52,0X58,0X32,0X22,0X16,0X12,0X14,0X32,0X22, 0X16,0X12,0X14,0X22,0X32,0X26,0X92,0XA4,0X12,0X22,0X1C, 0XFF}。//高中低 頻率 //*************主程序 ************// void main(void) { P0=0XFF。 TMOD=0X01。//邊沿觸發(fā)方式 TR0=0。// 允許外部中斷 0 中斷 ET0=1。//CPU 開放 總 中斷 18 while(1) { KeyScan()。 Run()。 else PlayKey()。//按鍵消抖 if(P0==0X7f)//確實按下 gaodi++。 a=gaodi。 if(P0==0XFE) key=1。 } else if(P0==0XFD)// 口所接按鍵按下 { delay_1ms(12)。 19 a=key。 if(P0==0XFB) key=3。 } else if(P0==0XF7)// 口所接按鍵按下 { delay_1ms(12)。 a=key。 if(P0==0XEF) key=5。 } else if(P0==0XDF)// 口所接按鍵按下 { delay_1ms(12)。 a=key。 if(P0==0XBF) key=7。 } else 20 return。 else { Th0=KeyCode[gaodi*14+key*2]。 TR0=1。//1/4 拍的延時 187ms TR0=0。 } } time0() interrupt 1 { TH0=Th0。 Beep=~Beep。//模式取反 if(flag==0) { a=8。 } } //*延時模塊 *// void delay_1ms(uchar i) { uchar j,k。ji。k148。 } //*音樂播放模式 *// void PlayMusic(void) { uchar yinfu,jiepai。 for(i=0。i++) { yinfu=(Music[i]4)。0X0f)。j0。 } continue。 Tl0=MusicCode[(yinfu1)*2+1]。 for(j=jiepai。j) {delay_1ms(187)。 if(flag!=0) break。break。break。break。break。break。break。break。break。b
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1