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

正文內(nèi)容

畢業(yè)設(shè)計(論文)-基于51單片機(jī)的低成本音樂門鈴設(shè)計-免費閱讀

2025-07-22 10:16 上一頁面

下一頁面
  

【正文】 Tone=Sound[Point]。 BeepIO=0。 //算出不發(fā)音的長度 if (SL!=0){TR0=1。LDiv=LDiv0/SLen。 //高音Temp_T = 65536(50000/CurrentFre)*10/(12022000/SYSTEM_OSC)。 // 普通音最長間隔標(biāo)準(zhǔn) TR0 = 0。}SoundLength = 0。for(i=0。EA = 1。 // 計算TL1 應(yīng)裝入的初值 (10ms 的初裝值)Sound_Temp_TL1 = (65535(1/1200)*SYSTEM_OSC)%256。 //定義輸出管腳sbit key=P3^7。 末尾:0,0 表示結(jié)束(Important) 音高由三位數(shù)字組成: 個位是表示 1~7 這七個音符 十位是表示音符所在的音區(qū):1低音,2中音,3高音。if(key==0)Play(Music_Girl,0,3,360)。i++)for(j=0。沒有李優(yōu)新老師的幫助也就沒有今天的這篇論文。所以,主要考慮到的是如何在播放完一首歌曲后,進(jìn)入在此等待狀態(tài)。 軟件調(diào)試與實現(xiàn)程序主要取自一個音樂播放程序,但沒有功率放大部分,更沒有多音樂輪流播放部分,按鈕部分。 TL0 = Sound_Temp_TL0 + 12。 //計算出高低音 SH=Tone/100。TR0 = 0。初始化函數(shù)是對芯片端口進(jìn)行初始化操作,以確定中斷模式以及端口初始值,程序如下:void InitialSound(void){BeepIO = 0。}}}}}延時程序部分。while(1){if(key==0){Delay1ms(10)。準(zhǔn)備調(diào)用初始化程序讀 P3 口,判斷有無按鍵按下 調(diào) 用 初 始 化 程 序 調(diào)用延時子程序讀 P3 口,判斷有無按鍵按下 調(diào) 用 初 始 化 程 序 調(diào)用延時子程序調(diào)用延時子程序調(diào)用播放子程序調(diào)用播放子程序讀 P3 口,判斷有無按鍵按下 調(diào) 用 初 始 化 程 序 讀 P3 口,判斷有無按鍵按下 調(diào) 用 初 始 化 程 序 讀 P3 口,判斷有無按鍵按下 調(diào) 用 初 始 化 程 序 讀 P3 口,判斷有無按鍵按下 調(diào) 用 初 始 化 程 序 調(diào)用播放子程序圖 程序控制流程圖 主程序設(shè)計本系統(tǒng)首先建立音樂,把音樂的音符找出,建立各個音符的常數(shù)表,如下圖 :圖 音符常數(shù)表編寫程序時,我們把表建立在一個數(shù)組內(nèi),每個發(fā)音符使用一個字節(jié),字節(jié)高四位(簡譜碼)代表音符的高低,低四位(節(jié)拍碼)代表音符的節(jié)拍?,F(xiàn)代電子系統(tǒng)的基本核心是嵌人式計算機(jī)系統(tǒng),而單片機(jī)是最典型、最廣泛、最普及的嵌入式系統(tǒng)。作單端輸人時,閑置的輸入端不要懸空而要接地。其典型應(yīng)用電路如圖 所示。但在 1 腳和 8 腳之間增加一只外接電阻和電容,便可將電壓增益調(diào)為任意值,直至 200。ATMEL89 系列單片機(jī)具有下列優(yōu)點:內(nèi)部含 Flsah 存儲器,在系統(tǒng)開發(fā)過程中,可以十分容易進(jìn)行程序的修改,大大縮短了系統(tǒng)的開發(fā)周期 [9]。 當(dāng)前 比 較 流 行 的 Protel 9 Protel 99 SE, 就 是 它 的 前 期 版 本 。要產(chǎn)生音頻林沖,只要算出某一音頡的周期 T,將此周期 T 除2.即為畢周期的時間。拍子的時值是一個相對的時間概念,比如當(dāng)樂 曲的規(guī)定速度為每分鐘 60 拍時,每拍占用的時間是一秒,半拍是二分之一 秒;當(dāng)規(guī)定速度為每分鐘 120 拍時,每拍的時間是半秒,半拍就是四分之一 秒,依此類推。在音樂中音符 1 與音符 2,音符 2 與音符 3……等等之間正好相差一個倍頻程,在音樂學(xué)中稱它相差一個八度音。通過單片機(jī)的定時器進(jìn)行定時中斷,在中斷服務(wù)程序中將單片機(jī)上完結(jié) LM386 的 I/O 口來回置高電平或者是低電平的,從而讓揚(yáng)聲器發(fā)出聲音。 [3]以 STC89C52RC 為核心,加上芯片最小系統(tǒng)電路,按鈕,外圍電源,LM386 功放電路,揚(yáng)聲器電路組成。LM386 是美國國家半導(dǎo)體公司生產(chǎn)的音頻功率放大器,主要應(yīng)用于低電壓消費類產(chǎn)品。 分析功能要求本設(shè)計要求是要完成低成本音樂門鈴設(shè)計,芯片可采用 51 芯片,89C51 是一種帶 4K 字節(jié)閃爍可編程可擦除只讀存儲器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低電壓,高性能 CMOS 8 位微處理器,俗稱單片機(jī)。 題目研究方法充分調(diào)查研究并且認(rèn)真深刻學(xué) 51 芯片功能以及使用方法,掌握單片機(jī)應(yīng)用系統(tǒng)的開發(fā)流程、硬軟件系統(tǒng)設(shè)計以及相關(guān)工具軟件的使用方法,同時對被控的實際應(yīng)用對象有更深入的了解,達(dá)到學(xué)以致用、系統(tǒng)地整合所學(xué)專業(yè)知識的目的,達(dá)到設(shè)計的系統(tǒng)抗干擾能力強(qiáng)、穩(wěn)定可靠、成本低廉、使用方便,滿足相關(guān)的功能要求。隨著單片機(jī)技術(shù)的飛速發(fā)展,通過單片機(jī)實現(xiàn)人們對物質(zhì)生活的滿足,這將會日益成為今后的一個重要發(fā)展的方向 [1]。擴(kuò)展部分由主程序,音樂曲目以及歌曲數(shù)組函數(shù)組成。本論文的設(shè)計就是圍繞低成本音樂門鈴進(jìn)行研究開發(fā)。先用 c 語言編寫實現(xiàn)音樂門鈴的程序代碼,然后將 c 語言用 keil 軟件生成 hex 文件下載到 stc89c51 集成芯片中,利用不同的頻率發(fā)出不同的音調(diào),利用延時產(chǎn)生不同的節(jié)拍,通過功率放大器傳送到喇叭使其發(fā)出美妙的音樂。在這些領(lǐng)域中,單片機(jī)起到了舉足輕重的作用,這就把單片機(jī)的應(yīng)用提升到重要的地位,單片機(jī)應(yīng)用系統(tǒng)設(shè)計就成為新的技術(shù)熱點。經(jīng)了解,現(xiàn)在市場上所有銷售的門鈴主要有以下幾種:敲擊式電子音樂門鈴,采用聲控觸發(fā)電路和音樂集成電路組成,通過一個可調(diào)電阻來控制喇叭的靈敏度,一個電容快速充電來維持后續(xù)工作;不用按鈕的音樂門鈴,采用紅外線發(fā)射接收電路和自激多諧振蕩電路構(gòu)成,蕩發(fā)出的紅外線被人遮擋住的一瞬間,揚(yáng)聲器就發(fā)出有沒動聽的音樂;帶們演示電路的音樂門鈴,采用低功耗交流繼電器 TLP3502 和高頻小功率管組成。日后可在此基礎(chǔ)上進(jìn)一步完善,如增加語音防盜報警功能、有人無人語音門鈴切換功能,甚至增加可視對講功能等。AT89C 單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。通過控制定時器的定時時間來產(chǎn)生不同頻率的方波,驅(qū)動喇叭發(fā)出不同音階的聲音,再利用延遲來控制發(fā)音時間的長短,即可控制音調(diào)中的節(jié)拍。音調(diào)表示一個音符唱多高的頻率。 大體上,2022 赫茲以下的低頻純音的音調(diào)隨響度的增加而下降,3000 赫茲以上高頻純音的音調(diào)隨響度的增加而上升。如果單片機(jī)采用定時器為工作方式 1,它以振蕩器的十二分頻信號為計數(shù)脈沖。Atmel公司的生產(chǎn)的AT89C51單片機(jī)是一種低功耗/ 1氐電壓、高性能的8位單片機(jī),內(nèi)部除CPU外,還包括128字節(jié)RAM ,4個 8位并行I/O口,5個中斷優(yōu)先級,2層中斷嵌套中斷,2個16位可編程定時計數(shù)器,片內(nèi)集成4K 字節(jié)可改變程序Flash 存儲器,具有低功耗,速度快,程序擦寫方便等優(yōu)點,完全滿足本系統(tǒng)設(shè)計需要。只要一按下按鈕,就會有音樂播出,等一首歌播放完畢后,當(dāng)再次按下按鈕,就會播放下一首音樂,如此循環(huán),知道再次出現(xiàn)第一首音樂為止。單片機(jī)控制系統(tǒng)的核心器件是單片機(jī)芯片,它提供的功能和資源對整個應(yīng)用系統(tǒng)所需要的支持電路、接口硬件設(shè)計以及軟件程序設(shè)計起著關(guān)鍵的作用。它具有下列主要功能:圖 51 芯片引腳圖其最小系統(tǒng)電路如圖 所示:圖 最小系統(tǒng)電路其最小系統(tǒng)實物電路如圖 所示:圖 最小系統(tǒng)實物電路圖 音樂功放電路設(shè)計LM386 引腳圖,特性及典型功放電路和芯片使用方法與自激嘯叫防治措施介紹。LM386 音響功放是由 NSC 制造的,它的電源電壓范圍非常寬,最高可使用到 15V,消耗靜態(tài)電流為 4mA,當(dāng)電源電壓為 12V 時,在 8 歐姆的負(fù)載情況下,可提供幾百 mW 的功率。高頻自激。圖 防高頻自激電路原理圖4 系統(tǒng)軟件設(shè)計本設(shè)計需要用到的軟件都是大眾一般使用的軟件,具有方便簡易快捷的優(yōu)點,程序用 C 語言編程,也是編程的主流語言,方便日后修改與調(diào)試。掌握 Keil 軟件的使用對于使用 51 系列單片機(jī)是十分必要的,即使不使用c 語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強(qiáng)大的軟件仿真調(diào)試工具也會令單片機(jī)開發(fā)事半功倍。主文件程序由主程序、延時程序以及歌曲程序組成。do{}while(key==1)。j120。TMOD |= 0x11。 TL0 = Sound_Temp_TL0。//計算計數(shù)器初值Sound_Temp_TH0 = Temp_T/256。由于本人焊接技術(shù)不到位,常常出現(xiàn)短路問題,在第一次焊接完成后,多出出現(xiàn)短路,最后用萬用表蜂鳴檔位逐點測試,在重新焊接。并且利用一個名為 MusicEncode 的軟件,可以把基本上所有的音符都轉(zhuǎn)化為 16 位的二進(jìn)制編碼,大大提高了編程效率。畢業(yè)設(shè)計還是本科學(xué)習(xí)階段一次非常難得的理論與實際相結(jié)合的機(jī)會,通過這次比較完整單片機(jī)設(shè)計,我擺脫了單純的理論知識學(xué)習(xí)狀態(tài),和實際設(shè)計的結(jié)合鍛煉了我的綜合運(yùn)用所學(xué)的專業(yè)基礎(chǔ)知識,解決實際工程問題的能力,同時也提高我查閱文獻(xiàn)資料、設(shè)計手冊、設(shè)計規(guī)范以及電腦制圖等其他專業(yè)能力水平,而且通過對整體的掌控,對局部的取舍,以及對細(xì)節(jié)的斟酌處理,都使我的能力得到了鍛煉,經(jīng)驗得到了豐富,并且意志品質(zhì)力,抗壓能力及耐力也都得到了不同程度的提升。 謝謝我的父母,沒有他們辛勤的付出也就沒有我的今天,在這一刻,將最崇高的敬意獻(xiàn)給你們! 本文參考了大量的文獻(xiàn)資料,在此,向各學(xué)術(shù)界的前輩們致敬!附錄 A 主文件程序include include void Delay1ms(unsigned int count){unsigned int i,j。//有只雀仔跌落水 unsigned char code Music_Two[] ={0x19,0x02, 0x1A,0x03, 0x19,0x03, 0x18,0x02, 0x17,0x02, 0x18,0x02, 0x19,0x00, 0x16,0x02, 0x17,0x02, 0x18,0x01, 0x17,0x02, 0x18,0x02, 0x19,0x01, 0x19,0x02, 0x1A,0x03, 0x19,0x03, 0x18,0x02, 0x17,0x02, 0x18,0x02, 0x19,0x00, 0x16,0x01, 0x19,0x01, 0x17,0x02, 0x15,0x00, 0x00,0x00 }。if(key==0){Delay1ms(10)。|升降八度(13) : 1:降八度, 2:不升不降, 3:升八度。 //音符定時器初值暫存 unsigned char Sound_Temp_TH1,Sound_Temp_TL1。ET1 = 0。 //新的頻率表unsigned char i,j。}elseNewFreTab[i] = FreTab[j]。 // 讀出第一個音符和它時時值LDiv0 = 12022/Speed。 //計算出是否升半 CurrentFre = NewFreTab[SignTab[SL1]+SH]。 //加 12 是對中斷延時的補(bǔ)償 }SLen=LengthTab[Length%10]。 //算出頓音的演奏長度 elseLDiv1=LDiv。TL1 = Sound_Temp_TL1。TL1 = Sound_Temp_TL1。}//**************************************************************************endif。i) //音符間的間隔{while(TF1==0)。i) //發(fā)規(guī)定長度的音 {while(TF1==0)。elseLDiv1=LDiv*SOUND_SPACE。 TH0 = Sound_Temp_TH0。 //計算出音符 SM=Tone/10%10。Tone = Sound[Point]。if(j 11){j = j1
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1