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

正文內(nèi)容

本科畢業(yè)設(shè)計(基于單片機的音樂盒的設(shè)計)-文庫吧

2025-06-13 09:57 本頁面


【正文】 播放樂曲和演奏的功能;同時有液晶顯示器顯示電子琴琴鍵的鍵值,揚聲器播放出音樂。 總體設(shè)計框圖 電源供電是單片機工作的動力來源,單片機工作中用到的時鐘信號是由晶振電路提供的,外部中斷由功能按鍵來實施控制,以此來控制選擇音樂盒模塊與電子琴模塊,揚聲器發(fā)聲是通過I/O口向外輸出的,液晶顯示器則是進行功能的顯示。而復(fù)位電路的作用就是建造程序的初始狀態(tài),在發(fā)生意外或者程序報錯時,就能將單片機重新啟動,保證電路的安全。系統(tǒng)總體設(shè)計框圖如圖21所示。 AT89C52顯示電路4*4矩陣鍵盤晶振電路聲音電路復(fù)位電路圖21 總體設(shè)計框圖 選用的方案(1)硬件設(shè)計 :系統(tǒng)把AT89C52當做整個電路主控制核心,而外部的程序存儲器需要擴展則是利用74LS373與27512,對播放器的控制是采用按鍵來實現(xiàn)的,4*4鍵盤矩陣控制電子琴的發(fā)音,顯示電路采用1602液晶顯示器來顯示,晶振部分用的頻率大小是12MHz,從P3.0口輸出的音樂信號由揚聲器傳出并放出動聽的音樂。(2)軟件設(shè)計 :軟件編程的程序中選取了C調(diào)中一個8度內(nèi)的一共7個音階的音符來作為音調(diào)。按照十二平均律,(就是把八度定義為1200音分,其中全因音符占用200音分,半音占100音分,共十二個半音)每個音符所對應(yīng)的頻率由定時器T0產(chǎn)生。我們在表中放入定時器初值,一共十二個半音,這樣我們在加載計數(shù)初值是就可以直接在程序中以查表的方式來進行,而在放音時就可以不用再計算定時器的初值了,每個編碼都會有一個音符所對應(yīng)著,占用一個字節(jié),這樣可以更方便的將程序進行調(diào)用。鑒于人耳有限的分辨力,所以曲譜中的節(jié)拍碼直接可以用延時來替換,每個音符發(fā)音30MS,這樣就使編程更加的簡單了。矩陣式鍵盤在設(shè)計中得到較好的應(yīng)用,目的是讓按鍵能夠及時的響應(yīng),程序的編寫中的主線編寫是其中的掃描鍵盤的程序(就是在主程序中循環(huán)的掃描按鍵,并在掃描按鍵模塊時在調(diào)用其他的功能模塊),每當按下一次按鍵,利用掃描按鍵的功能計算出鍵盤的鍵值,并將鍵值存儲起來,跳轉(zhuǎn)到相應(yīng)的標號執(zhí)行程序,并將鍵值調(diào)用液晶顯示器子程序顯示在制定的位置上,在檢測到復(fù)位鍵按下時,就會恢復(fù)帶開機畫面。此方案中選用1602液晶顯示器的優(yōu)點是其在編寫程序時方便,顯示的也穩(wěn)定,而且占用的CPU時序少,另外它和矩陣鍵盤一樣在其外圍電路中可以有不少的擴展功能。第3章 系統(tǒng)硬件設(shè)計 單片機最小系統(tǒng) AT89C52單片機介紹單片機事實上是一種集成的電路芯片(實際上就是一塊硅片),也被稱為微型計算機系統(tǒng),它的主要技術(shù)是超大規(guī)模集成電路技術(shù),主要的組成部分有中央處理器CPU(具有數(shù)據(jù)處理能力)、隨機存儲器RAM、只讀存儲器ROM、多種I/O口和中斷系統(tǒng)和定時器/計數(shù)器等(其他的還包括顯示驅(qū)動電路、脈寬調(diào)制電路、模擬多路轉(zhuǎn)換器、A/D轉(zhuǎn)換器等電路模塊),這種集成電路不僅體積小,而且功能完善,所以在工業(yè)控制領(lǐng)域得到廣泛應(yīng)用[10]。從80年代開始,最初只有4位、8位的單片機,到現(xiàn)在的高速單片機已經(jīng)達到了300M。本次設(shè)計中用的是AT89C52 單片機,AT89C52的主要功能是控制會聚調(diào)整時的功能,它用的內(nèi)核是工業(yè)上標準的C51內(nèi)核,是一種8位的通用微處理器,所以它的內(nèi)部功能和管腳排布和正常使用的8xc52 沒什么差別[11]。AT89C52有許多功能,主要包括初始化一些功能部件,比如把主IC 的內(nèi)部寄存器與數(shù)據(jù)RAM和外部接口等進行匯聚,還有可以把調(diào)整控制匯聚,將測試圖控制匯聚以及接受并解碼紅外遙控信號IR和對主板CPU進行通信等[12]。AT89C52單片機中的XTAL1(19 腳)在振蕩器中是被當做輸入腳,而XTAL2(18 腳)在振蕩器中是當做輸出腳,另外它的外借晶振可以接到12MHz。單片機中的復(fù)位電路是由電阻和電容組成的,其中電阻和電容都是從外部接入的,復(fù)位電路的輸出端口是RST/Vpd(9腳)。單片機的工作需要電源供電,而在52單片機中的供電端口有VCC(40腳)接+5V電源的正極,VSS(20腳)接電源的負極,運行單片機需要軟件編程來實現(xiàn),依靠軟件來定義單片機的功能用途,可以通過P0P3口的通用I/O腳來實現(xiàn)軟件程序的導(dǎo)入,此次設(shè)計過程中,我們把P0 端的3239 腳分別和N1的對應(yīng)的功能管腳相連,如此就可以將N1 功能控制端口用P0端的3239腳來定義,其他的連接在N1的SDAS(18腳)與SCLS(19腳)端口上的10腳與11腳,就可以將這兩個引腳定義成I2C總線上的控制端口,另外一些相應(yīng)的功能端是連接主板CPU上的,主要功能是把目前制式的檢測和匯聚進行狀態(tài)調(diào)整,并進入控制功能,而這些連接到主板CPU的引腳就定義為握手信號功能端口,而52單片機中的12腳,27腳以及28腳都可以實現(xiàn)此功能[13]。現(xiàn)如今,盡管單片機的品種繁多,各具特色,但是80C51單片機由于兼容其他類型單片機產(chǎn)品的結(jié)構(gòu)和指令系統(tǒng),所以80C51依然是主流,可以說占據(jù)了該領(lǐng)域的半壁江山。而隨著Microchip公司的PIC精簡指令集合(RISC)發(fā)展勢頭強勁,中國臺灣的HOLTEX公司單片機的產(chǎn)量也日漸增加,而且其質(zhì)量高,價格廉,所以占據(jù)一定的市場份額。此外還有MOTOROLA公司的產(chǎn)品,日本幾大公司的專用單片機。在一定的時期內(nèi),這種情形將得以延續(xù),將不存在某個單片機一統(tǒng)天下的壟斷局面,走的是依存互補、相輔相成、共同發(fā)展的道路。九十年代以后,單片機在結(jié)構(gòu)上采用雙CPU或內(nèi)部流水線,CPU位數(shù)有8位、16位、32位,時鐘頻率高達20MHZ,片內(nèi)帶有PWM輸出、監(jiān)視定時器WDT、可編程計數(shù)器陣列PCA、DMA傳輸、調(diào)制解調(diào)器等。芯片向高度集成化、低功耗方向的發(fā)展,使得單片機在大量數(shù)據(jù)的實時處理、高級通信系統(tǒng)、數(shù)字信號處理、復(fù)雜工業(yè)過程控制、高級機器人以及局域網(wǎng)等方面得到大量應(yīng)用[8]。這類單片機有NEC公司的MPD7800,MITSUBISHI公司的M337700,REVKWELL公司的R6500[9]。此次設(shè)計之所以選用52單片機是因為AT89C52比AT89C51多個定時器,而RAM 大小也不一樣,51的大小只有128,52的卻有256。根據(jù)這些信息可以看出52其實是51的增強型,在定時器方面52也比51的定時器多了一個T2,在串行通信中可以設(shè)置更高的波特率,由此可見T2的功能實現(xiàn)上與其他的兩個定時器也不同樣,在ROM上52比51要多4K,中斷也多2個,意味著看門狗也比51多出一個來,另外52在掉電與數(shù)據(jù)指針等方面也有一些改善[14]。而在外接晶振上C52可以擁有最高能達到33MHz,而C51的極限也只能達到24MHz。單片機有個最小應(yīng)用系統(tǒng),也就是單片機最小系統(tǒng),這種系統(tǒng)是可以正常工作的,但由于構(gòu)成此系統(tǒng)只用了最少的元器件,所以功能也相應(yīng)的比較單一。我們考慮52單片機中的結(jié)構(gòu),可以看出最小系統(tǒng)正常是由單片機芯片、晶振電路、復(fù)位電路構(gòu)成的?;?2單片機的最小系統(tǒng)的電路原理圖,如圖31所示。圖31 單片機最小系統(tǒng) 復(fù)位電路介紹復(fù)位電路是由電容串聯(lián)電阻構(gòu)成的。復(fù)位電路原理圖如圖32所示。圖32 復(fù)位電路原理圖電源通電后,就會在RST引腳上顯示出高電平,而高電平的可持續(xù)時間是由電路的RC值來決定的。在設(shè)計實現(xiàn)功能時要適當組合RC的取值就可以保證復(fù)位的可靠性,因為單片機一般會在RST腳上持續(xù)兩個機器周期以上的高電平時就會復(fù)位。本次設(shè)計中C取用的是22uf,R取10K。要想在RST腳上能生成的高電平多于2個機器周期,就直接將RC按照這個數(shù)值進行組合。在復(fù)位電路中復(fù)位信號是在系統(tǒng)供電時就會提供,而想要撤消復(fù)位信號,只需等到系統(tǒng)中的電源穩(wěn)定了即可。為了在實現(xiàn)功能時電路的安全,在系統(tǒng)中電源穩(wěn)定以后,等待撤消的復(fù)位信號必須要經(jīng)過一個延時,這樣的目的是為了防止在電源開關(guān)啟動或關(guān)閉過程中引發(fā)的抖動而影響復(fù)位。復(fù)位電路復(fù)位的過程中有兩種,一種是通電自動復(fù)位,另一種是按鍵手動復(fù)位,根據(jù)電路原理圖可知,復(fù)位電路的復(fù)位信號的輸入端是RST引腳,而且復(fù)位必須在高電平的情況下才有效。想要實現(xiàn)復(fù)位電路的功能,就是通過外接電容C1與外接電阻R8來實現(xiàn)。 52單片機中的引腳XTAL1和的引腳XTAL2都是在片內(nèi)一個反相放大器(高增益)中的,它的作用是用來組成穩(wěn)定的自激振蕩器,組成自激振蕩器的電路是由有石英晶體的振蕩器和微調(diào)電容進行外接,而能直接進入系統(tǒng)內(nèi)部時鐘電路的信號就是這個振蕩器發(fā)出的脈沖信號。本次設(shè)計晶振電路中使用的是固定電容C5與C6,兩個電容都是30pF?!?2MHz,一般情況下,選用振蕩頻率為12MHz的石英晶體。而要將信號變成單片機的時鐘信號,只有在內(nèi)部時鐘發(fā)生器上將振蕩脈沖信號通過二分頻的操作才能實現(xiàn)。單片機工作狀態(tài)下要想從先取指令,再進行譯碼,最后再微操做的過程能有序的進行,就必須通過時鐘信號來控制,由此可知單片機在工作狀態(tài)下提供基本時鐘的電路就是時鐘電路。生成時鐘信號的方式可以分為兩種,一種是內(nèi)部時鐘的方式,另一種是外部時鐘的方式,本課題采用就是內(nèi)部時鐘方式。晶振電路就是在單片機內(nèi)組成一個自激振蕩器,而這個穩(wěn)定的自激振蕩器是將一個晶振和兩個穩(wěn)頻電容外接到單片機的XALT1與XLAT2兩個引腳上構(gòu)成的。晶振頻率選擇12MHz。晶振電路原理圖如圖33所示。圖33 晶振電路原理圖 顯示電路本設(shè)計顯示部分是采用液晶顯示器1602,單片機的P0口是一個地址/數(shù)據(jù)復(fù)用的雙向I/O口,當使用P0口訪問外部存儲器和數(shù)據(jù)存儲器時,P0口內(nèi)部已有上拉電阻,當P0口作程序檢驗,輸出指令字節(jié)時,必須外接上拉電阻。1602的控制信號RS、RW、。本設(shè)計中1602液晶顯示器可以實現(xiàn)多種顯示功能,比如在開機過程中能夠顯示開機畫面,提示開機;在功能選擇上可以顯示當前所選擇的功能模塊畫面以及電子琴模式中可以顯示在琴鍵上按下的鍵值。顯示電路原理圖如圖34所示。圖34 顯示電路原理圖 4*4矩陣鍵盤識別電路設(shè)計中經(jīng)常使用的鍵盤按鍵分為好多種,比如有電容式,有導(dǎo)電式,還有機械式和薄膜式等,而將電路接通與斷開就是這些鍵盤按鍵的基本功能,所以不管是什么種類的按鍵,都有這些基本的功能。而現(xiàn)今使用的鍵盤在功能應(yīng)用方面主要有兩種基本類型,一種是編碼鍵盤,另一種是非編碼鍵盤,編碼鍵盤的鍵盤本身就有一個硬件電路,而這些硬件電路就能夠?qū)崿F(xiàn)接口處在按鍵被自動檢測到時,實現(xiàn)一些比如去抖動和防串鍵等功能,而且這些與按鍵功能相對應(yīng)的鍵碼也會被送往CPU中。但是由于編碼鍵盤的硬件電路復(fù)雜,所以其價格也相應(yīng)的昂貴,就算其接口簡單,用起來也挺方便,但是一般簡單的設(shè)計中不會應(yīng)用編碼鍵盤,只有一些廠商生產(chǎn)的商品才會用到。而非編碼鍵盤雖然僅提供簡單的行列矩陣式的按鍵開關(guān),但在實現(xiàn)功能過程中可以通過軟件編程來實現(xiàn)識別按鍵,確定與輸入鍵碼,以及去抖動等一些功能。所以在設(shè)計中選用非編碼鍵盤可以節(jié)省許多的成本。無論選什么按鍵,在鍵盤的接口處的四個基本功能是必不可少的,分別是:去抖動,防串鍵識別按鍵以及生成鍵碼。本次設(shè)計中鍵盤用的是4*4矩陣鍵盤,它是將16個按鍵依據(jù)4行4列的方式進行排版,鍵盤在單片機中是通過JP50端口進行信號傳輸?shù)?。輸出端是由行線連接到單片機的I/O口上,而輸入端是由列線連接到I/O口上。若輸出端都是高電平的話,就表示按鍵沒有被按下。我們判斷按鍵是否被按下,可以根據(jù)讀取當前輸入線的狀態(tài),因為當按鍵按下時,表示有低電平從行線輸出來,而且會把輸入線電平拉低,而這個狀態(tài)就能判斷按鍵按下了沒。本次設(shè)計選用的鍵盤耗能低,并且由于它的外圍電路元件少,擴充起來會更靈活。鍵盤電路原理圖如圖35所示。圖35 鍵盤電路原理圖 鍵盤掃描的時候,會先對其橫坐標x進行操作,也就是掃描“行”,再對其縱坐標y進行操作,也就是掃描“列”。 獲取y的方法與獲取x的方法相似,具體的操作可以參考附錄的相關(guān)總程序。這樣,按鍵的功能就可以根據(jù)獲取的坐標,也就是(x,y)中x與y的值來實現(xiàn)。 聲音電路本次設(shè)計使用的發(fā)聲元件是揚聲器,圖36是的揚聲器原理圖。圖36 揚聲器原理圖聲音電路是由2N3904 NPN三極管和喇叭組成。實現(xiàn)功能時,直接從AT89C52中獲取的高電平控制信號,然后再通過這個三極管把這個控制信號放大,再驅(qū)動揚聲器放出聲音。但因為揚聲器所需驅(qū)動功率較小,驅(qū)動器件要求也較低,所以選用2N3904型號的 NPN型三極管就可驅(qū)動揚聲器發(fā)出聲音,這樣在設(shè)計中所用的成本也會相應(yīng)的減少。在單片機中的P2口就是實現(xiàn)音樂的播放功能的接口。此聲音電路實現(xiàn)的功能就是播放音樂,在電子琴模式下,按鍵彈奏出的聲音也是由喇叭播放出來的。第4章 軟件設(shè)計一個系統(tǒng)想要正常運行不僅僅依靠硬件系統(tǒng)的支持,而且要依靠軟件系統(tǒng)的支持。若是把這個系統(tǒng)比作人,那么人的軀體就是硬件系統(tǒng),而人的靈魂則是軟件系統(tǒng),只有將硬件系統(tǒng)和軟件系統(tǒng)之間相互完美的配合才能組成一個能夠“思考”和“判斷”的整體系統(tǒng)[16]。在設(shè)計中依靠軟件的可編程性,能精簡硬件系統(tǒng)的組成,同時依靠著軟件編程的靈活性,可以省略通過對硬件系統(tǒng)進行修改而實現(xiàn)對整個系統(tǒng)功能的修改。軟件系統(tǒng)與硬件系統(tǒng)之間是密切相聯(lián)的,軟件系統(tǒng)的成立是建立在硬件系統(tǒng)完成的前提上,離開了硬件系統(tǒng),軟件將無法實現(xiàn)任何功能。軟件設(shè)計的重要特性是具有一定的針對性,針對硬件系統(tǒng)的不同,就要編寫不同的軟件程序。要想系統(tǒng)擁有較快的工作效率,以及較高的可靠性,除了硬件系統(tǒng)的影響外,軟件系統(tǒng)同樣起到?jīng)Q定性的作用。 Proteus仿真軟件與Keil編譯介紹軟件的編程需要依靠優(yōu)良的平臺,此次設(shè)計用的EDA操作系統(tǒng)就是一款由英國LCE公司所刊行的,而此操作系統(tǒng)中的Proteus操作平臺就是一個優(yōu)良的軟件。這款操作系統(tǒng)不僅涵蓋了別的EDA操作系統(tǒng)進行仿真的功效,對于單片機和它的外圍電路同樣可以仿真[15]。目前在國內(nèi)Proteus軟件推廣剛起步,就已經(jīng)受到單片機愛好者、從事單片機教學(xué)的教師、致力于研究單片機開發(fā)應(yīng)用的科技工作者的青睞[18]。Proteus是世界上著名的EDA工具,從原理圖的布圖、代碼的調(diào)試到單片機與外圍電路協(xié)同仿真,以及一鍵切換到PCB的設(shè)計,真正實現(xiàn)了從概念到產(chǎn)品的完整設(shè)計[18]。這款系統(tǒng)的處理器模型功能強大,
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1