基于單片機(jī)的電子琴及音樂(lè)播放器設(shè)計(jì)_第1頁(yè)
基于單片機(jī)的電子琴及音樂(lè)播放器設(shè)計(jì)_第2頁(yè)
基于單片機(jī)的電子琴及音樂(lè)播放器設(shè)計(jì)_第3頁(yè)
基于單片機(jī)的電子琴及音樂(lè)播放器設(shè)計(jì)_第4頁(yè)
基于單片機(jī)的電子琴及音樂(lè)播放器設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

基于單片機(jī)的電子琴及音樂(lè)播放器設(shè)計(jì)摘要隨著電子技術(shù)的開(kāi)展和計(jì)算機(jī)越來(lái)越普遍的使用,單片機(jī)作為這兩項(xiàng)技術(shù)的有機(jī)結(jié)合也得到了廣泛的應(yīng)用。電子琴是現(xiàn)代電子科技與音樂(lè)結(jié)合的產(chǎn)物,是一種新型的鍵盤(pán)樂(lè)器。它在現(xiàn)代音樂(lè)扮演重要的角色,單片機(jī)具有強(qiáng)大的控制功能和靈活的編程實(shí)現(xiàn)特性,它已經(jīng)溶入現(xiàn)代人們的生活中,成為不可替代的一局部。此次設(shè)計(jì)依據(jù)單片機(jī)技術(shù)原理,通過(guò)硬件電路制作以及軟件編譯,設(shè)計(jì)制作出一個(gè)基于AT89C52系列單片機(jī)的電子琴及音樂(lè)播放器,以單片機(jī)作為主控核心,主要由按鍵電路、復(fù)位電路、模式轉(zhuǎn)換電路等組成。利用單片機(jī)及KeilC51編程軟件編程和PROTEUS單片機(jī)仿真軟件和電子電工等方面知識(shí),用KeilC51編程軟件編程,用PROTEUS單片機(jī)仿真軟件仿真。最后制作實(shí)物,將程序下載到單片機(jī)中,利用I/O口產(chǎn)生一定頻率的方波,驅(qū)動(dòng)喇叭,發(fā)出不同的音調(diào),從而演奏樂(lè)曲。本論文給出了系統(tǒng)方案的建立、硬件電路的詳細(xì)設(shè)計(jì)及軟件的程序?qū)崿F(xiàn)。并通過(guò)軟硬件的聯(lián)立調(diào)試,驗(yàn)證了設(shè)計(jì)方案的可行性。通過(guò)基于單片機(jī)的音樂(lè)播放器的設(shè)計(jì)課題熟悉和理解單片機(jī)應(yīng)用和開(kāi)發(fā)過(guò)程,培養(yǎng)我們理論聯(lián)系實(shí)際,實(shí)踐出真知的科學(xué)嚴(yán)謹(jǐn)求學(xué)的態(tài)度,提高實(shí)踐動(dòng)手操作技能。關(guān)鍵詞:AT89C52單片機(jī)、電子琴、音樂(lè)播放器、仿真軟件目錄TOC\o"1-3"\h\u13884摘要1256961引言3287152單片機(jī)根底知識(shí)簡(jiǎn)介 498072.1單片機(jī)介紹 4252892.1.1單片機(jī)概念 436792.1.2單片機(jī)的應(yīng)用 4121572.1.3單片機(jī)的開(kāi)展趨勢(shì) 5193773課程設(shè)計(jì)介紹6304293.1課程設(shè)計(jì)的目的 6150223.2課程設(shè)計(jì)的要求 643993.3系統(tǒng)方案的擬定與選擇 746073.3.1初步方案確實(shí)定 710323.3.2方案的簡(jiǎn)單說(shuō)明 731153.4課程設(shè)計(jì)的總體結(jié)構(gòu)框圖 7261033.5課程設(shè)計(jì)的意義 869514硬件設(shè)計(jì) 8103204.1硬件電路的設(shè)計(jì)框圖 8238994.2硬件電路設(shè)計(jì)模塊的選定 8165374.2.1中心模塊 820324.2.2播放模塊 9138694.2.3按鍵模塊10226205軟件設(shè)計(jì) 12322645.1軟件系統(tǒng)介紹 12285565.2編程軟件——KeilC51 1276405.2.1KeilC51概述 12192275.2.2KeilC51的整體結(jié)構(gòu) 1363505.2.3采用KeilC51開(kāi)發(fā)的AT89C51單片機(jī)應(yīng)用程序步驟13300645.3繪圖軟件——Proteus13316855.3.1Proteus概述1330155.3.2proteus的操作步驟14193755.4單片機(jī)的發(fā)聲原理 14290275.5系統(tǒng)程序設(shè)計(jì)15287825.5.1主程序流程圖設(shè)計(jì)153895.5.21ms延時(shí)程序設(shè)計(jì) 17183135.5.3函數(shù)初始化子程序設(shè)計(jì) 18240216設(shè)計(jì)心得體會(huì)1895558附錄 2095738.1附錄一硬件原理圖 201278.2附錄二實(shí)物圖 201158.3附錄三元器件清單2190238.4附錄四軟件主程序 211引言二十一世紀(jì),電子技術(shù)獲得了飛速的開(kāi)展,在其推動(dòng)下,現(xiàn)代電子產(chǎn)品幾乎滲透了社會(huì)的各個(gè)領(lǐng)域,有力地推動(dòng)了社會(huì)生產(chǎn)力的開(kāi)展和社會(huì)信息化程度的提高,同時(shí)也使現(xiàn)代電子產(chǎn)品性能進(jìn)一步提高,產(chǎn)品更新?lián)Q代的節(jié)奏也越來(lái)越快。在信息家電和行業(yè)應(yīng)用手持信息設(shè)備等信息終端類(lèi)產(chǎn)品中,具備音樂(lè)播放功能已成為此類(lèi)產(chǎn)品的開(kāi)展趨勢(shì)之一?;陔娮忧俚闹T多優(yōu)點(diǎn)和廣泛使用,是我們大家日常生活中較為熟悉的一種電子產(chǎn)品。為培養(yǎng)我們大學(xué)生的思考、理解身邊電子產(chǎn)品的習(xí)慣和提高自己的實(shí)際動(dòng)手能力,我選擇了設(shè)計(jì)一款以AT89C52單片機(jī)為核心的音樂(lè)播放器作為自己的單片機(jī)課程設(shè)計(jì)。本次設(shè)計(jì)由硬件電路設(shè)計(jì)和軟件程序設(shè)計(jì)兩大局部組成,是應(yīng)用MCS-51單片機(jī)原理和控制理論設(shè)計(jì)音樂(lè)演奏控制器的硬件電路,并利用匯編語(yǔ)言進(jìn)行程序設(shè)計(jì)。整個(gè)硬件電路是由中心控制、播放和按鍵等模塊組成,中心控制模塊采用AT89C52單片機(jī),播放模塊是由8050NPN三極管和喇叭組成,電子琴設(shè)有8個(gè)按鍵,實(shí)現(xiàn)用戶(hù)自彈作曲。一首音樂(lè)是許多不同的音階組成的,而每個(gè)音階對(duì)應(yīng)著不同的頻率,這樣我們就可以利用不同的頻率的組合,構(gòu)成我們想演奏的那首曲目。當(dāng)然對(duì)于單片機(jī)來(lái)產(chǎn)生不同的頻率非常方便,我們可以利用單片機(jī)的定時(shí)/計(jì)數(shù)器T0來(lái)產(chǎn)生這樣的方波頻率信號(hào),因此,我們只要把一首歌曲的音階對(duì)應(yīng)頻率關(guān)系編寫(xiě)正確就可以到達(dá)我們想要的曲目。本文主要對(duì)使用單片機(jī)設(shè)計(jì)簡(jiǎn)易電子琴進(jìn)行了分析,并介紹了基于單片機(jī)電子琴硬件的組成。利用單片機(jī)產(chǎn)生不同頻率來(lái)獲得我們要求的音階,最終可隨意彈奏要表達(dá)的音符。并且分別從原理圖,主要芯片,個(gè)模塊原理及各模塊的程序的調(diào)試來(lái)詳細(xì)闡述。2單片機(jī)根底知識(shí)簡(jiǎn)介2.1單片機(jī)介紹2.1.1單片機(jī)概念單片機(jī)〔SCM〕又稱(chēng)單片微控制器,它不是完成某一個(gè)邏輯功能的芯片,而是將中央處理單元〔CPU〕、存儲(chǔ)器〔RAM,ROM〕、輸入/輸出接口電路等微型計(jì)算機(jī)的根本功能部件集成在一塊集成電路芯片上,構(gòu)成一個(gè)具有存儲(chǔ)、運(yùn)算、輸入輸出功能的微型計(jì)算機(jī)。MCS-51單片機(jī)是美國(guó)INTEL公司于1980年推出的產(chǎn)品,與MCS-48單片機(jī)相比,它的結(jié)構(gòu)更先進(jìn),功能更強(qiáng),在原來(lái)的根底上增加了更多的電路單元和指令,指令數(shù)達(dá)111條,MCS-51單片機(jī)可以算是相當(dāng)成功的產(chǎn)品,一直到現(xiàn)在,MCS-51系列或其兼容的單片機(jī)仍是應(yīng)用的主流產(chǎn)品,各高校及專(zhuān)業(yè)學(xué)校的培訓(xùn)教材仍與MSC-51單片機(jī)作為代表進(jìn)行理論根底學(xué)習(xí)。MCS-51系列單片機(jī)主要包括8031、8051和8751等通用產(chǎn)品。DP-51S單片機(jī)仿真實(shí)驗(yàn)儀是由廣州致遠(yuǎn)電子設(shè)計(jì)的DP系列單片機(jī)仿真實(shí)驗(yàn)儀之一,是一種功能強(qiáng)大的單片機(jī)應(yīng)用技術(shù)學(xué)習(xí)、調(diào)試。2.1.2單片機(jī)的應(yīng)用單片機(jī)的應(yīng)用提高了機(jī)電產(chǎn)品的技術(shù)水平和自動(dòng)化程度,對(duì)各行各業(yè)的技術(shù)改造和產(chǎn)品更新起到了重要的推動(dòng)作用。其應(yīng)用領(lǐng)域已從工業(yè)控制、儀器儀表、機(jī)電一體化設(shè)備等迅速開(kāi)展到家用電器、辦公自動(dòng)化、汽車(chē)電子等廣闊領(lǐng)域。一、在智能儀器儀表的應(yīng)用單片機(jī)具有體積小、功耗低、控制功能強(qiáng)、擴(kuò)展靈活、微型化和使用方便等優(yōu)點(diǎn),廣泛應(yīng)用于儀器儀表中,結(jié)合不同類(lèi)型的傳感器,可實(shí)現(xiàn)諸如電壓、功率、頻率、濕度、溫度、流量、速度、厚度、角度、長(zhǎng)度、硬度、元素、壓力等物理量的測(cè)量。采用單片機(jī)控制使得儀器儀表數(shù)字化、智能化、微型化,且功能比起采用電子或數(shù)字電路更加強(qiáng)大。例如精密的測(cè)量設(shè)備〔功率計(jì),示波器,各種分析儀〕。二、在家用電器中的應(yīng)用可以這樣說(shuō),現(xiàn)在的家用電器根本上都采用了單片機(jī)控制,從電飯煲、洗衣機(jī)、電冰箱、空調(diào)機(jī)、彩電、其他音響視頻器材、再到電子秤量設(shè)備,五花八門(mén),無(wú)所不在。三、在工業(yè)控制中的應(yīng)用用單片機(jī)可以構(gòu)成形式多樣的控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)。例如工廠流水線(xiàn)的智能化管理,電梯智能化控制、各種報(bào)警系統(tǒng),與計(jì)算機(jī)聯(lián)網(wǎng)構(gòu)成二級(jí)控制系統(tǒng)等。四、在計(jì)算機(jī)網(wǎng)絡(luò)和通信領(lǐng)域中的應(yīng)用現(xiàn)代的單片機(jī)普遍具備通信接口,可以很方便地與計(jì)算機(jī)進(jìn)行數(shù)據(jù)通信,為在計(jì)算機(jī)網(wǎng)絡(luò)和通信設(shè)備間的應(yīng)用提供了極好的物質(zhì)條件,現(xiàn)在的通信設(shè)備根本上都實(shí)現(xiàn)了單片機(jī)智能控制,從、機(jī)、小型程控交換機(jī)、樓宇自動(dòng)通信呼叫系統(tǒng)、列車(chē)無(wú)線(xiàn)通信、再到日常工作中隨處可見(jiàn)的移動(dòng),集群移動(dòng)通信,無(wú)線(xiàn)電對(duì)講機(jī)等。五、單片機(jī)在醫(yī)用設(shè)備領(lǐng)域中的應(yīng)用單片機(jī)在醫(yī)用設(shè)備中的用途亦相當(dāng)廣泛,例如醫(yī)用呼吸機(jī),各種分析儀,監(jiān)護(hù)儀,超聲診斷設(shè)備及病床呼叫系統(tǒng)等等。此外,單片機(jī)在工商、金融、科研、教育、國(guó)防航空等領(lǐng)域都有著十分廣泛的用途。2.1.3單片機(jī)的開(kāi)展趨勢(shì)單片機(jī)現(xiàn)在可以說(shuō)是百花齊放,百家爭(zhēng)鳴的時(shí)期,世界上各大芯片制造公司都推出了自己的單片機(jī),從8位、16位到32位,數(shù)不勝數(shù),應(yīng)有盡有,有與主流C51系列兼容的,也有不兼容的,但它們各具特色,互成互補(bǔ),為單片機(jī)的應(yīng)用提供了廣闊的天地。縱觀單片機(jī)的開(kāi)展過(guò)程,可以預(yù)示單片機(jī)的開(kāi)展趨勢(shì),大致有:〔1〕微型單片化現(xiàn)在常規(guī)的單片機(jī)普遍都是將中央處理器〔CPU〕、隨機(jī)存取數(shù)據(jù)存儲(chǔ)〔RAM〕、只讀程序存儲(chǔ)器〔ROM〕、并行和串行通信接口,中斷系統(tǒng)、定時(shí)電路、時(shí)鐘電路集成在一塊單一的芯片上,增強(qiáng)型的單片機(jī)集成了如A/D轉(zhuǎn)換器、PMW〔脈寬調(diào)制電路〕、WDT〔看門(mén)狗〕、有些單片機(jī)將LCD〔液晶〕驅(qū)動(dòng)電路都集成在單一的芯片上,這樣單片機(jī)包含的單元電路就更多,功能就越強(qiáng)大。甚至單片機(jī)廠商還可以根據(jù)用戶(hù)的要求量身定做,制造出具有自己特色的單片機(jī)芯片。此外,現(xiàn)在的產(chǎn)品普遍要求體積小、重量輕,這就要求單片機(jī)除了功能強(qiáng)和功耗低外,還要求其體積要小。現(xiàn)在的許多單片機(jī)都具有多種封裝形式,其中SMD〔外表封裝〕越來(lái)越受歡送,使得由單片機(jī)構(gòu)成的系統(tǒng)正朝微型化方向開(kāi)展?!?〕低功耗CMOS化MCS-51系列的8031推出時(shí)的功耗達(dá)630mW,而現(xiàn)在的單片機(jī)普遍都在100mW左右,隨著對(duì)單片機(jī)功耗要求越來(lái)越低,現(xiàn)在的各個(gè)單片機(jī)制造商根本都采用了CMOS〔互補(bǔ)金屬氧化物半導(dǎo)體工藝〕。像80C51就采用了HMOS〔即高密度金屬氧化物半導(dǎo)體工藝〕和CHMOS〔互補(bǔ)高密度金屬氧化物半導(dǎo)體工藝〕。CMOS雖然功耗低,但由于其物理特征決定其工作速度不夠高,而CHMOS那么具備了高速和低功耗的特點(diǎn),這些特征,更適合于要求低功耗像電池供電的應(yīng)用場(chǎng)合。所以這種工藝將是今后一段時(shí)期單片機(jī)開(kāi)展的主要途徑?!?〕主流與多品種共存現(xiàn)在雖然單片機(jī)的品種繁多,各具特色,但仍以80C51為核心的單片機(jī)占主流,兼容其結(jié)構(gòu)和指令系統(tǒng)的有PHILIPS公司的產(chǎn)品,ATMEL公司的產(chǎn)品和中國(guó)臺(tái)灣的Winbond系列單片機(jī)。所以80C51占據(jù)了半壁江山。而Microchip公司的PIC精簡(jiǎn)指令集合〔RISC〕也有著強(qiáng)勁的開(kāi)展勢(shì)頭,中國(guó)臺(tái)灣的HOLTEX公司近年的單片機(jī)產(chǎn)量與日俱增,與其底價(jià)質(zhì)優(yōu)的優(yōu)勢(shì),占據(jù)一定的市場(chǎng)份額。此外還有MOTOROLA公司的產(chǎn)品,日本幾大公司的專(zhuān)用單片機(jī)。在一定的時(shí)期內(nèi),這種情形將得以延續(xù),將不存在某個(gè)單片機(jī)一統(tǒng)天下的壟斷局面,走的是依存互補(bǔ)、相輔相成、共同開(kāi)展的道路。九十年代以后,單片機(jī)在結(jié)構(gòu)上采用雙CPU或內(nèi)部流水線(xiàn),CPU位數(shù)有8位、16位、32位,時(shí)鐘頻率高達(dá)20MHZ,片內(nèi)帶有PWM輸出、監(jiān)視定時(shí)器WDT、可編程計(jì)數(shù)器陣列PCA、DMA傳輸、調(diào)制解調(diào)器等。芯片向高度集成化、低功耗方向的開(kāi)展,使得單片機(jī)在大量數(shù)據(jù)的實(shí)時(shí)處理、高級(jí)通信系統(tǒng)、數(shù)字信號(hào)處理、復(fù)雜工業(yè)過(guò)程控制、高級(jí)機(jī)器人以及局域網(wǎng)等方面得到大量應(yīng)用。這類(lèi)單片機(jī)有NEC公司的MPD7800,MITSUBISHI公司的M337700,REVKWELL公司的R6500。3課程設(shè)計(jì)介紹3.1課程設(shè)計(jì)的目的以AT89C52單片機(jī)、喇叭、按鈕等元器件,并利用單片機(jī)的原理組成一個(gè)電子琴音樂(lè)播放器。3.2課程設(shè)計(jì)的要求〔1〕用Proteus畫(huà)圖軟件畫(huà)出音樂(lè)播放器的硬件原理圖。〔2〕畫(huà)出軟件流程圖,采用單片機(jī)C語(yǔ)言根據(jù)音樂(lè)播放器要實(shí)現(xiàn)的功能進(jìn)行編程?!?〕用Keil編程軟件調(diào)試所編的C程序,并將其生成*.hex文件,首先將其載入硬件原理圖的單片機(jī)中,完成硬件與軟件調(diào)試綜合調(diào)試,實(shí)現(xiàn)預(yù)定功能。〔4〕根據(jù)所設(shè)計(jì)的硬件原理圖進(jìn)行實(shí)物焊接,將生成的*.hex文件燒入芯片中,實(shí)現(xiàn)設(shè)計(jì)要求?!?〕寫(xiě)出課程實(shí)習(xí)報(bào)告3.3系統(tǒng)方案的擬定與選擇3.3.1初步方案確實(shí)定在課程設(shè)計(jì)實(shí)習(xí)開(kāi)始之前,我們?cè)趫D書(shū)館及電子閱覽室進(jìn)行了大量資料的收集,通過(guò)我們組成員的探討,初步確定了設(shè)計(jì)方案,基于單片機(jī)的電子琴及音樂(lè)播放器設(shè)計(jì)。3.3.2方案的簡(jiǎn)單說(shuō)明主要實(shí)現(xiàn)的是7個(gè)按鍵實(shí)現(xiàn)彈奏功能,1個(gè)按鍵能夠?qū)崿F(xiàn)音樂(lè)播放??刂奇I盤(pán),將8個(gè)按鍵依次接在P2口上,使其一旦有按鍵按下就會(huì)對(duì)應(yīng)播放一個(gè)對(duì)應(yīng)的音符。停止按鍵可以使用復(fù)位電路來(lái)實(shí)現(xiàn)。各音調(diào)對(duì)應(yīng)的定時(shí)器初始裝載表也以數(shù)組的形式按升調(diào)順序存儲(chǔ),并按前面所述將各歌曲的對(duì)應(yīng)音調(diào)和節(jié)拍存儲(chǔ)在數(shù)組中,有按鍵按下時(shí),將歌曲的數(shù)組首地址傳給全局指針,利用相應(yīng)的處理函數(shù)調(diào)出音調(diào)對(duì)應(yīng)的定時(shí)器裝載值表,給定時(shí)器裝載初值并啟動(dòng),產(chǎn)生控制揚(yáng)聲器的方波,根據(jù)低半字節(jié)控制延時(shí)時(shí)間,即音調(diào)的發(fā)音長(zhǎng)短。3.4課程設(shè)計(jì)的總體結(jié)構(gòu)框圖單片機(jī)接+5V電源供電,晶振電路產(chǎn)生單片機(jī)所需時(shí)鐘信號(hào),通過(guò)功能鍵產(chǎn)生外部中斷,再由I/O接口輸出控制揚(yáng)聲器發(fā)聲。另外,復(fù)位電路在于營(yíng)造一個(gè)程序運(yùn)行的初始狀態(tài),在程序運(yùn)行過(guò)程中或有出錯(cuò)時(shí),重新啟動(dòng)單片機(jī)工作。課程設(shè)計(jì)總體框圖如下列圖所示:電源電路電源電路復(fù)位電路放大電路晶振電路按鍵電路揚(yáng)聲器AT89C52單片機(jī)圖3.4課程設(shè)計(jì)總體框圖3.5課程設(shè)計(jì)的意義從最開(kāi)始的選擇課題、設(shè)計(jì)方案,到軟件及硬件的設(shè)計(jì),自己動(dòng)手畫(huà)硬件電路圖,進(jìn)行排版焊接,軟件調(diào)試,使得我們更好地熟悉和掌握單片機(jī)的原理、根本功能和編程,深入了解51單片機(jī)的實(shí)際應(yīng)用,更深的理解、吸收課堂上所學(xué)知識(shí),將理論及實(shí)際聯(lián)系在一起,更好地提高動(dòng)手能力,及發(fā)現(xiàn)問(wèn)題、分析問(wèn)題、解決問(wèn)題的能力。此外,還加強(qiáng)了組員間的合作意識(shí)。4硬件設(shè)計(jì)4.1硬件電路的設(shè)計(jì)框圖硬件電路由控制模塊、按鍵模塊、揚(yáng)聲器播放模塊、放大模塊組成。硬件總體框圖如下列圖所示:圖4.1硬件總體框圖按鍵模塊共由8個(gè)按鍵組成,實(shí)現(xiàn)音樂(lè)的自行彈奏和播放已存入的歌曲。揚(yáng)聲器塊由三極管及喇叭組成,通過(guò)控制模塊的控制對(duì)當(dāng)前音樂(lè)進(jìn)行播放。8個(gè)鍵作為音符的輸入或音樂(lè)的播放選擇。4.2硬件電路設(shè)計(jì)模塊的選定4.2.1中心模塊AT89C52是51系列單片機(jī)的一個(gè)型號(hào),它是ATMEL公司生產(chǎn)的。AT89C52是一個(gè)低電壓,高性能CMOS8位單片機(jī),片內(nèi)含8kbytes的可反復(fù)擦寫(xiě)的Flash只讀程序存儲(chǔ)器和256bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器〔RAM〕,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲(chǔ)單元,功能強(qiáng)大的AT89C52單片機(jī)可為您提供許多較復(fù)雜系統(tǒng)控制應(yīng)用場(chǎng)合。AT89C52有40個(gè)引腳,32個(gè)外部雙向輸入/輸出〔I/O〕端口,同時(shí)內(nèi)含2個(gè)外中斷口,3個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,2個(gè)讀寫(xiě)口線(xiàn),AT89C52可以按照常規(guī)方法進(jìn)行編程,但不可以在線(xiàn)編程(S系列的才支持在線(xiàn)編程)。其將通用的微處理器和Flash存儲(chǔ)器結(jié)合在一起,特別是可反復(fù)擦寫(xiě)的Flash存儲(chǔ)器可有效地降低開(kāi)發(fā)本錢(qián)。AT89C52有PDIP、PQFP/TQFP及PLCC等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。主要功能特性:〔1〕兼容MCS51指令系統(tǒng):8k可反復(fù)擦寫(xiě)(>1000次〕FlashROM。〔2〕32個(gè)雙向I/O口:256x8bit內(nèi)部RAM?!?〕3個(gè)16位可編程定時(shí)/計(jì)數(shù)器中斷:時(shí)鐘頻率0-24MHz?!?〕2個(gè)串行中斷:可編程UART串行通道?!?〕2個(gè)外部中斷源:共6個(gè)中斷源?!?〕2個(gè)讀寫(xiě)中斷口線(xiàn):3級(jí)加密位?!?〕低功耗空閑和掉電模式:軟件設(shè)置睡眠和喚醒功能。從本系統(tǒng)設(shè)計(jì)的功能需求及本錢(qián)考慮,51單片機(jī)性?xún)r(jià)比更高,AT89C52是擁有2個(gè)外部中斷,2個(gè)16位定時(shí)器,2個(gè)可編程串行UART的單片機(jī)。中心控制模塊采用AT89C52單片機(jī)已完全滿(mǎn)足設(shè)計(jì)需要,實(shí)現(xiàn)整個(gè)系統(tǒng)控制。AT89C52的引腳圖如下:圖4.1AT89C52引腳圖4.2.2播放模塊播放模塊是由8050NPN三極管和喇叭組成。AT89S52輸出高電平控制信號(hào),啟動(dòng)8050NPN三極管使信號(hào)放大,從而啟動(dòng)喇叭。但由于所需驅(qū)動(dòng)功率較小,驅(qū)動(dòng)器件要求不高,并能降低設(shè)計(jì)本錢(qián)。因此,必須選用8050NPN三極管和喇叭那么能滿(mǎn)足系統(tǒng)要求。播放模塊如下列圖所示:圖4.2播放模塊4.2.3按鍵模塊按鍵模塊有9個(gè)按鍵,其中7個(gè)按鍵,即為電子琴模塊,7個(gè)按鍵分別代表7個(gè)音符,作為音符輸入,實(shí)現(xiàn)用戶(hù)自彈作曲。另外1個(gè)按鍵可以進(jìn)行播放模式與自行彈奏模式的轉(zhuǎn)換。還有一個(gè)按鍵,為復(fù)位按鍵,復(fù)位電路在于營(yíng)造一個(gè)程序運(yùn)行的初始狀態(tài),在程序運(yùn)行過(guò)程中或有出錯(cuò)時(shí),重新啟動(dòng)單片機(jī)工作。通過(guò)軟硬件設(shè)計(jì),在電子琴模式時(shí),通過(guò)查詢(xún)電子琴所按下的按鍵,讀取電子琴輸入狀態(tài),跳轉(zhuǎn)到對(duì)應(yīng)的程序人口,實(shí)現(xiàn)自編歌曲。模式轉(zhuǎn)換按鍵觸發(fā)外部中斷1,中斷使程序跳轉(zhuǎn),實(shí)現(xiàn)模式轉(zhuǎn)換,啟動(dòng)音樂(lè)播放功能。當(dāng)需要取消音樂(lè)播放功能時(shí),按下復(fù)位按鍵.即可退出音樂(lè)播放功能而返回到原來(lái)電子琴功能處。各模塊如下列圖所示:圖4.3電子琴按鍵模塊圖4.4復(fù)位按鍵模塊5軟件設(shè)計(jì)5.1軟件系統(tǒng)介紹一個(gè)系統(tǒng)的正常運(yùn)行不僅需要硬件系統(tǒng)的支持,而且需要軟件系統(tǒng)的支持。如果把硬件比作軀體,那軟件就是靈魂,硬件系統(tǒng)和軟件系統(tǒng)相互間密切的配合才構(gòu)建了能夠“思考〞和“判斷〞的整體系統(tǒng)。借助軟件的可編程性,可以精簡(jiǎn)硬件系統(tǒng)的組成;憑借軟件的靈活性,可以不用對(duì)硬件系統(tǒng)進(jìn)行修改而實(shí)現(xiàn)系統(tǒng)功能的修改。軟件系統(tǒng)與硬件系統(tǒng)是密切相聯(lián)的,軟件系統(tǒng)建立在硬件系統(tǒng)之上,離開(kāi)了硬件系統(tǒng),軟件將無(wú)法實(shí)現(xiàn)任何功能。軟件的設(shè)計(jì)有一定的針對(duì)性,對(duì)于不同的硬件系統(tǒng),需要編寫(xiě)不同的軟件。與硬件系統(tǒng)一樣,軟件系統(tǒng)的好壞,直接影響到系統(tǒng)的工作效率和可靠性。5.2編程軟件——KeilC515.2.1KeilC51概述單片機(jī)的開(kāi)發(fā)軟件在不斷開(kāi)展,Keil軟件是目前最流行開(kāi)發(fā)MCS-51系列單片機(jī)的軟件。Keil提供了包括C編譯器、宏匯編、連接器、庫(kù)管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開(kāi)發(fā)方案,通過(guò)一個(gè)集成開(kāi)發(fā)環(huán)境〔uVision〕將這些部份組合在一起。運(yùn)行Keil軟件需要Pentium或以上的CPU,16MB或更多RAM、20M以上空閑的硬盤(pán)空間、WIN98、NT、WIN2000、WINXP等操作系統(tǒng)。掌握這一軟件的使用對(duì)于使用51系列單片機(jī)的愛(ài)好者來(lái)說(shuō)是十分必要的。本次課程設(shè)計(jì)正是使用KeilC51編程軟件KeilC51是美國(guó)KeilSoftware公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開(kāi)發(fā)系統(tǒng),與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。用過(guò)匯編語(yǔ)言后再使用C來(lái)開(kāi)發(fā),體會(huì)更加深刻。KeilC51軟件提供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開(kāi)發(fā)調(diào)試工具,全Windows界面。C51工具包的整體結(jié)構(gòu),其中uVision與Ishell分別是C51forWindows和forDos的集成開(kāi)發(fā)環(huán)境(IDE),可以完成編輯、編譯、連接、調(diào)試、仿真等整個(gè)開(kāi)發(fā)流程。開(kāi)發(fā)人員可用IDE本身或其它編輯器編輯C或匯編源文件。然后分別由C51及A51編譯器編譯生成目標(biāo)文件(.OBJ)。目標(biāo)文件可由LIB51創(chuàng)立生成庫(kù)文件,也可以與庫(kù)文件一起經(jīng)L51連接定位生成絕對(duì)目標(biāo)文件(.ABS)。ABS文件由OH51轉(zhuǎn)換成標(biāo)準(zhǔn)的Hex文件,以供調(diào)試器dScope51或tScope51使用進(jìn)行源代碼級(jí)調(diào)試,也可由仿真器使用直接對(duì)目標(biāo)板進(jìn)行調(diào)試,也可以直接寫(xiě)入程序存貯器如EPROM中。5.2.2KeilC51的整體結(jié)構(gòu)C51工具包的整體結(jié)構(gòu)中,其中uVision與Ishell分別是C51forWindows和forDos的集成開(kāi)發(fā)環(huán)境(IDE),可以完成編輯、編譯、連接、調(diào)試、仿真等整個(gè)開(kāi)發(fā)流程。開(kāi)發(fā)人員可用IDE本身或其它編輯器編輯C或匯編源文件。然后分別由C51及A51編譯器編譯生成目標(biāo)文件(.OBJ)。目標(biāo)文件可由LIB51創(chuàng)立生成庫(kù)文件,也可以與庫(kù)文件一起經(jīng)L51連接定位生成絕對(duì)目標(biāo)文件(.ABS)。ABS文件由OH51轉(zhuǎn)換成標(biāo)準(zhǔn)的Hex文件,以供調(diào)試器dScope51或tScope51使用進(jìn)行源代碼級(jí)調(diào)試,也可由仿真器使用直接對(duì)目標(biāo)板進(jìn)行調(diào)試,也可以直接寫(xiě)入程序存貯器如EPROM中。5.2.3采用KeilC51開(kāi)發(fā)的AT89C51單片機(jī)應(yīng)用程序步驟〔1〕在uVision集成開(kāi)發(fā)環(huán)境中創(chuàng)立新工程〔Project〕,擴(kuò)展文件名為.UV2,并為該工程選定適宜的單片機(jī)CPU器件?!?〕用uVision的文本編輯器編寫(xiě)源文件,可以是匯編文件〔.ASM〕,也可以使C語(yǔ)言文件〔擴(kuò)展名.C〕本設(shè)計(jì)是*.C文件,并將該文件添加到工程中去。一個(gè)工程文件可以包含多個(gè)文件,除了源程序文件外,還可以是庫(kù)文件、頭文件或文本說(shuō)明文件?!?〕通過(guò)uVision4的相關(guān)選擇項(xiàng),配置編譯環(huán)境、連接定位器以及Debug調(diào)試器的功能?!?〕對(duì)工程中的源文件進(jìn)行編譯連接,生成絕對(duì)目標(biāo)代碼和可選的HEX文件,如果出現(xiàn)編譯連接錯(cuò)誤那么返回到〔2〕,修改源文件中的錯(cuò)誤后重構(gòu)整個(gè)工程?!?〕對(duì)沒(méi)有語(yǔ)法錯(cuò)誤的程序進(jìn)行仿真調(diào)試,調(diào)試成功后將*.hex文件寫(xiě)入到單片機(jī)應(yīng)用系統(tǒng)的ROM中。5.3繪圖軟件——Proteus5.3.1Proteus概述Proteus軟件是英國(guó)Labcenterelectronics公司出版的EDA工具軟件。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機(jī)及外圍器件,是目前最好的仿真單片機(jī)及外圍器件的工具。雖然目前國(guó)內(nèi)推廣剛起步,但已受到單片機(jī)愛(ài)好者、從事單片機(jī)教學(xué)的教師、致力于單片機(jī)開(kāi)發(fā)應(yīng)用的科技工作者的青睞。Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機(jī)與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計(jì),真正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。是目前世界上唯一將電路仿真軟件、PCB設(shè)計(jì)軟件和虛擬模型仿真軟件三合一的設(shè)計(jì)平臺(tái),其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2023年又增加了Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MPLAB等多種編譯器。Proteus軟件具有如下功能:〔1〕原理布圖。〔2〕PCB自動(dòng)或人工布線(xiàn)?!?〕SPICE電路仿真。5.3.2proteus的操作步驟(1)硬件電路圖的接法操作①放置選擇〔刪除〕元器件=2\*GB3②移動(dòng)元器件=3\*GB3③縮放視圖=4\*GB3④連接導(dǎo)線(xiàn)=5\*GB3⑤仿真,調(diào)試〔2〕單片機(jī)系統(tǒng)PROTEUS設(shè)計(jì)與仿真過(guò)程Proteus強(qiáng)大的單片機(jī)系統(tǒng)設(shè)計(jì)與仿真功能,使它可成為單片機(jī)系統(tǒng)應(yīng)用開(kāi)發(fā)和改良手段之一。全部過(guò)程都是在計(jì)算機(jī)上通過(guò)Proteus來(lái)完成的。其過(guò)程一般也可分為三步:在ISIS平臺(tái)上進(jìn)行單片機(jī)系統(tǒng)電路設(shè)計(jì)、選擇元器件、接插件、連接電路和電氣檢測(cè)等。簡(jiǎn)稱(chēng)Proteus電路設(shè)計(jì)。Keil平臺(tái)上進(jìn)行單片機(jī)系統(tǒng)程序設(shè)計(jì)、編輯、匯編編譯、代碼級(jí)調(diào)試,最后生成目標(biāo)代碼文件〔*.hex〕。簡(jiǎn)稱(chēng)Proteus源程序設(shè)計(jì)和生成目標(biāo)代碼文件。在ISIS平臺(tái)上將目標(biāo)代碼文件加載到單片機(jī)系統(tǒng)中,并實(shí)現(xiàn)單片機(jī)系統(tǒng)的實(shí)時(shí)交互、協(xié)同仿真。它在相當(dāng)程度上反映了實(shí)際單片機(jī)系統(tǒng)的運(yùn)行情況。在Proteus繪制好原理圖后,調(diào)入已編譯好的目標(biāo)代碼文件:*.hex,可以在Proteus的原理圖中看到模擬的實(shí)物運(yùn)行狀態(tài)和過(guò)程。5.4單片機(jī)的發(fā)聲原理聲音的頻譜范圍約在幾十到幾千赫茲,假設(shè)能利用程序來(lái)控制單處片機(jī)某個(gè)口線(xiàn)的“高〞電平或“低電平〞,那么在該口上就能產(chǎn)生一定頻率的矩形波,接上喇叭就能發(fā)出一定頻率的聲音,假設(shè)再利用延時(shí)程序控制“高〞“低〞電平的持續(xù)時(shí)間,就能改變輸出頻率,從而改變音調(diào)。播放一段音樂(lè)需要的是兩個(gè)元素,一個(gè)是音調(diào),另一個(gè)是音符。首先要了解對(duì)應(yīng)的音調(diào),音調(diào)主要由聲音的頻率決定,同時(shí)也與聲音強(qiáng)度有關(guān)。對(duì)一定強(qiáng)度的純音,音調(diào)隨頻率的升降而升降;對(duì)一定頻率的純音、低頻純音的音調(diào)隨聲強(qiáng)增加而下降,高頻純音的音調(diào)卻隨強(qiáng)度增加而上升。另外,音符的頻率有所不同。音符的節(jié)拍我們可以用定時(shí)器T0來(lái)控制,送入不同的初值,就可以產(chǎn)生不同的定時(shí)時(shí)間。便如某歌曲的節(jié)奏為每分鐘94拍,即一拍為0.64秒。但是,由于T0的最大定時(shí)時(shí)間只能為131毫秒,因此不可能直接用改變T0的時(shí)間初值來(lái)實(shí)現(xiàn)不同節(jié)拍。我們可以用T0來(lái)產(chǎn)生10毫秒的時(shí)間基準(zhǔn),然后設(shè)置一個(gè)中斷計(jì)數(shù)器,通過(guò)判別中斷計(jì)數(shù)器的值來(lái)控制節(jié)拍時(shí)間的長(zhǎng)短。例如對(duì)1/4拍音符,定時(shí)時(shí)間為0.16秒,相應(yīng)的時(shí)間常數(shù)為16〔即10H〕;對(duì)3拍音符,定時(shí)時(shí)間為1.92秒,相應(yīng)時(shí)間長(zhǎng)數(shù)為192〔即C0H〕。我們將每一音符的時(shí)間常數(shù)和其相應(yīng)的節(jié)拍常數(shù)作為一組,按順序?qū)?lè)曲中的所有常數(shù)排列成一個(gè)表,然后由查表程序依次取出,產(chǎn)生音符并控制節(jié)奏,就可以實(shí)現(xiàn)演奏效果。此外,結(jié)束符和休止符可以分別用代碼00H和FFH來(lái)表示,假設(shè)查表結(jié)果為00H,那么表示曲子終了;假設(shè)查表結(jié)果為FFH,那么產(chǎn)生相應(yīng)的停頓效果。為了產(chǎn)生手彈的節(jié)奏感,在某些音符〔例如兩個(gè)相同音符〕音插入一個(gè)時(shí)間單位的頻率略有不同的音符。5.5系統(tǒng)程序設(shè)計(jì)5.5.1主程序流程圖設(shè)計(jì)本設(shè)計(jì)中采用的獨(dú)立式鍵盤(pán),按鍵的閉合與否直接反響在口線(xiàn)的電平上,即口線(xiàn)的電平是呈現(xiàn)的高電平還是低電平。因此可以通過(guò)口線(xiàn)的電平高、低狀態(tài)檢測(cè),來(lái)確認(rèn)按鍵是否按下。但如果在觸點(diǎn)抖動(dòng)期間檢測(cè)按鍵的通與斷狀態(tài),可能導(dǎo)致判斷出錯(cuò),即按鍵一次按下或釋放被錯(cuò)誤的認(rèn)為是屢次操作,為克服按鍵點(diǎn)機(jī)械抖動(dòng)所致的檢測(cè)錯(cuò)誤,確保CPU對(duì)一次按鍵動(dòng)作只確認(rèn)一次按鍵,必須采取去抖動(dòng)的措施。系統(tǒng)流程圖如下所示:圖5.1系統(tǒng)總流程圖圖5.2放歌流程圖一般把按鍵掃描程序設(shè)計(jì)成子程序,以便其他程序調(diào)用。按鍵掃描子程序流程圖如下:開(kāi)始是否有鍵按下有否鍵按下延時(shí)去抖返回計(jì)算并保存鍵值按鍵是否釋放恢復(fù)鍵值YNNYYN圖5.3按鍵掃描流程圖5.5.21ms延時(shí)程序設(shè)計(jì)延時(shí)程序一般是通過(guò)一層或多層循環(huán)實(shí)現(xiàn),整個(gè)過(guò)程延時(shí)的時(shí)間是程序執(zhí)行的指令總條數(shù)乘以執(zhí)行每條指令所用的時(shí)間。由于該系統(tǒng)的晶振選用的是12M,所以執(zhí)行每條指令所所用時(shí)間為2us。程序執(zhí)行流程如下列圖所示:圖5.4延時(shí)子程序流程圖5.5.3函數(shù)初始化子程序設(shè)計(jì)函數(shù)初始化程序即把在主函數(shù)內(nèi)對(duì)某些參數(shù)和標(biāo)記位賦初值編寫(xiě)成一個(gè)函數(shù),這樣使程序更具有條理化,清晰易懂。由于整個(gè)程序要用到定時(shí)器0和定時(shí)器1,所以初始化程序主要是對(duì)定時(shí)器相關(guān)內(nèi)容作說(shuō)明。參考文獻(xiàn):[1]杜洋.愛(ài)上單片機(jī).北京,人民郵電出版社.2023.11.[2]范風(fēng)強(qiáng),蘭嬸麗.單片機(jī)語(yǔ)言C51應(yīng)用實(shí)戰(zhàn)集錦[M].北京,電子工業(yè)出版社.2005.5.[3]柴鈺.單片機(jī)原理及應(yīng)用[M].西安,西安電子科技大學(xué)出版社.2023.6設(shè)計(jì)心得體會(huì)趙月姣:這次單片機(jī)實(shí)習(xí),總體來(lái)說(shuō)還算順利。我們小組的單片機(jī)課程設(shè)計(jì)題目是:電子琴及音樂(lè)播放器的設(shè)計(jì)。在這次課程設(shè)計(jì)中,我學(xué)到很多很多的東西,不僅穩(wěn)固了以前所學(xué)過(guò)的知識(shí),而且學(xué)到了很多在書(shū)本上所沒(méi)有學(xué)到過(guò)的知識(shí),可以進(jìn)行一些簡(jiǎn)單的編程,還能夠熟練的焊接電路,并學(xué)會(huì)如何找到電路中問(wèn)題,如何利用KEIL編程軟件對(duì)源程序進(jìn)行編程并調(diào)試。首先,在我們小組討論后確定了電路圖后,準(zhǔn)備開(kāi)始用PROTEUS仿真軟件仿真,但是由于仿真軟件之前沒(méi)有用過(guò)不太熟練,在畫(huà)完電路圖之后仿真看不出來(lái)效果,所以就直接開(kāi)始了焊接工作,在硬件焊接時(shí),因?yàn)橹按蠖膶?shí)習(xí)有過(guò)經(jīng)驗(yàn),所以焊接時(shí)還是很容易上手的,幾個(gè)小時(shí)就焊接完成。下來(lái)就是最頭疼的調(diào)程序。由于是在網(wǎng)上下載的程序錯(cuò)誤特別多,我們就一點(diǎn)一點(diǎn)的按照所要到達(dá)的要求修改程序。搜集到的程序有C語(yǔ)言的有匯編語(yǔ)言的。因?yàn)槲覀冎皼](méi)有接觸過(guò)51C語(yǔ)言的編程,所以我搜集了各種教程資料,學(xué)習(xí)了C語(yǔ)言的根本編程,想先做到能把資料上的程序看懂,進(jìn)一步修改調(diào)試。但是在經(jīng)過(guò)了周二一下午到晚上還是沒(méi)有成功調(diào)試出程序,于是換了方向改用匯編語(yǔ)言進(jìn)行編程,畢竟在學(xué)習(xí)單片機(jī)課程時(shí)一直在學(xué)習(xí)匯編。經(jīng)過(guò)研究利用單片機(jī)發(fā)音的原理以及放歌時(shí)歌曲的音調(diào)及音色的表,我弄清楚了程序的主思路。第一次燒進(jìn)去程序后,喇叭只有很小的雜音,放在耳朵邊才能聽(tīng)見(jiàn)。這讓我們很懊惱,不知道是硬件的問(wèn)題還是軟件的問(wèn)題,在經(jīng)過(guò)了屢次調(diào)試之后,又用萬(wàn)用表反復(fù)測(cè)試電路各處電壓之后,發(fā)現(xiàn)是將三極管燒壞了。軟件也有問(wèn)題,在咨詢(xún)了老師之后,我們才恍然大悟,原來(lái)是程序中給點(diǎn)時(shí)間太短,輸出的方波的高電平還沒(méi)有來(lái)得及將喇叭點(diǎn)響就變成了低電平,所以才會(huì)有很小的雜音。之后又將放歌程序嵌入到主程序中,成功實(shí)現(xiàn)了之前預(yù)期的功能。在聽(tīng)到按按鍵之后發(fā)出的清脆的歌聲時(shí),我們都很興奮。在星期四早上我們又給自動(dòng)放歌中加了一首歌,并且嘗試用一個(gè)4*4鍵盤(pán)來(lái)代替之前的八個(gè)按鍵,因?yàn)榘存I多了可以發(fā)上下調(diào)的音。但是因?yàn)槌绦蛴忠泻艽蟮淖儎?dòng),在調(diào)試程序后一直沒(méi)有出來(lái)。在實(shí)習(xí)過(guò)程中,我感覺(jué)每一次問(wèn)題的發(fā)現(xiàn)和解決都讓我學(xué)到了很多東西。雖然最后還是沒(méi)有到達(dá)理想中的效果。但是我堅(jiān)信“失敗是成功之母“。我一定會(huì)成功。如果我的時(shí)間再長(zhǎng)一點(diǎn),我們一定會(huì)成交上一個(gè)更完美的作品。最后真的很感謝王老師,耐心的幫助我們解決問(wèn)題,在我們很迷茫的時(shí)候點(diǎn)播思路。這次實(shí)習(xí)是一個(gè)起點(diǎn),它對(duì)我以后的學(xué)習(xí)和未來(lái)的工作將會(huì)有很大的幫助。呂元杰:個(gè)人覺(jué)得本次的單片機(jī)還是非常有意義的,第一能讓我們把實(shí)際的與理論的知識(shí)做一個(gè)結(jié)合,第二,讓我們對(duì)單片機(jī)這一個(gè)應(yīng)用學(xué)科,學(xué)習(xí)的更“生動(dòng)〞,具體的感覺(jué),了解操作,而不是在書(shū)本上念文字。這次的課程設(shè)計(jì),我們做的是一個(gè)電子琴音樂(lè)播放器,原本的心中理想作品是帶有彈琴,放歌〔多首〕,顯示,多音節(jié)的電子琴音樂(lè)播放器。但由于時(shí)間不是很充足,而且碰到的問(wèn)題略多,進(jìn)度緩慢,最終作品的要求改為,帶按鍵彈琴,帶音樂(lè)播放〔2首〕。前期準(zhǔn)備的時(shí)候搜集了很多東西,并對(duì)可以借鑒的文檔進(jìn)行了分析,然后綜合了多個(gè)文檔確定了我們這次的方案。然后根據(jù)這些資料利用proteus軟件進(jìn)行了繪制,并進(jìn)行前期的仿真。開(kāi)始硬件的焊裝時(shí),我們對(duì)按鍵模塊進(jìn)行了選擇。原先的方案是4*4矩陣按鍵,最后發(fā)現(xiàn)按鍵過(guò)多,只做一個(gè)音階的話(huà)可以只用一排8個(gè)鍵就夠,而且4*4矩陣鍵盤(pán)掃描程序麻煩的很,最終就放棄了4*4矩陣鍵盤(pán)。在做放大電路時(shí)我們選用的是NPN三極管,因?yàn)橛X(jué)得三極管的能力就已經(jīng)能到達(dá)要求,不需要放大器。做揚(yáng)聲器的時(shí)候我們本來(lái)選用了蜂鳴器和喇叭,最后蜂鳴器對(duì)音調(diào)的區(qū)分不明顯達(dá)不到效果,所以放棄,改用功率略大的喇叭。做好硬件,開(kāi)始調(diào)試,首先編輯一個(gè)簡(jiǎn)單的方波信號(hào)來(lái)檢測(cè)揚(yáng)聲器的好壞,經(jīng)過(guò)屢次調(diào)試和改件最終能工作,然后利用匯編語(yǔ)言編寫(xiě)了一個(gè)按鍵的發(fā)音,經(jīng)過(guò)調(diào)試成功后,開(kāi)始加寫(xiě)多個(gè)按鍵的發(fā)音。同時(shí)我的伙伴編寫(xiě)自動(dòng)放音程序,然后調(diào)試。最后我們都把自己的子程序?qū)懞茫{(diào)試成功,然后組合成一個(gè)總程序,到達(dá)作品要求。在組合的時(shí)候也出現(xiàn)過(guò)程序問(wèn)題,因?yàn)槲覀冇械木植渴褂昧送粋€(gè)工作存放器,還有定時(shí)器。在碰到問(wèn)題的時(shí)候有時(shí)候一天都調(diào)不出來(lái),有時(shí)候團(tuán)隊(duì)之間有很多的分歧,但是最后在老師的幫助分析錯(cuò)誤原因,最后都解決了。所以要謝謝老師和伙伴的幫助。這次的課程設(shè)計(jì)對(duì)自己真的有所提高,以后會(huì)多多做些練手的東西,從實(shí)際中學(xué)到書(shū)本上學(xué)不到的知識(shí)。實(shí)踐出真知。8附錄8.1附錄一硬件原理圖8.2附錄二實(shí)物圖8.3附錄三元器件清單表一元器件清單AT89C52芯片1個(gè)按鈕8個(gè)瓷片電容3個(gè)晶振12MHZ1個(gè)電阻10KΩ8個(gè)電阻200Ω1個(gè)NPN80501個(gè)喇叭1個(gè)8.4附錄四軟件主程序ORG0000HLJMPSTARTORG000BHLJMPINT_T0ORG001BHLJMPT1_SEVSTART:MOVP1,#0FFH MOVTMOD,#01H SETBET0 SETBEAST: MOVR3,P1 CJNER3,#0FFH,KEY1 CLRTR0SJMPST KEY1: CJNER3,#0FEH,KEY2MOV30H,#0FBH MOV31H,#0E9H LJMPSET_TIMERKEY2: CJNER3,#0FDH,KEY3 MOV30H,#0FCH MOV31H,#5CH LJMPSET_TIMERKEY3: CJNER3,#0FBH,KEY4 MOV30H,#0FCH MOV31H,#0C1H LJMPSET_TIMERKEY4: CJNER3,#0F7H,KEY5 MOV30H,#0FCH MOV31H,#0EFH LJMPSET_TIMERKEY5: CJNER3,#0EFH,KEY6 MOV30H,#0FDH MOV31H,#045H LJMPSET_TIMERKEY6: CJNER3,#0DFH,KEY7 MOV30H,#0FDH MOV31H,#92H LJMPSET_TIMERKEY7: CJNER3,#0BFH,KEY8 MOV30H,#0FDH MOV31H,#0D6H LJMPSET_TIMERKEY8: CJNER3,#7FH,NOKEY LJ

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論