




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
基于單片機的遙控電子琴的設計與實現目錄TOC\o"1-2"\h\z\u1.引言 11.1選題的背景 11.2研究的意義 22.系統總體方案設計 22.1功能要求 22.2設計思路 22.3總體設計框圖 33系統硬件設計 43.1概述 43.2主控模塊設計 43.3鍵盤模塊設計 53.4揚聲器模塊設計 63.5數碼管顯示電路 63.6紅外遙控模塊設計 63.6.3紅外信號接受電路 74.系統軟件設計 84.1主程序設計 84.2播放一個音調值的設計 124.3播放一首歌曲的流程圖 124.4接受紅外遙控信號的設計 135.系統安裝與調試 145.1系統的安裝步驟 145.2系統的調試 156.結語 15參考文獻 15摘要:本論文較為簡單的介紹了遙控電子琴的設計原理,在文中給出來STC89C52作為整個設計中最為重要的地位。以簡單電子琴為基礎添加了紅外遙控,在本文中也詳細介紹了如何利用紅外發射裝著和紅外接受裝置可以在相隔甚遠的地方也可以控制的原理。并且在遙控電子琴上添加了音樂盒的設計,同時可以通過按鍵來控制音樂的切換和播放或者暫停。關鍵詞:電子琴無線遙控STC89C521.引言伴隨著現如今各種技術與社會科學的飛速發展,人們對當下的生活品質有了更為細致化的需求,為了增加人們對生活的體驗,以便捷人們的生活,所以對各種電子產品、家用電器的自動化控制的要求也是在逐步提高。隨著電子技術的發展,如何提高電子技術在生活中普遍應用以便于提供人們在閑暇時期額外的一點樂趣,現代的電子技術與古典音樂的結合在一直進行著融合,由此而誕生的遙控電子琴系統,因其體積較小,攜帶較為便利,經濟適用較好,是一般的家庭都可以承受的經濟支出。而且電子琴操作簡單,可以使得人們快速提高電子琴的普及率,并且在電子琴的基礎上添加了遙控器的設計。1.1選題的背景伴隨著現如今社會的發展和現代人生活水平的提升,在人們生活和工作中,住宅的安全防護、該電子鍵盤基于STC89C52單片機作為其基本控制芯片。在選擇喇叭時,選擇了功能強大的LM386放大器,再加上揚聲器的組合,最常用的蜂鳴器被丟棄。此選項的目的是因為聲音質量比使用簡單的蜂鳴器要好得多,T0與51微控制器限時器的結合可以有幾個不同的頻率脈沖,從而產生許多不同的頻率音符。功能鍵盤使用通用鍵開關,具有獲取I0端口控制器和微控制器的關鍵狀態,以便通過更改和暫停狀態來實現歌曲的來回切換。此外在對紅外接受系統上采用了紅外一體接受頭VS1838接受來自紅外遙控發出的信號,通過51單片機的外部中斷INT0來進行對紅外信號的解碼,從而來接受紅外遙控進行的遠程無線控制。顯示設備使用單個共陽極數字通道,51微控制器的P0端口用于提供顯示器所需的數字信號,可通過查看數字顯示頻道上顯示的數字來查看當前正在播放的歌曲的信號。在此設計中,最重要的是使用板上的功能鍵剪切和暫停上一首和下一首歌曲,或者使用紅外遙控器上的按鈕控制歌曲選擇,然后由單片機發送歌曲選擇方波頻率信號,經由功率芯片放大器到揚聲器推到輸出不同的頻率,在同一時間,正在播放的數碼管顯示的歌曲數量。隨著當今人類社會的發展,社會越來越重視感知和聽覺的感知。掌心大的電子鋼琴可以帶回過去的美好生活的回憶,沉浸在現在的有趣生活中,并且在演奏時希望將來有更好的生活,從而增強了社會的精神和文化意識。1.2研究的意義首先作為一名電子信息科學與技術專業的學生,制作電子琴和遙控器的組合不為是一個很好的方式去檢驗我們對所學知識的一種好的檢驗。在制作的過程中所包含的知識點基本包含了模擬電路,數字電路,電路分析技術,單片機基礎及接口技術等專業課的程的基本章節。其次,單個微型計算機是隨著大規模集成技術的發展而開發出來衍生的產品。其中包括第四代電子計算機。具有效率較高,體積較小,成本較低,穩定性較強,適用范圍較廣等特點。這些應用程序可能會導致傳統的監控技術從基層轉變。因此,基于單片機紅外遙控的開發與實現已成為高科技發展的主要課題。接著紅外遙控器是一種在如今的家用電氣和各種儀表儀器種被大量廣泛應用,在了解其發射和接受的編碼脈沖信號之后,結合集成度較高的51單片機,一起組成了體積較小、質量較輕的紅外遙控器。用此遙控器控制另一個設備的數碼管顯示和聲音的輸出。最后,電子琴在現代音樂中也發揮著舉足輕重的作用,單片機具有更為強大的控制能力和更為流暢的編程操作。一首音樂由各種音階組成,每個音節以不同的頻率印刷。我們可以將音樂的音調和音節轉換成可以傳輸信息的頻率,然后通過播放器播放這些頻。2.系統總體方案設計為了能準確的實現遙控電子琴的設計,對遙控電子琴設計中所需要的功能與設計思路進行討論。2.1功能要求設計并制作一個功能相對穩定,外觀相對簡單的電子琴,基本要求有:功能一:使用TH0和TL0兩個定時器,通過控制定時器來發出所需要的音調。功能二:根據對音調和節拍的控制達到輸出一首歌曲的目的。功能三:數碼管可以顯示當前輸出的音調和歌曲。功能四:可以通過控制電子琴模塊上面的按鍵控制下一首音樂,上一首音樂和控制暫停和播放以及電子琴和音樂盒之間的切換。功能五:可以通過紅外遙控器控制電子琴發出對應的高中低音,電子琴和音樂盒之間的切換,并控制音樂盒切換到上一首和下一首歌曲,暫停與播放和按下數字按鍵可以直接跳轉到與數字相對應的歌曲。2.2設計思路 基于STC89C51單片機設計遠程電子琴。鍵盤模塊上有5個鍵,分別是復位按鍵,音樂盒和電子琴切換按鍵,控制暫停與播放的按鍵,控制切換上一曲以及下一曲的按鍵等。同時具備有紅外遙控的無線控制功能。揚聲器是由功放LM386芯片來驅動并切可以根據從單片機的引腳來發出聲音信號來發出聲音。數字管則可以顯示正在播放歌曲的序列號。 一首音樂是以不同的音階來組成,不一樣的音調以對應于不一樣的頻率,所以我們可以通過將這些不同頻率的音調與節拍對應起來就可以組成我們所需要的音樂。對于51單片機而言產生不同的頻率只需要通過控制定時計數器TH0和TL0即可達到所需要的效果。2.2.1電源選擇方案方案一:本系統所使用的是5VUSB電源。這種電源具有更為穩定的電流和相對適應的電壓輸出性能。它可以用手機的充電器,計算機的USB端口,移動電源等來進行支持。方案二:采用比較方便更換的干電池。經過系統變壓處理后,將電流供給遙控電子琴并且干電池也存在這便于購買和價格相對便宜等優點。但干電池的電容量較低,還存在這可能會漏液損害整個系統的危險,并且過多的使用會導致環境進一步惡化。在上述兩個方案中,方案二不可取,方案一經實驗更為便捷、性能好,而且所需原件價格便宜,所以方案一可取。2.2.2顯示器選擇方案方案一:LED數字管用作系統內容的顯示端,并且LED結構設計有共陽極。該組件的串行輸入驅動器的公共陰極必須連接到系統微控制器的串行端口移位寄存器。而且控制該組件所需的代碼更少,適合編寫顯示器。如果在此設計中將此元素用作顯示屏,則成本較低且顯示內容非常直觀。方案二:該設計使用LCD1602LCD屏幕的電子組件,拉伯數字和英文字母都能適當的顯示在屏幕上,在科技的推動下半導體技術有了很大的發展。但是也存在著編寫較為困難,顯示較少的內容所需要編寫的代碼較多,使用此元件作為顯示模塊性價比較低。在兩種方案中,數碼管可以顯示的內容較多,但是數碼管顯示的工作內容簡單、功耗大;系統采用LED數碼管,該元器件在電壓低、低功耗的條件下,顯示較為清晰。在本系統中所需要顯示的東西比較少,一位共陽數碼管足夠顯示。2.2.3控制模塊的選擇方案方案一:如果采用DSP作為系統控制器。DSP(數字信號處理器)是一種特殊的微處理器,它是一種可以處理大量信號的設備。DSP對元器件值的容差并不敏感感,不受外界溫度和環境等外部因素的影響,更便于集成,可以復用時分和共享處理器,并可以輕松調整處理器系數以實現此系統的自適應。可以以非常低的電量來使用信號等優勢。然而,DSP硬件電路更復雜并且相對昂貴。數字系統是通過功能強大的有源設備來組成,無源設備是不可信任。方案二:另一種是通過單片來作為系統的主控芯片。單片機具有較高的可靠性,成本效益較低,所需電壓較低,功耗較低等優點,并且得到了當今社會迅速發展和廣泛推廣。并且單片機具有更為強大的算術運算能力,靈活的軟件編程和更為廣闊的自由度。可與用于通過軟件程序實現各種各樣的邏輯功能,比如計時器和計數器,可以作用于計時和計數,同時具有功耗較低,體積較小,成人計數和成本更低等多方面的優點。。通過對上述兩種方案在實用性,方便性和設計成本等方面的演示和比較,選擇了STC89C52單片機作為音樂盒設計的中央處理單元。2.2.4紅外接受頭的選擇方案方案一:采用紅外接受管是一個紅外接受管,他的作用僅僅只是檢測紅外信號,他外部只有兩個引腳,所以內部不存在集成電路,所以在使用的時候需要自行設計較為適合當前使用的電路。方案二:采用紅外接受器1838的內部包含有紅外檢測二極管,限幅器和積分電路以及放大器還有帶通濾波器等一些與放大電路想過的元器件。紅外檢測二極管不僅僅可以檢測各種不同頻率的紅外信號,還可以將這些信號運送到限制器以及放大器之中,限制器可以使得脈沖的幅度在一個固定的頻率之中進行浮動。而交流電進入到了帶通濾波器之中,帶通濾波器可以使頻率在30KHZ到60KHZ之間的負載波通過,在通過解調電路以及積分電路最終進入到了比較器之中,比較器可以通過輸出高低電平來還原發射段開始發射的信號波形。通過以上兩種方案的比較,因為紅外接受1838中自帶有放大路等一系列對紅外信號進行的各種操作,相比于紅外接受管在設計上更為簡單。所以選擇了1383作為接受頭。2.3總體設計框圖單片一共分為6個部分,分別為主要儲存代碼的單片機模塊,可以與人進行互動的按鍵模塊;遠程交互的紅外接受模塊;提供能量的電源模塊;顯示信息的數碼管模塊;和使得聲音放大的功法模塊。總體設計框圖如圖1所示。單片機最小系統數碼管模塊單片機最小系統數碼管模塊按鍵模塊功放模塊電源模塊紅外接收模塊圖1總體設計布局3系統硬件設計3.1概述遠程遙控電子琴的設計是通過以STC89C51單片機為核心,并連接不同的電阻,電容,晶體振蕩器等一系列的元器件共同組成單片機系統。一個12MHZ時鐘電路中可以使用51個單片機,使用定時器/計數器T0,在此系統種的工作模式為1,通過更改計數值TH0和TL0的數值,以達到產生所需要的不同頻率脈沖信號目的。鍵盤模塊上有5個按鈕,分別是:重置按鈕,音樂盒和鍵盤切換按鈕,用于控制暫停歌曲和播放歌曲的按鈕,用于調節在上一首歌曲和下一首歌曲切換的按鍵,等等。通過按下重置按鈕,可以激活重置電路,從而使遠程控制電子鍵盤再次處于活動狀態。此外電子鍵盤模塊還連接到VS1838一體式紅外接收器,此接收器是用來接收從紅外遙控器傳輸過來的紅外信號,并進一步控制電子鍵盤模塊的輸出部分分為兩部分。第一部分是聲音輸出部分,它是從微控制器的I/O端口之一以一定頻率輸出的聲音頻率脈沖,但是如果此音頻脈沖直接發送到揚聲器,則不會達到產生特定聲音的目的。是的,因為它并沒有提供足夠的驅動力。所以為了給予它足夠的驅動能力,增加了一個音頻放大器電路。在本設計中的電子鍵盤使用的是LM385美國國家半導體電子音頻放大器來獲得相對應音頻功率,并通過揚聲器來產生目標所需要的音調。第二個部分是數字管顯示的部分,最后通過選擇數字管陽極來顯示它現在需要顯示的東西。3.2主控模塊設計3.2.1STC芯片的簡介STC89C51是在市場上使用最為廣泛的單片機芯片。STC89C51是一款電壓所需電壓較低的芯片,系統中具有閃存程序存儲器的8位CPU。該芯片具有可讀的程序備忘錄,有8k閃存響應,并且具有256個隨機的數據存儲器。這些單片機通常使用的是Atmel易失性和高密度的存儲技術,與世界上規范標準的MCS-51指令系統相兼容,并且它具有一個8位的中央處理中心和Flash存儲組件。功能更為強大的STC89C52單片機可在許多不同的系統之中,可以在諸多控制系統市場中提供許多不同的服務.STC89C52芯片一共有40個引腳分布在芯片足有兩邊,32個雙向輸入/輸出(I/O)外部端口主要分為四個部分,在其中包含這2個外部中斷和3個16位可編程時間的計數器,以及2個全雙工串行通訊端口,此外還有2個讀寫端口。STC89C52一共具有三種不同的包裝形式:PDIP,PQFP/TQFP和PLCC,以此滿足各種不同產品的需求。3.2.2STC89C52單片機最小系統最小的單片機系統是單片機中最為簡單也是最為常見的系統,所有的最小系統都是需要晶體振蕩器電路,單片機和復位電路這三個部分。盡管此結構非常簡單,但該軟件仍可以實現可行的系統環境。3.2.3單片機的晶振電路與復位電路設計單片機的性能和性價比是當下最適合做硬件系統芯片的核心元器件,在本設計中所使用的單片機芯片是STC89C52。這兩個電路可以使芯片正常工作。單芯片STC微型計算機將使刻錄程序更加容易,并且不會產生外界噪音。這兩個電路的額外工作可以使系統完整和完善。晶振電路如圖2所示 STC89C51的各種性能和性價比都是當下選擇硬件系統核心部件最好的選擇,此芯片中有相互工作的晶振電路和復位電路,這兩個電路相互配合可以使芯片正常工作。51單片機的燒入相比于其他的芯片較為簡單,而且正因如此使得此芯片可的抗外界干擾能力更強。復位電路如圖3所示。 圖2晶振電路 圖3復位電路復位電路在51單片機上有非常重要的用處。這就像是重啟一臺計算機一樣。一旦某一計算機在使用過程中突然崩潰了,只要按下自帶的重新啟動按鈕,計算機內部的程序就會由工作狀態中重新到了初始狀態。這也適用于單片機。當單片機遇到各種內部或外部問題時,可以通過按復位按鈕將單片機恢復到初始狀態,以重新開始操作。復位電路包括電容器,電阻器和極性按鈕。電容器的電壓不可以突然發生改變以實現整個系統的正常啟動。在激活系統之后,微控制器的RESETPIN將提供高電平,此電路的持續時間是由整個電路的RC值來確定。常規的單片機類型的RESETPIN通過遇到兩個以上得發動機周期高電平以此來使整個電路進行復位,這樣相對應的RC值的組合用來達到復位控制的目的。在單片機系統中,晶體振蕩器電路使系統提供可以正常使用的信號。晶體振蕩器的電路類似于普通的振蕩電路,可以將正弦波信號提供給微控制器系統。晶體振蕩器電路主要為整個系統提供最重要的時鐘信號。在這種設計中,可以使用時鐘信號發出聲音。晶體振蕩器電路是由兩個相同的電容器和一個常見的晶體振蕩器來組成。在此處的電容器作用就是幫助晶體振蕩器使得整個電路更容易起振,較為常見的范圍在15-33PF之間。3.2.4外部電路設計因為STC89C52P0端口是一個開放通道輸出,所以在此設計中將10k排除項添加到P0端口,因此P0端口可以像其他任何I/O端口一樣正常使用。3.3鍵盤模塊設計鍵盤是人與微控制器之間最重要的交互模塊。首先,單片機中最常用的鍵盤是獨立鍵盤和矩陣鍵盤。獨立的鍵盤硬件設計相對簡單,程序設計也不復雜。它通常用于硬件電路不需要很多按鍵的電路中。在硬件設計和軟編程方面,矩陣鍵盤比其鍵更麻煩。但是它占用的端口較少,因此矩陣鍵盤更適合用于多鍵電路。第二個是小故障現象,無論是單個鍵還是矩陣鍵,都應消除。這里使用延遲掃描方法,并且延遲方法的原理非常簡單:“毛刺”脈沖的持續時間比被抑制的手指的持續時間短,因此,當單片機檢測到脈沖時,它將等待一段時間,然后檢查一下狀態可以維持,如果原來的狀態維持,這關鍵是真的,否則這是假的。在此設計中,使用的按鈕數量很少,只有四個按鈕,因此選擇了獨立按鈕模式。3.4揚聲器模塊設計LM386是一款工具放大器,具有低功耗,大電壓范圍,可調節的利潤和很少的外部組件。為了可以最大程度地減少外部組件的個數,所以內部電壓增益為20。可以在1和8引腳之間連接一個可以控制大小的電阻器或電容器,并且可以隨意選擇所需的增益值。由于可以使用揚聲器,因此需要電流較大,但單片機本身的電流是相對較小,所以LM386應加入以增加由I/O。創建在這部分電路中的電流,也被添加的電位計,在此設計中可以通過旋轉此電位器來調節聲級,以此來使整個設計更加人性化。揚聲器模塊設計如圖4所示。圖4揚聲器模塊3.5數碼管顯示電路LED數字燈管是相當便宜且容易的組件。通過將相應的電流插入不同的引腳,可以實現顯示信息的目的。LED數字管由八個發光二極管組成,二極管分別是由字母a,b,c,d,e,f,g和dp來表示的。當在這個數碼管的相對應得部分上施加適當的電壓時,該特定部分將發光并形成可見字。通常,LED數碼管具有靜態和動態兩種顯示模式。靜態控制顯示器所具有特點是顯示的內容穩定,亮度高,不閃爍,并且編程非常容易,但包含來自微控制器的I/O口擁有更多資源;動態控制顯示器的特性與靜態顯示器一樣不穩定,并且編程更加復雜,但是與靜態顯示器相比,它具有更少的I/O資源和更低的功耗。由于在此設計中使用數字管進行顯示,因此靜態顯示更易于選擇。3.6紅外遙控模塊設計紅外遙控器廣泛用于家庭中的所有類型的電器,并且其外觀為市場上的所有類型的電器提供了很多便利。現如今,最為常用的紅外遙控系統通常是由兩部分組成得:發射和接收。紅外接收器最重要的部分是紅外接收器管,其是一種類型的光敏二極管構成。在實際應用中,可以通過增加紅外二極管的反向偏置電壓來使用它,并且只有在電路中使用紅外接收二極管時,副作用才能達到相當高的靈敏度。3.6.1紅外線原理(1)紅外光可以按照波長范圍分成近紅外光、中紅外光和遠紅外光以及極紅外光共四類。(2)紅外遙控器使用得是近紅外光來發送控制的命令,其波長是在0.76?1.5um之間。(3)之所以使用近紅外光作為遠程光源,是因為目前,光與來自紅外發射器和紅外接收器之間的光之間的波長在0.8?0.94um之間,可以在此范圍內獲取。更高的傳輸效率和更準確的消息傳輸。3.6.2紅外通信標準1993年,成立了紅外數據協會(IrDA),參與會議的有因特爾以及惠普等的約20多家公司,它們共同通過了成立協議。在現代化的社會所擁有的通信方式的種類也是多種多樣的,在此設計中主要是用紅外線進行學習設計,并且他主要傳輸信息的方式是根據所接受數據的脈沖波形進行處理的,抓喲是讓波形進行編碼解碼工作,數據就而可以用這種工作方式來進行傳輸解碼,然后單片機就可以依據指令進行操作。紅外串行的規則日益完整規范,現在有了三個最為基本的協議和規范,這其中就有對物理層鏈路的規范,還有兩個鏈路的訪問以及鏈路的管理協議。3.6.2紅外信號發射設備紅外發射器設備主要包括的是紅外發射器電路,鍵盤電路和紅外編碼芯片以及電源。通常情況下,為了可以更好地傳輸信號,基帶的二進制信號最后會被調制為突發信號,并且這個信號可以通過紅外發送器管來發送到接收設備。通常情況下使用的是兩種調制方法:脈沖寬度調制,其取決于實現信號調制的脈沖寬度;以及脈沖定時調制,其取決于實現信號調制的脈沖序列之間的時間間隔。在同一遠程控制電路中,通常需要完成不同的遠程控制功能或區分不同類型的機器。這樣,必須以特定的編碼順序發送信號,并且將根據芯片或電路編碼來進行編碼。為了使傳輸數據的效率得到提升和傳輸的距離得到增強,提高整個系統的抗干擾能力,紅外信號會被調制在38KHZ的載波之后才會將其發射。載波的佔空比大概為1/3。紅外傳輸系統的數據包含著引導碼、用戶碼和數據碼以及數據反碼,編碼總共占32位。數據反碼使數據碼反相后得到的編碼,當數據傳輸之后可以用來對數據進行糾錯。如圖5所示。圖5紅外遙控數據碼3.6.3紅外信號接受電路紅外接收器電路是在所有紅外遠程控制系統中檢測命令信號的部分。通過1838集成的紅外接收器頭,可以完成所有工作,從紅外接收器到根據TTL電平信號輸出。VS1838上直接可以接收,放大和解調接受到的紅外信號。之后,接收到的信號可以再次轉發給單片機,單片機通過內部存儲的程序選擇接收到的信號,最后驅動相應的外部設備執行相應的動作。4.系統軟件設計4.1主程序設計4.1.1主程序流程圖本系統的軟件流程圖為圖6所示,在程序開始運行后首先判斷紅外遙控器或板子上的“暫停播放”鍵是否又被按下。若是當前狀態是暫停,此按鍵按下后,就會變為播放,數字管會將顯示目前所需要的歌曲序列號同時開始播放所需要的音樂;若是當前狀態是播放按下后就變為暫停。接下來判斷紅外遙控器或板子上的“上一曲”是否被按下,若是被按下則把當前歌曲變為上一首歌曲,立即更新數碼管顯示的數字。然后判斷紅外遙控器或板子上的“下一曲”是否被按下,若是被按下則把當前歌曲變為下一首歌曲,同時更新數碼管。接著判斷紅外遙控器或者是板子上的“電子琴音樂盒切換”按鍵,若當前是電子琴模式則切換為音樂盒模式,反正同理。最后是判斷紅外遙控器是否按下了數字按鈕,若是在電子琴模式下就會發出相對應的音調;若是在音樂盒模式下,歌曲將會切換到與編號對應的歌曲,并且更新數碼管顯示,然后開始新音樂。最后再一次進入最前面對按鍵進行判斷的部分。
是是是否結束遙控的數字鍵是否被按下是播放上一曲切換播放狀態(開始和暫停)播放下一曲板子或遙控的播放暫停鍵是否被按下開始定時器初始化否板子或遙控的上一曲鍵是否被按下否板子或遙控的下一曲鍵是否被按下播放對應歌曲是圖6程序流程圖4.1.2主程序代碼設計voidmain(){ uchartemp; ExtInit(); //外部中斷初始化 TimerInit(); //定時器初始化 gSong=1; //上電默認第一首歌 gPlayStatus=0; //上電默認的狀態是暫停狀態 while(1) { if(gPlayStatus==1) //如果是處于播放狀態,則判斷是當前哪一首歌曲需要播放 { switch(gSong) { case1:PlayMusic(Music1,sizeof(Music1)); break; default: break; } } //開始播放 if((Key1_P==0)||(gRedVal==0x43)) { gRedVal=0; //清除紅外遙控的按鍵記錄內容 gPlayStatus=1; //播放狀態改為1,即播放 DelayMs(10); //消除按鍵按下的抖動 while(!Key1_P); //等待按鍵釋放 DelayMs(10); //消除按鍵松開的抖動 } //上一曲 if((Key2_P==0)||(gRedVal==0x44)) { gRedVal=0; //清除紅外遙控的按鍵記錄內容 … gSong--; //使目前播第幾首歌的變量gSong減1,即切到上一曲 if(gSong==0) //如果gSong為0,說明到前面的盡頭了,則轉為最后一首 gSong=SONG; gPlayStatus=1; //把播放狀態改為1,即播放 } //下一曲 if((Key3_P==0)||(gRedVal==0x40)) { gRedVal=0; //清除紅外遙控的按鍵記錄內容 … gSong++; //使目前播第幾首歌的變量gSong加1,即切到下一曲 if(gSong>SONG) //如果gSong為SONG,說明到后面的盡頭了,則轉為第一首 gSong=1; gPlayStatus=1; //把播放狀態改為1,即播放 } //切換模式 if((Key4_P==0)||(gRedVal==0x00)) { uintqtone1; … while(Ele) { //數字鍵調節 qtone1=EleNumKeyScanf(); qtone2=EleToneKeyScanf(); if(temp<8) { qtone=qtone1+qtone2; PlayEleTone(qtone); } if((Key4_P==0)||(gRedVal==0x00)) { gRedVal=0; DelayMs(10); while(!Key4_P0); DelayMs(10); gPlayStatus=0; Ele=0; } } }}4.2播放一個音調值的設計4.2.1播放一個音調值的流程圖播放一個音調的流程圖如圖7所示。首先,根據要播放的音調值在微控制器計時器上設置初始值,然后啟動計時器。計時器啟動后,它將開始播放需要播放的相應音調,然后延遲聲音。延遲時間到期后,計時器將停止并且播放將結束。開始開始關閉定時器延時該音調對應的節拍時間啟動定時器根據該音調值給單片機定時器賦初值結束圖7播放一個音調值的流程圖4.2.2播放一個音調值的程序設計TH0=ArrTH0[tone]; //裝入定時器TH0的初值TL0=ArrTL0[tone]; //裝入定時器TL0的初值4.3播放一首歌曲的流程圖4.3.1播放一首歌曲的流程圖播放一首歌曲的流程圖如圖8所示。首先,數字管將根據歌曲標簽顯示編號,然后確定是否播放了歌曲,否則,將播放下一個音調,并在播放完所有樂曲后關閉數字管顯示。。
結束結束歌曲播放完成?是否關閉數碼管顯示播放下一個音調數碼管顯示歌曲編號開始圖8播放一首歌曲的流程圖4.3.2播放一個音調值的流程圖inti; gTone=tone; //將音調值賦給全局變量gTone TH0=ArrTH0[tone]; //裝入定時器TH0的初值 TL0=ArrTL0[tone]; //裝入定時器TL0的初值 TR0=1; //啟動定時器 for(i=0;i<beat;i++) { DelayMs(200); } TR0=0; 4.4接受紅外遙控信號的設計4.4.1接受紅外遙控信號的流程圖接收紅外遙控信號的流程圖如圖9所示。紅外遙控器每發送一次按鍵的數據,首先,我們需要發送9ms的導頻級和4.5ms的高級導頻碼,紅外遙控器的接收頭先把低電平的信號傳遞到單片機上,然后切換到微控制器的內部中斷0,然后微控制器進入中斷服務功能。在這之后關閉中斷功能,避免后面接受數據的過程中再一次觸發中斷函數。接著是等待引導碼的結束,然后是接收四個字節的數據,其中的字節1和2都是用戶碼,字節3是數據碼,字節4是數據反碼。在四個字節數據當中,字節3的數據碼才是我們真正所需要的,根據不同的按鍵會從紅外發射頭發送不同的數據碼在被紅外接受頭發送到單片機,于是需要將字節3的數據碼保存起來,方便之后程序對不同的按鍵做出不同處理。這樣就已經完成了一個對紅外遙控器按鍵接收處理,單片機可以重新開始繪圖過程,隨時準備再一次接收按鍵數據。開始開始結束讀取用戶碼1等待引導碼結束關閉中斷功能,避免接收數據過程被打斷讀取數據碼觸發外部中斷0讀取用戶碼2讀取數據反碼恢復中斷功能圖9接收紅外遙控信號的流程圖4.4.3接受紅外遙控信號的代碼ucharNumKeyScanf(){ if(gRedVal==0x0C) //數字鍵1 return1; … return0;}5.系統安裝與調試5.1系統的安裝步驟(1)檢查元器件在進行焊接元器件的時候,首先要核對元器件的種類和篩選。在本設計中主要用到的元器件主要有:STC89C52微機單元,開關,電源,電阻器,玻璃振蕩器,電容器,開關,揚聲器,紅外遙控器,數字管,功率放大器芯片等。之后再根據實驗所需進行性能的篩選。根據設計原理圖在電路板上對各個元器件進行有規律的放置,放置后進行檢查,確保正確后方可使用零件和焊件,從而避免了焊錯。(2)元器件的放置與焊接各個元器件的擺放應
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025建筑工程拆除與補償合同
- 2025個人健身教練服務合同范本
- 電瓶轉讓合同協議書范本
- 現貨白糖購銷合同協議
- 班組帶考勤合同協議
- 電平車出租合同協議
- 電氣室內安裝合同協議
- 電單車配件采購合同協議
- 現代汽車購車合同協議
- 電商跟快遞合作合同協議
- 血液科護士對輸血反應的識別與處理
- 《工程材料基礎》課件
- 渠道施工課件
- 預防艾滋病宣傳教育主題班會
- Part1-2 Unit1 Travel 教案-【中職專用】高一英語精研課堂(高教版2021·基礎模塊2)
- 城市普通中小學校校舍建設標準
- 數字化時代的金融監管
- 《瘋狂動物城》全本臺詞中英文對照
- 金融風險傳染性研究
- 小學科學實驗目錄1-6年級新教科版
- 成人體外心肺復蘇專家共識(2023版)解讀
評論
0/150
提交評論