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

正文內(nèi)容

電子音樂(lè)播放器的設(shè)計(jì)和制作畢業(yè)設(shè)計(jì)論文(編輯修改稿)

2025-07-24 16:20 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 在單片機(jī)內(nèi)部自動(dòng)發(fā)生的,所以不需要在芯片上設(shè)置引入端。定時(shí)中斷:是為滿足定時(shí)或計(jì)數(shù)的需要而設(shè)置的。為此在單片機(jī)芯片內(nèi)部有兩個(gè)定時(shí)/計(jì)數(shù)器,以對(duì)其中的計(jì)數(shù)結(jié)構(gòu)進(jìn)行計(jì)數(shù)的方法,來(lái)實(shí)現(xiàn)定時(shí)或計(jì)數(shù)功能。當(dāng)計(jì)數(shù)結(jié)構(gòu)發(fā)生計(jì)數(shù)溢出時(shí),即表明定時(shí)時(shí)間到或計(jì)數(shù)值已滿,這時(shí)就以計(jì)數(shù)溢出信號(hào)作為中斷請(qǐng)求,去置位一個(gè)溢出標(biāo)志位,作為單片機(jī)接受中斷的標(biāo)志。由于這種中斷請(qǐng)求是在單片機(jī)芯片內(nèi)部發(fā)生的,因此不需要在芯片上設(shè)置引入端。(1)、定時(shí)器控制寄存器(TCON): 該寄存器用于保存外部中斷請(qǐng)求以及定時(shí)器的計(jì)數(shù)溢出。寄存器地址88H,位地址8FH~88H。位地址8FH8EH8DH8CH8BH8AH89H88H位符號(hào)TF1TR1TF0TR0IE1IT1IE0IT0這個(gè)寄存器既有定時(shí)器/計(jì)數(shù)器的控制功能又有中斷控制功能,其中與中斷有關(guān)的控制位共有6位:⑴、IE0和IE1—外部中斷請(qǐng)求標(biāo)志位⑵、IT0和IT1—外中斷請(qǐng)求觸發(fā)方式控制位⑶、TF0和TF1—計(jì)數(shù)溢出標(biāo)志位(2)、中斷允許控制寄存器(IE)寄存器地址0A8H,位地址0AFH~0A8H。位地址0AFH0AEH0ADH0ACH0ABH0AAH0A9H0A8H位符號(hào)EA//ESET1EX1ET0EX0其中與中斷有關(guān)的控制位共有6位:⑴、EA—中斷允許總控制位EA=0 中斷總禁止,禁止所有中斷EA=1 中斷總允許,總允許后中斷的禁止或允許由各中斷源的中斷允許控制位進(jìn)行設(shè)置⑵、EX0和EX1—外部中斷允許控制位EX0(EX1)=0 禁止外中斷EX0(EX1)=1 允許外中斷⑶、ET0和ET1—定時(shí)/計(jì)數(shù)中斷允許控制位ET0(ET1)=0 禁止定時(shí)/計(jì)數(shù)中斷ET0(ET1)=1 允許定時(shí)/計(jì)數(shù)中斷⑷、ES—串行中斷允許控制位ES=0 禁止串行中斷ES=1 允許串行中斷可見(jiàn),MCS51是通過(guò)中斷允許控制寄存器對(duì)中斷實(shí)行兩級(jí)控制。即以EA位為總控制位,以各中斷源的中斷允許為分控制位。當(dāng)總控制位為禁止時(shí),關(guān)閉整個(gè)中斷系統(tǒng),不管分控制如何,整個(gè)中斷系統(tǒng)處于禁止?fàn)顟B(tài);當(dāng)總控制為開(kāi)啟狀態(tài)時(shí),開(kāi)放中斷系統(tǒng),這時(shí)才能由分控制位進(jìn)行控制。(3)、中斷優(yōu)先級(jí)控制寄存器(IP):寄存器地址0B8H,位地址0BFH~0B8H。位地址0BFH0BEH0BDH0BCH0BBH0BAH0B9H0B8H位符號(hào)// /PSPT1PX1PT0PXOMCS51單片機(jī)規(guī)定了兩個(gè)中斷優(yōu)先級(jí):高級(jí)中斷和低級(jí)中斷。用中斷優(yōu)先級(jí)寄存器(IP)的5位狀態(tài)管理5個(gè)中斷源的優(yōu)先級(jí)別,即PS、PTPXPT0、PX0分別對(duì)應(yīng)串行口中斷、定時(shí)器/計(jì)數(shù)器1中斷、外部中斷1中斷、定時(shí)器/計(jì)數(shù)器0中斷、外部中斷0中斷。當(dāng)相應(yīng)位為1時(shí),設(shè)置其為高級(jí)中斷;相應(yīng)位為0時(shí),設(shè)置其為低級(jí)中斷。本文中就采用了IP中斷。 單片機(jī)應(yīng)用中,通過(guò)控制寄存器來(lái)使用中斷系統(tǒng)。對(duì)中斷的使用是在程序初始化時(shí)設(shè)置的,如果不包括優(yōu)先級(jí)控制,外中斷初始化共有三項(xiàng)內(nèi)容:中斷總允許、外中斷允許和中斷方式設(shè)定。而定時(shí)中斷則只有兩項(xiàng)內(nèi)容,沒(méi)有中斷方式控制??刂萍拇嫫骷瓤捎米止?jié)尋址又可進(jìn)行位尋址,因此既可用字節(jié)操作指令又可用位操作指令。例:如開(kāi)放外中斷0,使用字節(jié)操作指令為: MOV IE,81H使用位操作指令: SETB EX SETB EX0在本章中主要是設(shè)計(jì)中的軟件部分,主要包括程序的編寫,一些功能通過(guò)軟件的實(shí)現(xiàn)。由于設(shè)計(jì)中有按鍵的存在,就要考慮到按鍵消抖的問(wèn)題,按鍵消抖有兩種方法,可以通過(guò)硬件實(shí)現(xiàn),也可以通過(guò)軟件實(shí)現(xiàn)。本設(shè)計(jì)采用的是軟件消抖,主要是按鍵相對(duì)較多,硬件消抖無(wú)法勝任。在定時(shí)器/計(jì)數(shù)器的選擇中,T0作為定時(shí)器使用時(shí),是對(duì)單片機(jī)內(nèi)部機(jī)器周期的計(jì)數(shù),因其內(nèi)部頻率為晶振頻率的1/12,本設(shè)計(jì)的晶振頻率為12MHZ,則T0每接收一個(gè)脈沖的時(shí)間為1μs。當(dāng)檢測(cè)到輸入引腳上的電平由高跳變到低時(shí),計(jì)數(shù)器T1就加1。51單片機(jī)有5個(gè)中斷源,對(duì)應(yīng)的中斷的型號(hào)是0、4。本設(shè)計(jì)中利用與中斷有關(guān)的寄存器進(jìn)行中斷控制,其中就有中斷優(yōu)先級(jí)控制寄存器(IP)的運(yùn)用等。通過(guò)軟件來(lái)實(shí)現(xiàn)播放器的按鍵播放多首音樂(lè)的功能。4程序的調(diào)試及測(cè)試本文采用定時(shí)掃描工作方式是利用單片機(jī)內(nèi)部定時(shí)器產(chǎn)生定時(shí)中斷(如10ms),當(dāng)定時(shí)時(shí)間到時(shí),CPU執(zhí)行定時(shí)中斷函數(shù),對(duì)鍵盤進(jìn)行掃描。如果有鍵按下則識(shí)別出該鍵位,并執(zhí)行相應(yīng)的鍵處理功能程序。定時(shí)掃描方式的鍵盤硬件電路與查詢方式的電路相同。定時(shí)掃描方式實(shí)際上是通過(guò)定時(shí)器中斷來(lái)實(shí)現(xiàn)的,為處理方便,在單片機(jī)中設(shè)置了兩個(gè)標(biāo)志,第一個(gè)標(biāo)志是消除抖動(dòng)標(biāo)志F1,第二個(gè)標(biāo)志是鍵盤處理標(biāo)志F2。當(dāng)無(wú)鍵按下時(shí),F(xiàn)F2都置0,由于定時(shí)開(kāi)始一般不會(huì)有鍵按下,故FF2初始化為0,當(dāng)鍵盤上有鍵按下時(shí)先檢查消除抖動(dòng)標(biāo)志F1,如果F1=0,表示還未消除抖動(dòng),這時(shí)把F1置1,直接中斷返回,因?yàn)橹袛喾祷睾?0ms才能再次中斷,則說(shuō)明抖動(dòng)已消除,再檢查F2,如果F2=0,則掃描識(shí)別鍵位,求出按鍵的編碼,并將F2置1返回,當(dāng)再一次定時(shí)中斷時(shí),檢查F2=1,說(shuō)明當(dāng)前按鍵已經(jīng)處理,則直接返回。在程序處理上,定時(shí)器中斷函數(shù)前面是對(duì)兩個(gè)標(biāo)志位的檢查程序,后面的鍵盤掃描函數(shù)與查詢方式相同。本設(shè)計(jì)采用的是Keil C51開(kāi)發(fā)工具。Keil是德國(guó)開(kāi)發(fā)的一個(gè)51單片機(jī)開(kāi)發(fā)軟件平臺(tái),最開(kāi)始只是一個(gè)支持C語(yǔ)言和匯編語(yǔ)言的編譯器軟件。后來(lái)隨著開(kāi)發(fā)人員的不斷努力以及版本的不斷升級(jí),使它成為了一個(gè)重要的單片機(jī)開(kāi)發(fā)平臺(tái)。Keil的uVision2可以進(jìn)行純粹的軟件仿真(仿真軟件程序,不接硬件電路),用硬件仿真器,搭接上單片機(jī)硬件系統(tǒng),在仿真器中載入項(xiàng)目程序后進(jìn)行實(shí)時(shí)仿真;還可以使用uVision2的內(nèi)嵌模塊Keil Monitor51,在不需要額外的硬件仿真器的條件下,搭接單片機(jī)硬件系統(tǒng)對(duì)項(xiàng)目程序進(jìn)行仿真。本文采用的就是keil。利用keil C51開(kāi)發(fā)89S51單片機(jī)應(yīng)用程序需要以下步驟:(1)、在uVision2集成開(kāi)發(fā)環(huán)境中創(chuàng)建一個(gè)新項(xiàng)目文件,并為該項(xiàng)目選定合適的單片機(jī)CPU元器件。(2)、利用uVision2的文件編輯器編寫C語(yǔ)言(或匯編語(yǔ)言)源程序文件,并將文件添加到項(xiàng)目中區(qū)。一個(gè)項(xiàng)目可以包含多個(gè)文件,除源程序文件外還可以有庫(kù)文件或文本說(shuō)明文件。(3)、通過(guò)uVision2的各種選項(xiàng),配置C51編譯器、A51宏匯編器、BL51鏈接定位器以及Debug調(diào)試器的功能。(4)、利用uVision2的構(gòu)造(Build)功能對(duì)項(xiàng)目中的源程序文件進(jìn)行編譯鏈接,生成絕對(duì)目標(biāo)代碼和可選的HEX文件。如果出現(xiàn)編譯鏈接錯(cuò)誤則返回第(2)步,修改源程序中的錯(cuò)誤后重新構(gòu)造整個(gè)項(xiàng)目。(5)、將沒(méi)有錯(cuò)誤的目標(biāo)代碼裝入uVision2調(diào)試器進(jìn)行仿真調(diào)試,調(diào)試成功后將HEX文件寫入到單片機(jī)應(yīng)用系統(tǒng)的EPROM中。本設(shè)計(jì)的程序是用C語(yǔ)言編寫的,用Keil軟件編譯的結(jié)果如圖41所示.圖41程序編譯結(jié)果源程序編譯通過(guò)并不意味著程序執(zhí)行后就能實(shí)現(xiàn)既定的目標(biāo),可能還隱含著很多看不見(jiàn)的錯(cuò)誤,這就需要對(duì)源程序進(jìn)行調(diào)試。調(diào)試的相關(guān)命令在Debug菜單下。用uVision2調(diào)試:?jiǎn)螕鬌ebug菜單下的Start/Stop Debug命令,uVision2會(huì)載入應(yīng)用程序進(jìn)入調(diào)試啟動(dòng)模式。調(diào)試時(shí),編譯器的很多功能仍然可以使用。例如,使用查找命令或糾正程序的錯(cuò)誤。程序的源文件在同一窗口顯示。uVision2調(diào)試模式和編輯模式有以下的的不同點(diǎn):(1)、提供Debug菜單和Debug命令。(2)、不能修改項(xiàng)目結(jié)構(gòu)或工具參數(shù),所有Build命令禁止。程序調(diào)試必須明確兩個(gè)重要的概念,即單步執(zhí)行和全速執(zhí)行。全速執(zhí)行是指一行程序執(zhí)行完后接著執(zhí)行下一行程序,中間沒(méi)有間斷,程序執(zhí)行速度很快,只能看到程序執(zhí)行的總體結(jié)果,如果程序中存在錯(cuò)誤,則難以判斷錯(cuò)誤的具體位置。單擊菜單命令Debug Go或快捷鍵F5,程序全速執(zhí)行。單步執(zhí)行是指每一次執(zhí)行一行程序,執(zhí)行完該行程序即停止,等待命令執(zhí)行下一行程序,可以方便的觀察每條程序語(yǔ)句的執(zhí)行結(jié)果,可以依次判斷程序錯(cuò)誤的具體位置。單擊Debug菜單下的Step 或快捷鍵F11可以單步執(zhí)行程序。程序調(diào)試時(shí),一些程序必須滿足一定的條件才能被執(zhí)行,如程序中某一變量達(dá)到一定的值、按鍵被按下、有中斷產(chǎn)生等事件發(fā)生,這些條件發(fā)生往往是異步發(fā)生或難以預(yù)先設(shè)定的,這類問(wèn)題使用單步執(zhí)行的方法是很難調(diào)試的,這時(shí)就需要使用程序調(diào)試中的另一重要方法:斷點(diǎn)設(shè)置uVision2可以用幾種不同的方法定義斷點(diǎn)。在程序代碼翻譯以前,也可以在編輯源文件時(shí),設(shè)置斷點(diǎn)。斷點(diǎn)可以用以下的方法定義和修改。(1)、用工具欄按鈕。在Editor編輯器或Disassembly窗口選中代碼行,然后單擊斷點(diǎn)按鈕。(2)、用快捷菜單的斷點(diǎn)命令。(3)、Debug菜單下的Breakpoints對(duì)話框可以查看、定義和修改斷點(diǎn)設(shè)置。這個(gè)對(duì)話框可以定義不同訪問(wèn)屬性的斷點(diǎn)。另外,菜單命令Debug Enable Disable Breakpoint用來(lái)開(kāi)啟或暫停光標(biāo)所在行的斷點(diǎn)功能,Debug Disable All Breakpoit用來(lái)暫停所有的斷點(diǎn),Kill All Breakpoit用來(lái)清除所有的斷點(diǎn)設(shè)置。設(shè)置好斷點(diǎn)后可以全速運(yùn)行程序,一旦執(zhí)行到設(shè)置斷點(diǎn)的程序行即停止運(yùn)行,可以在此觀察相關(guān)變量或特殊寄存器的值,以判斷確定程序中存在的問(wèn)題。調(diào)試模式如圖42所示:圖42調(diào)試模式圖43調(diào)試窗口對(duì)樣機(jī)進(jìn)行調(diào)試,首先要進(jìn)行靜態(tài)調(diào)試,靜態(tài)調(diào)試的目的是排除明顯的硬件故障。(1)、靜態(tài)調(diào)試:第一步是在樣機(jī)加電之前,先用萬(wàn)用表等工具,根據(jù)硬件設(shè)計(jì)圖,仔細(xì)檢查樣機(jī)線路是否連接正確,并對(duì)元器件的型號(hào)、規(guī)格和安裝是否符合要求,應(yīng)特別注意電源系統(tǒng)的檢查。第二步是加電后檢查各插件上引腳的電位,仔細(xì)測(cè)量各點(diǎn)電平是否正常。具體步驟:①、 電源檢查②、 各元器件電源檢查③、 檢查相應(yīng)芯片的邏輯關(guān)系(2)、聯(lián)機(jī)仿真、在線動(dòng)態(tài)調(diào)試在靜態(tài)調(diào)試中,對(duì)目標(biāo)樣機(jī)硬件進(jìn)行初步調(diào)試,只是排除了一些明顯靜態(tài)故障。用戶樣機(jī)的硬件故障(如各個(gè)部件內(nèi)部存在的故障和部件之間連接的邏輯錯(cuò)誤)主要是靠聯(lián)機(jī)仿真來(lái)排除的。通過(guò)以上步驟,可排除軟件和硬件的錯(cuò)誤,從而實(shí)現(xiàn)我們預(yù)想的目的與功能。硬件經(jīng)封裝后的PCB圖,如圖44所示:圖44 音樂(lè)播放器的PCB圖經(jīng)過(guò)軟件和硬件的調(diào)試,對(duì)所需器件在電路板上進(jìn)行焊接,最后經(jīng)過(guò)反復(fù)的實(shí)驗(yàn),最終可以根據(jù)所設(shè)定的按鍵功能播放四首不同的歌曲,即梁祝,康定情歌,美酒加咖啡,北國(guó)之春。本次設(shè)計(jì)采用的是C語(yǔ)言編寫的程序,主要是使用C語(yǔ)言進(jìn)行嵌入式系統(tǒng)的開(kāi)發(fā),有著匯編語(yǔ)言所不可比擬的優(yōu)勢(shì)。首先,C語(yǔ)言編程靈活,調(diào)試方便;其次,生成的代碼編譯效率高;還有,便于項(xiàng)目的維護(hù)。在對(duì)程序的調(diào)試使用的keil c51開(kāi)發(fā)系統(tǒng),keil軟件在對(duì)程序進(jìn)行調(diào)試時(shí)提供多個(gè)模擬仿真窗口,主要包括主調(diào)試窗口、輸出調(diào)試窗口、觀測(cè)窗口、存儲(chǔ)器窗口、反匯編窗口、串行窗口等。在調(diào)試過(guò)程中,設(shè)置好斷點(diǎn)后就可以全速運(yùn)行程序,一旦執(zhí)行到設(shè)置斷點(diǎn)的程序行即停止運(yùn)行,可以在此觀察相關(guān)變量或特殊寄存器的值,以判斷確定程序中存在的問(wèn)題。本設(shè)計(jì)的程序經(jīng)過(guò)調(diào)試幾次后,能夠順利運(yùn)行其想要實(shí)現(xiàn)的功能。對(duì)于硬件的焊接和檢測(cè)是也相對(duì)順利,把程序調(diào)進(jìn)單片機(jī)中經(jīng)過(guò)調(diào)試能夠成功實(shí)現(xiàn)多首音樂(lè)的播放。5結(jié)束語(yǔ)經(jīng)過(guò)這段時(shí)間的努力,我在老師、同學(xué)的幫助下終于徹底做完了畢業(yè)設(shè)計(jì)的所有任務(wù)。通過(guò)這次的畢業(yè)設(shè)計(jì),我能運(yùn)用已學(xué)的知識(shí)解決我在設(shè)計(jì)中遇到的問(wèn)題,使自己的動(dòng)手能力和思考問(wèn)題的能力得到了很大的提高。在做畢業(yè)設(shè)計(jì)的過(guò)程中我查閱了很多的資料,并認(rèn)真的閱讀這些與我的設(shè)計(jì)相關(guān)的資料,從而我的專業(yè)涵養(yǎng)得到了很大的提高,知識(shí)的儲(chǔ)備量也有所增加。在做設(shè)計(jì)時(shí),我復(fù)習(xí)了很多專業(yè)課的知識(shí),這使得我的專業(yè)知識(shí)在離校之前得到了鞏固。本文通過(guò)對(duì)基于單片機(jī)音樂(lè)演奏控制設(shè)計(jì)的研究和設(shè)計(jì),分析了設(shè)計(jì)的實(shí)現(xiàn)的意義和可行性。單片機(jī)AT889S51是一種非常小巧但功能非常多,應(yīng)用非常廣的一種芯片,功率也非常的小,本設(shè)計(jì)采用AT89S51作為系統(tǒng)核心制作音樂(lè)演奏控制設(shè)計(jì)電路簡(jiǎn)單了很多,由于可以反復(fù)燒寫,為學(xué)習(xí)降低成本。本設(shè)計(jì)外部采用單片機(jī)的復(fù)位電路設(shè)計(jì)、單片機(jī)的震蕩電路設(shè)計(jì)、LED數(shù)碼管顯示正在播放的音樂(lè)序號(hào),四個(gè)按鍵控制顯示等,設(shè)計(jì)出了能播放四首音樂(lè)的簡(jiǎn)單播放器,但由于AT89S51分辨率不是太高,音樂(lè)有點(diǎn)單調(diào),另外,由于時(shí)間關(guān)系具體電路還有的地方不盡完善之處。本次畢業(yè)設(shè)計(jì)讓我進(jìn)一步體驗(yàn)到設(shè)計(jì)的興趣,在設(shè)計(jì)的過(guò)程中,我進(jìn)一步熟悉了單片機(jī)的有關(guān)知識(shí),以及protel DXP軟件和keil軟件的應(yīng)用。我也體會(huì)到設(shè)計(jì)要先動(dòng)腦,再動(dòng)手,最后才動(dòng)口。在仿真和測(cè)試時(shí)也遇到了一些問(wèn)題,由于程序的編寫不太完善,造成仿真不出結(jié)果,最后經(jīng)過(guò)多次努力終于成功。但是,由于電路簡(jiǎn)單,播放器的功能簡(jiǎn)單,不能形成具有mp3的播放功能。致 謝當(dāng)畢業(yè)論文完整的呈現(xiàn)在眼前時(shí),我的大學(xué)生活也接近尾聲。首先,在本文收筆之際,我首先要衷心感謝我的指導(dǎo)老師高娜老師。高老師的通情達(dá)理讓我有了自己的選擇的機(jī)會(huì),她一次次耐心的指導(dǎo)我寫作畢業(yè)論文,讓我最終完成了畢業(yè)設(shè)計(jì)。我還要感謝我的同學(xué)們,謝謝他們?cè)谖矣欣щy的時(shí)候幫助我,他們及時(shí)的幫忙,讓我順利的完成了畢業(yè)設(shè)計(jì)。在我論文定稿的這一刻,我要感謝一直陪伴我成長(zhǎng)的親人、同學(xué)、師長(zhǎng),是你們的關(guān)愛(ài)和幫助,讓我度過(guò)了無(wú)數(shù)迷茫、憂郁、孤單、甚至絕望的日
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1