




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 I 頁(yè) 共 I 頁(yè)目次目次1 引言 .11.1 課題背景和意義 .11.2 課題研究 .12 系統(tǒng)的總體設(shè)計(jì) .32.1 系統(tǒng)實(shí)現(xiàn)的功能 .32.2 主要技術(shù)參數(shù)要求 .32.3 系統(tǒng)模塊設(shè)計(jì) .32.4 模塊方案選擇 .33 系統(tǒng)硬件的設(shè)計(jì) .63.1 系統(tǒng)硬件總體設(shè)計(jì) .63.2 控制模塊設(shè)計(jì) .63.3 音樂(lè)放大模塊設(shè)計(jì) .83.4 鍵盤控制模塊設(shè)計(jì) .103.5 1602LCD 顯示模塊設(shè)計(jì).104 系統(tǒng)軟件的設(shè)計(jì) .134.1 總體方案的軟件設(shè)計(jì) .134.2 音樂(lè)放大模塊的子程序設(shè)計(jì) .144.3 按鍵控制模塊的子程序設(shè)計(jì) .
2、164.4 1602LCD 顯示模塊的子程序設(shè)計(jì).195 系統(tǒng)的仿真與調(diào)試 .235.1 系統(tǒng)的調(diào)試 .235.2 系統(tǒng)的仿真 .24結(jié) 論 .26致 謝 .27參考文獻(xiàn) .28 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 0 頁(yè) 共 28 頁(yè)1 1 引言引言21 世紀(jì),電子技術(shù)獲得了飛速的發(fā)展,在其推動(dòng)下,現(xiàn)代電子產(chǎn)品幾乎滲透了社會(huì)的各個(gè)領(lǐng)域,有力地推動(dòng)了社會(huì)生產(chǎn)力的發(fā)展和社會(huì)信息化程度的提高,同時(shí)也使現(xiàn)代電子產(chǎn)品性能進(jìn)一步提高,產(chǎn)品更新?lián)Q代的節(jié)奏也越來(lái)越快。目前,單片機(jī)正朝著高性能和多品種方向發(fā)展趨勢(shì)將是進(jìn)一步向著 CMOS 化、低功耗、小體積、大容量、高性能、低價(jià)格和外圍電路內(nèi)
3、裝化等幾個(gè)方面發(fā)展。單片機(jī)的應(yīng)用滲透到我們生活各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒(méi)有單片機(jī)的痕跡。導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計(jì)算機(jī)的王若通訊與數(shù)據(jù)傳輸,工業(yè)自動(dòng)化的實(shí)時(shí)控制和數(shù)據(jù)處理,廣泛使用的各種智能 IC 卡,民用豪華汽車的安全保障系統(tǒng),錄影機(jī)、攝像機(jī)、全自動(dòng)洗衣機(jī)的控制,以及程控玩具,電子寵物等等,這些都離不開(kāi)嵌入式,離不開(kāi)單片機(jī)。隨著科學(xué)技術(shù)的進(jìn)步和社會(huì)的發(fā)展,人類所接觸的信息也在不斷增加并且日益復(fù)雜。面對(duì)浩如煙海的信息,人們已經(jīng)能夠利用計(jì)算機(jī)等工具高效準(zhǔn)確地對(duì)之進(jìn)行處理,但要想將處理完的信息及時(shí),清晰地傳遞給別人,還必須通過(guò)尋求更加卓越的顯示技術(shù)來(lái)實(shí)現(xiàn)。單片機(jī)技術(shù)與液晶顯示技
4、術(shù)的結(jié)合,使信息傳輸交流向著智能可視化方向迅速發(fā)展。1.11.1 課題背景和意義課題背景和意義隨著人類社會(huì)的發(fā)展,人們對(duì)視覺(jué)、聽(tīng)覺(jué)方面的享受提出了越來(lái)越高的要求。小小的音樂(lè)盒可以給人們帶來(lái)美好的回憶,提高人們的精神文化享受。音樂(lè)盒的起源,可追溯至中世紀(jì)歐洲文藝復(fù)興時(shí)期。當(dāng)時(shí)為使教會(huì)的鐘塔報(bào)時(shí),而將大小的鐘表裝上機(jī)械裝置,被稱為“可發(fā)出聲音的組鐘” 。音樂(lè)盒有著 300 多年的發(fā)展歷史,是人類文明發(fā)展的歷史見(jiàn)證。傳統(tǒng)的音樂(lè)盒多是機(jī)械音樂(lè)盒,其工作原理是通過(guò)齒輪帶動(dòng)一個(gè)帶有鐵釘?shù)蔫F桶轉(zhuǎn)動(dòng),鐵桶上的鐵釘撞擊鐵片制成的琴鍵,從而發(fā)出聲音。但是,機(jī)械式的音樂(lè)盒體積比較大,比較笨重,且發(fā)音單調(diào)。水、灰塵等
5、外在因素,容易使內(nèi)部金屬發(fā)音條變形,從而造成發(fā)音跑調(diào)。另外,機(jī)械音樂(lè)盒放音時(shí)為了讓音色穩(wěn)定, 必須放平不能動(dòng)搖,而且價(jià)格昂貴,不能實(shí)現(xiàn)大批量生產(chǎn)。1.21.2 課題研究課題研究本課題即使在這種背景下,對(duì)帶液晶顯示的音樂(lè)播放器的設(shè)計(jì)與實(shí)現(xiàn)進(jìn)行了軟硬 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 1 頁(yè) 共 28 頁(yè)件的設(shè)計(jì),實(shí)現(xiàn)了單片機(jī)音樂(lè)播放器的音樂(lè)演奏。與傳統(tǒng)的機(jī)械式音樂(lè)盒相比更小巧,音質(zhì)更優(yōu)美且能演奏和弦音樂(lè)。電子式音樂(lè)盒動(dòng)力來(lái)源是電池,制作工藝簡(jiǎn)單,可進(jìn)行批量生產(chǎn),所以價(jià)格便宜。基于單片機(jī)制作的電子式音樂(lè)盒,控制功能強(qiáng)大,可根據(jù)需要選歌,使用方便。根據(jù)存儲(chǔ)容量的大小,可以盡可能多
6、的存儲(chǔ)歌曲。另外,可以設(shè)計(jì)類似心電圖的音樂(lè)播放節(jié)拍,使音樂(lè)盒的功能更加豐富。利用定時(shí)器可以產(chǎn)生各種固定頻率的方波信號(hào),可以產(chǎn)生包括Do、Re、Me-等音階在內(nèi)的各種頻率聲音。將各個(gè)音階連接在一起,便可組成一支曲子或是演奏一段旋律?;谶@個(gè)思想,我設(shè)計(jì)了一款特殊的音樂(lè)播放器,本播放器可實(shí)現(xiàn)播放、暫停和上一曲下一曲的切換。尤其是 LCD 顯示屏模塊,實(shí)現(xiàn)切換歌曲,歌名顯示。由于時(shí)間及條件限制,本設(shè)計(jì)實(shí)現(xiàn)了一種簡(jiǎn)單的音樂(lè)播放器,其核心器件采用液晶顯示器 1602 和 AT89C51 單片機(jī),本播放器具有電路簡(jiǎn)單,功能強(qiáng)大,易于拓展等特點(diǎn)。在此基礎(chǔ)上,為了體現(xiàn)樂(lè)曲播放過(guò)程中的動(dòng)態(tài)效果,可以增加顯示類似
7、心電圖的音樂(lè)播放節(jié)拍指示旋律的節(jié)奏,還可以增加無(wú)線遙控模塊進(jìn)行控制以達(dá)到更加智能化的效果。 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 2 頁(yè) 共 28 頁(yè)2 2 系統(tǒng)的總體設(shè)計(jì)系統(tǒng)的總體設(shè)計(jì)2.12.1 系統(tǒng)實(shí)現(xiàn)的功能系統(tǒng)實(shí)現(xiàn)的功能本設(shè)計(jì)是主要控制模塊為基礎(chǔ),外部加上 1602 液晶顯示電路、放音電路和按鍵電路。1602 液晶顯示電路是用來(lái)顯示設(shè)計(jì)者姓名、歌曲曲目和曲目名。放音電路,實(shí)現(xiàn)音樂(lè)的放大播放。按鍵電路,通過(guò)按鍵控制音樂(lè)的上一首、下一首、開(kāi)始和暫停的切換。并且可以按照自己的喜好選擇音樂(lè)并將其轉(zhuǎn)化成機(jī)器碼存入單片機(jī)的存儲(chǔ)器中。對(duì)于不同型號(hào)的單片機(jī)只需要相應(yīng)的改變一下地址即可。
8、該軟、硬件系統(tǒng)具有很好的通用性,很高的實(shí)際使用價(jià)值,為廣大的單片機(jī)和音樂(lè)愛(ài)好者提供了很好的借鑒。2.22.2 主要技術(shù)參數(shù)要求主要技術(shù)參數(shù)要求LM386 供電范圍寬:412V 或者 818V;低靜態(tài)電流消耗:4mA;電壓增益范圍:20200V。2.32.3 系統(tǒng)模塊設(shè)計(jì)系統(tǒng)模塊設(shè)計(jì)該系統(tǒng)設(shè)計(jì)可以分為硬件部分和軟件部分。其中,硬件部分可以分為單片機(jī)控制模塊、音樂(lè)放大模塊、鍵盤控制模塊和 LCD 顯示模塊。軟件部分可以分為音樂(lè)放大子程序、鍵盤控制子程序、LCD 顯示子程序。2.42.4 模塊方案選擇模塊方案選擇2.4.1 音頻放大電路的選擇 方案一:甲類功放。甲類功放的功率管在輸入信號(hào)一周內(nèi)都是導(dǎo)
9、通的(放大區(qū),即導(dǎo)通角為 360) 。甲類功放最大的缺點(diǎn)是效率低。圖 2.1 是將揚(yáng)聲器負(fù)載 RL 直接接在音頻放大器發(fā)射極的甲類功放電路,這種連接稱為負(fù)載直接耦合甲類功放。若工作點(diǎn)安排在最大動(dòng)態(tài)范圍點(diǎn)負(fù)載線中點(diǎn)(負(fù)載直接耦合交直流負(fù)載線相同) ,且不計(jì)飽和壓降,則 RL 上信號(hào)電壓振幅等于電源電壓 VCC 的一半如圖 2.2,所以:最大輸出功率 P0=12Vom2RL=18Vcc2RL 電源消耗的功率 Pcc=IcVcc=12Vcc2RL 故負(fù)載直接耦合甲類功放的最大效率只有 25%。此外,有一種使用變壓器實(shí)現(xiàn)阻抗變換的甲類功放,其理論效率能達(dá)到 50%。但是由于低頻變壓器功率消耗大,頻率特
10、性 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 3 頁(yè) 共 28 頁(yè)也差,現(xiàn)在已較少使用。 圖 2.1 負(fù)載直接耦合甲類功放電路圖 2.2 甲類功放工作圖解方案二:乙類功放。晶體管只有半周期工作在放大區(qū)(導(dǎo)通) ,另外半周期截止,即導(dǎo)通角為 180的工作狀態(tài)。電阻作為負(fù)載的乙類功放必須采用雙管,讓其輪流導(dǎo)通半周期,才能在負(fù)載 RL 上合成完整的輸出電壓,因此稱為“推挽”電路。乙類功放在靜態(tài)時(shí)電源不消耗功率,因此效率較甲類功放大大提高,理論上可達(dá) 78.5%。 方案三:甲乙類功放。乙類功放的效率雖然高于甲類功放,但非線性失真卻比甲類功放大。尤其是輸入信號(hào)較小時(shí),乙類功放的非線性失真嚴(yán)重
11、。這是因?yàn)?BJT 的發(fā)射結(jié)存在導(dǎo)通電壓所致。為了解決這一問(wèn)題,可對(duì)推挽功率管設(shè)置一定的放大偏置,使功率管工作時(shí)導(dǎo)通時(shí)間在半周期以上(導(dǎo)通角大于 180) ,這類功放稱為甲乙類功放,其失真小于乙類功放,當(dāng)然效率也低于乙類功放。 方案四:丙類功放。功率管導(dǎo)通時(shí)間小于半周期的功放。丙類功放只有用具有選 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 4 頁(yè) 共 28 頁(yè)頻特性的原件作負(fù)載才能克服非線性失真。它主要用于射頻載波信號(hào)的放大。 綜上,本設(shè)計(jì)的音頻放大將采用乙類功放。特別是,在美國(guó)國(guó)家半導(dǎo)體公司生產(chǎn)的芯片中有一款主要應(yīng)用于低電壓消費(fèi)類產(chǎn)品的音頻功率放器 LM386。LM386 的第三
12、級(jí)放大采用的正是乙類功放推挽電路。LM386 為使外圍元件最少,電壓增益內(nèi)置為 20。若在 1 腳和 8 腳之間增加一只外接電阻和電容,便可將電壓增益調(diào)為任意值,直至 200。輸入端以地位參考,同時(shí)輸出端被自動(dòng)偏置到電源電壓的一半,在 6V 電源電壓下,它的靜態(tài)功耗僅為 24mW,使得 LM386 特別適用于電池供電的場(chǎng)合。2.4.2 鍵盤控制模塊方案一:采用獨(dú)立式鍵盤。鍵盤按鍵少,且鍵盤中各個(gè)按鍵的工作互不干擾。方案二:采用行列式鍵盤。行列式鍵盤適合于按鍵多的情況,可以節(jié)省接口。綜上,本設(shè)計(jì)采用獨(dú)立式鍵盤。2.4.3 顯示電路模塊方案一:采用 LED 顯示。LED 使用壽命長(zhǎng)、成本低、設(shè)計(jì)簡(jiǎn)
13、單方便、畫(huà)面清晰、接口較少。方案二:采用 LCD 顯示。LCD 零輻射、低耗能、散熱小、纖薄輕巧、精確還原圖像、顯示文字銳利。綜上,本設(shè)計(jì)采用 LCD 顯示。 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 5 頁(yè) 共 28 頁(yè)3 3 系統(tǒng)硬件的設(shè)計(jì)系統(tǒng)硬件的設(shè)計(jì)3.13.1 系統(tǒng)硬件總體設(shè)計(jì)系統(tǒng)硬件總體設(shè)計(jì)89C51單片機(jī)6MHz晶振電路電源電路顯示電路鍵控電路復(fù)位電路發(fā)聲電路圖 3.1 電路設(shè)計(jì)原理圖在這系統(tǒng)的硬件設(shè)計(jì)中,首先通過(guò)電源電路接通電源,LCD 初始顯示制作者姓名和第一首歌曲曲目和曲目名。通過(guò)鍵控電路,實(shí)現(xiàn)曲目上一首下一首的選擇,實(shí)現(xiàn)歌曲播放的開(kāi)始和暫停。通過(guò)音頻放大電路,
14、實(shí)現(xiàn)了音頻的 20 倍放大,音樂(lè)通過(guò)喇叭播放出音樂(lè)。硬件結(jié)構(gòu)框圖如上圖 3.1 所示。整體硬件接線圖如下圖 3.2 所示。 圖 3.2 總體電路圖3.23.2 控制模塊設(shè)計(jì)控制模塊設(shè)計(jì) 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 6 頁(yè) 共 28 頁(yè)本設(shè)計(jì)控制模塊由單片機(jī)芯片 89C51,配以必要的外部器件構(gòu)成單片機(jī)。單片機(jī)具有較強(qiáng)的外部擴(kuò)展、通信能力,能方便地?cái)U(kuò)展至應(yīng)用系統(tǒng)所要求的規(guī)模。 當(dāng)使用帶 ROM 或 EPROM 的 MCS51 系列單片機(jī)時(shí),只要一個(gè)芯片即可構(gòu)成一個(gè)單片機(jī)的最小系統(tǒng)。選用 80C51 或 8051 或 AT89C51 單片機(jī)作為主機(jī),它們都具有 4K 片內(nèi)
15、 ROM,128 字節(jié)片內(nèi) RAM,片外 ROM 尋址范圍達(dá) 64K,片外 RAM 尋址范圍達(dá) 64K,2 個(gè)16 位計(jì)數(shù)器,5 個(gè)中斷源,4 個(gè)并行口,1 個(gè)串行口。簡(jiǎn)易自動(dòng)樂(lè)曲播放器采用單片機(jī)最小系統(tǒng)足以滿足系統(tǒng)設(shè)計(jì)要求,同時(shí)要設(shè)計(jì)單片機(jī)最小系統(tǒng)的晶振和復(fù)位電路。注意: EA/VP(31 腳)接+5V。3.2.1 電源電路向單片機(jī)供電,單片機(jī)電源:AT89C51 單片機(jī)的工作電壓范圍:4.0V5.5V, 所以通常給單片機(jī)外接 5V 直流電源。連接方式為 VCC(40 腳)接電源+5V 端,VSS(20 腳)接電源地端。3.2.2 時(shí)鐘電路振蕩器和時(shí)鐘電路用于產(chǎn)生單片機(jī)正常工作時(shí)所需要的時(shí)鐘
16、信號(hào)。AT89C51 單片機(jī)采用 CMOS 工藝,內(nèi)部包含一個(gè)振蕩器,可以用于 CPU 的時(shí)鐘源;也允許采用外部振蕩器,由外部振蕩器產(chǎn)生的時(shí)鐘信號(hào)來(lái)供內(nèi)部 CPU 運(yùn)行使用。這里我們所用的是內(nèi)部時(shí)鐘模式。單片機(jī)工作的時(shí)間基準(zhǔn),決定單片機(jī)工作速度。時(shí)鐘電路就是振蕩電路,向單片機(jī)提供一個(gè)正弦波信號(hào)作為基準(zhǔn),決定單片機(jī)的執(zhí)行速度。AT89C51 單片機(jī)與其他 51系列單片機(jī)一樣,其內(nèi)部包含一個(gè)高增益的單機(jī)反相放大器,引腳 XTAL1 和 XTAL2 分別為片內(nèi)反相放大器的輸入端口和輸出端口,其時(shí)鐘工作頻率范圍:033MHz。3.2.3 復(fù)位電路確定單片機(jī)工作的起始狀態(tài),完成單片機(jī)的啟動(dòng)過(guò)程。單片機(jī)的
17、復(fù)位是非常重要的,通常在單片機(jī)工作出現(xiàn)混亂或“死機(jī)”時(shí),使用手動(dòng)復(fù)位可實(shí)現(xiàn)單片機(jī)“重啟”。單片機(jī)接通電源時(shí)產(chǎn)生復(fù)位信號(hào),完成單片機(jī)啟動(dòng),確定單片機(jī)起始工作狀態(tài)。手動(dòng)按鍵產(chǎn)生復(fù)位信號(hào),完成單片機(jī)啟動(dòng),確定單片機(jī)的初始狀態(tài)。單片機(jī)復(fù)位的原理是,在時(shí)鐘電路開(kāi)始工作后,在單片機(jī)的 RST 引腳施加 24 個(gè)時(shí)鐘振蕩脈沖(即兩個(gè)機(jī)器周期)以上的高電平,單片機(jī)便可以實(shí)現(xiàn)復(fù)位。在復(fù)位期間, 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 7 頁(yè) 共 28 頁(yè)單片機(jī)的 ALE 引腳和/PSEN 引腳均輸出高電平。當(dāng) RST 引腳從高電平跳變?yōu)榈碗娖胶?,單片機(jī)開(kāi)始執(zhí)行程序。3.33.3 音樂(lè)放大模塊設(shè)計(jì)音
18、樂(lè)放大模塊設(shè)計(jì)LM386 是專為低損耗電源所設(shè)計(jì)的功率放大器。1 腳和 8 腳是增益調(diào)整引腳,其內(nèi)部為一個(gè)約為 1.35K 的電阻,1、8 腳開(kāi)路的時(shí)候,增益最小約為 20 倍(26db) ,當(dāng)1、8 腳交流短路,增益最大,達(dá)到 200 倍(46db) ,在 1、8 之間串聯(lián)電阻,可調(diào)整增益在 20 倍到 200 倍之間變化。LM386 可使用電池為供應(yīng)電源,輸入電壓范圍可由 4V12V,無(wú)動(dòng)作時(shí)僅消耗 4mA 電流,且失真低。LM386 的接腳圖及內(nèi)部方塊如圖3.3、圖 3.4 所示,表 3.1 為其電子特性。圖 3.3 引腳圖 圖 3.4 內(nèi)部方塊圖表 3.1 LM386 電子特性項(xiàng)目測(cè)試
19、環(huán)境規(guī)格工作電壓4V5V輸入電壓-0.4V+0.4V輸入阻抗50k靜電流Vs=6V,Vin=0V4mA8mAOutput PowerVs=6V,RL=8,THD=10Min=250MwTyp=325mWVoltage Gain 腳 1 腳 8 開(kāi)路腳 1 腳 8 以 10uF 連接26db46db頻寬腳 1 腳 8 開(kāi)路腳 1 腳 8 以 10uF 連接300kHz60kHZ 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 8 頁(yè) 共 28 頁(yè)圖 3.3 的應(yīng)用電路為增益 20 的情形,于 1 腳及 8 腳間加一個(gè) 10F 的電容即可使增益變成 200,如圖 3.4 所示。圖中 10k
20、的可變電阻是用來(lái)調(diào)整揚(yáng)聲器音量大小,若直接將 Vin 輸入即為最音量最大的狀態(tài)。圖 3.3 放大器增益=20 圖 3.4 放大增益=200圖 3.5 為將 LM386 與電容式麥克風(fēng)結(jié)合的應(yīng)用范例,可在輸出接上揚(yáng)聲器或耳機(jī)并且調(diào)整可變電阻,就會(huì)產(chǎn)生類似于助聽(tīng)器的效果。圖 3.5 應(yīng)用電路本設(shè)計(jì)中音頻放大芯片 LM386 的 1 腳和 8 腳是開(kāi)路的,所以此電路中的音頻放大倍數(shù)為 20 倍。使用的揚(yáng)聲器其型號(hào)為 0.5W、8,其負(fù)極接地,正極通過(guò) 10uf 電容與LM386 的 5 腳相連。如圖 3.6 音頻放大電路由音頻芯片 LM386 連接 p2.3 接口實(shí)現(xiàn)音樂(lè)的輸入,由控制電路發(fā)出操作指
21、令后,單片機(jī)調(diào)用相應(yīng)程序,并將音樂(lè)信號(hào)由 LM386的 5 口輸出,通過(guò)驅(qū)動(dòng)揚(yáng)聲器發(fā)出美妙的音樂(lè)。 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 9 頁(yè) 共 28 頁(yè)圖 3.6 LM386 音頻放大模塊3.43.4 鍵盤控制模塊設(shè)計(jì)鍵盤控制模塊設(shè)計(jì)鍵盤控制電路如圖 3.7 所示,鍵一與 P2.4 相連、鍵二與 P2.5 相連、鍵三與 P2.6相連、鍵四與 P2.7 相連。在沒(méi)有按鍵按下時(shí),端口電位是高電平,當(dāng)按鍵按下時(shí)接口接低電平,從而實(shí)現(xiàn)對(duì)音樂(lè)播放器的控制。鍵一連通實(shí)現(xiàn)上一曲更換,鍵二連通實(shí)現(xiàn)下一曲更換,鍵三連通實(shí)現(xiàn)開(kāi)始,鍵四連通實(shí)現(xiàn)暫停。圖 3.7 按鍵電路3.53.5 1602L
22、CD1602LCD 顯示模塊設(shè)計(jì)顯示模塊設(shè)計(jì)本設(shè)計(jì)中所使用的液晶顯示器型號(hào)為 1602,意思是每行顯示 16 個(gè)字符,一共可以顯示兩行。此液晶只能顯 ASCII 字符,如數(shù)字、大小寫字母、各種符號(hào)等。 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 10 頁(yè) 共 28 頁(yè)3.5.1 1602 顯示電路圖 3.8 1602 顯示電路與基于 HD44780 液晶芯片的,控制原理是完全相同的,因此 HD44780 寫的控制程序可以很方便地應(yīng)用于市面上大部分的字符型液晶。字符型 LCD 通常有 14 條引腳線或 16 條引腳線的 LCD,多出來(lái)的 2 條線是背光電源線 VCC(15 腳)和地線
23、GND(16 腳),其控制原理與 14 腳的 LCD 完全一樣電路如上圖 3.8 所示,定義如下所示: 液晶 1,2 端為電源;15、16 為背光電源;為防止直接加 5V 電壓燒壞背光燈,在15 腳串接一個(gè) 10 歐姆電阻用于限流。液晶 3 端為液晶對(duì)比度調(diào)節(jié)端,通過(guò)一個(gè) 10K 歐姆電位器接地來(lái)調(diào)節(jié)液晶顯示對(duì)比度。第一次使用時(shí),在液晶上電狀態(tài)下,調(diào)節(jié)至液晶上面一行顯示出黑色小格為止。液晶 4 端為向液晶控制器寫數(shù)據(jù)/寫命令選擇端,接單片機(jī)的 P3.0 口。液晶 5 端為讀/寫選擇端,因?yàn)槲覀儾粡囊壕ёx取任何數(shù)據(jù),只向其寫入命令和顯示數(shù)據(jù),因此此端始終選擇寫狀態(tài),我們可以直接將它接地。但這里我
24、將它接 P3.1 口,沒(méi)有任何影響。液晶 6 端為使能信號(hào),是操作時(shí)必需的信號(hào),接單片機(jī)的 P3.2 口液晶 714 端為八位數(shù)據(jù)口,接單片機(jī)的 P1 口。3.5.2 1602 顯示字符的實(shí)現(xiàn)我們知道文本文件中每一個(gè)字符都是用一個(gè)字節(jié)的代碼記錄的。一個(gè)漢字是用兩 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 11 頁(yè) 共 28 頁(yè)個(gè)字節(jié)的代碼記錄。在 PC 上我們只要打開(kāi)文本文件就能在屏幕上看到對(duì)應(yīng)的字符是因?yàn)樵诓僮飨到y(tǒng)里和 BIOS 里都固化有字符字模。字模就代表了是在點(diǎn)陣屏幕上點(diǎn)亮和熄滅的信息數(shù)據(jù)。例如“A” 字的字模如下圖 3.9 所示。 01110 10001 10001 10
25、001 11111 10001 10001 圖 3.9 A 的字模上圖左邊的數(shù)據(jù)就是字模數(shù)據(jù),右邊就是將左邊數(shù)據(jù)用“”代表 0,用“”代表 1。在文本文件中“A”字的代碼是 41H,PC 收到 41H 的代碼后就去字模文件中將代表 A 字的這一組數(shù)據(jù)送到顯卡去點(diǎn)亮屏幕上相應(yīng)的點(diǎn),我們就看到“A”這個(gè)字了。在 LCD 模塊上固化了字模存儲(chǔ)器,這就是 CGROM 和 CGRAM。HD44780 內(nèi)置了 192 個(gè)常用字符的字模,存于字符產(chǎn)生器 CGROM 中,另外還有 8 個(gè)允許用戶自定義的字符產(chǎn)生 RAM,稱為 CGRAM。因?yàn)?1602 識(shí)別的是 ASCII 碼,我們也可以用 ASCII 碼直
26、接賦值,在單片機(jī)編程中還可以用字符型常量或變量賦值,如A 。 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 12 頁(yè) 共 28 頁(yè)4 4 系統(tǒng)軟件的設(shè)計(jì)系統(tǒng)軟件的設(shè)計(jì)4.14.1 總體方案的軟件設(shè)計(jì)總體方案的軟件設(shè)計(jì)是否液晶顯示設(shè)計(jì)者名字,播放的曲目和歌曲名開(kāi)始初始化液晶菜單顯示掃描檢測(cè)是否有按鍵按下P2.4 口跳變?yōu)榈碗娖?,K1 鍵按下,地址減進(jìn)入中斷子程序,判斷哪個(gè)按鍵按下P2.5 口跳變?yōu)榈碗娖?,K2 鍵按下,地址加P2.6 口跳變?yōu)榈碗娖?,K3 鍵按下,調(diào)用相應(yīng)播放程序P2.7 口跳變?yōu)榈碗娖剑琄4 鍵按下,暫停 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 13 頁(yè)
27、共 28 頁(yè)圖 4.1 總體流程圖根據(jù)上圖 4.1 所示,主程序首先對(duì)系統(tǒng)初始化,實(shí)現(xiàn)對(duì)系統(tǒng)進(jìn)行初始化后,液晶菜單顯示初始狀態(tài),進(jìn)入按鍵掃描檢測(cè)程序,當(dāng)有按鍵按下時(shí),對(duì)應(yīng)的端口由高電平變?yōu)榈碗娖?,單片機(jī)檢測(cè)到端口低電平后,進(jìn)入曲目識(shí)別子程序,進(jìn)行歌曲曲目判斷。確定歌曲曲目后,液晶顯示屏再進(jìn)行顯示。然后,對(duì)子程序?qū)κ欠癫シ胚M(jìn)行判斷,得到播放中斷的指令后再進(jìn)行播放。執(zhí)行播放后,調(diào)用查表子程序進(jìn)行播放音樂(lè)。在播放音樂(lè)的過(guò)程中,查表子程序循環(huán)判斷音樂(lè)是否結(jié)束。當(dāng)音樂(lè)結(jié)束時(shí),程序跳轉(zhuǎn)回曲目識(shí)別子程序。4.24.2 音樂(lè)放大模塊的子程序音樂(lè)放大模塊的子程序設(shè)計(jì)設(shè)計(jì)4.2.1 單片機(jī)音階代碼實(shí)現(xiàn)我們知道,聲
28、音的頻譜范圍約在十到幾千赫茲,若能利用程序來(lái)控制單片機(jī)某個(gè)口線的“高”電平或“低”電平,則在該口線上就能產(chǎn)生一定頻率的波形,接上揚(yáng)聲器就能發(fā)出一定頻率的聲音,若在利用延時(shí)程序控制“高” “低”電平的持續(xù)時(shí)間,就能改變輸出頻率,從而改變音調(diào)。音符的節(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í)間的
29、長(zhǎng)短。一個(gè)樂(lè)曲是由多個(gè)音符組成的。每個(gè)音符對(duì)應(yīng)著一個(gè)確定的音符,也就是不同頻率的聲音;另外每個(gè)音符會(huì)根據(jù)樂(lè)曲的要求設(shè)定一個(gè)確定的節(jié)拍,可以控制單片機(jī)不同頻率不同節(jié)拍的脈沖信號(hào)。對(duì)于單片機(jī)來(lái)說(shuō),要產(chǎn)生音頻脈沖,只要算出某一音頻脈沖,然后將此周期除以2,即為半周期的時(shí)間,利用定時(shí)器記時(shí)這個(gè)半周期的時(shí)間。每當(dāng)計(jì)時(shí)到后就將輸出脈沖的 I/O 反相,然后重復(fù)計(jì)時(shí)此半周期的時(shí)間再對(duì) I/O 反相。就可以在此 I/O 腳上得到此頻率的脈沖。通過(guò)控制定時(shí)器時(shí)間來(lái)產(chǎn)生不同頻率的方波,驅(qū)動(dòng)揚(yáng)聲器發(fā)出不同的聲音,再利用延遲來(lái)控制發(fā)音時(shí)間的長(zhǎng)短,即可控制音調(diào)中的節(jié)拍。把樂(lè)譜中的音符和相應(yīng)的節(jié)拍變換成定時(shí)常數(shù)和延遲常數(shù)
30、,作為數(shù)據(jù)表格存放在存儲(chǔ)器中。用程序查表得到定時(shí)常數(shù)和延遲常數(shù),分別用以控制定時(shí)器產(chǎn)生方波的頻率和發(fā)出該頻率方波的持續(xù)時(shí)間。當(dāng)延遲時(shí)間到時(shí),再查下一個(gè)音符定時(shí)常數(shù)和延遲常數(shù)。依次下去,就可以自動(dòng)演奏樂(lè)曲。 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 14 頁(yè) 共 28 頁(yè)do re mi fa so la si 分別編碼為 17,重音 do 編為 8,重音 re 編為 9,停頓編為 0。播放長(zhǎng)度以十六分音符為單位(在本程序中為 100ms) ,一拍即四分音符等于 4個(gè)十六分音符,編為 4,其它的播放時(shí)間以此類推。音調(diào)作為編碼的高 4 位,而播放時(shí)間作為低 4 位,如此音調(diào)和節(jié)拍就構(gòu)成
31、了一個(gè)編碼。以 0 xff 作為曲譜的結(jié)束標(biāo)志。舉例 1:音調(diào) do,發(fā)音長(zhǎng)度為兩拍,即二分音符,將其編碼為 0 x18。舉例 2:音調(diào) re,發(fā)音長(zhǎng)度為半拍,即八分音符,將其編碼為 0 x22歌曲播放的設(shè)計(jì)。先將歌曲的簡(jiǎn)譜進(jìn)行編碼,儲(chǔ)存在一個(gè)數(shù)據(jù)類型為 unsigned char 的數(shù)組中。程序從數(shù)組中取出一個(gè)數(shù),然后分離出高 4 位得到音調(diào),接著找出相應(yīng)的值賦給定時(shí)器 0,使之定時(shí)操作揚(yáng)聲器,得出相應(yīng)的音調(diào);接著分離出該數(shù)的低 4位,得到延時(shí)時(shí)間,接著調(diào)用軟件延時(shí)。4.2.3 音樂(lè)播放的實(shí)現(xiàn)判斷播放第幾首開(kāi)始調(diào)用音樂(lè)子程序播放音樂(lè)結(jié)束圖 4.2 音樂(lè)播放流程圖音樂(lè)播放流程圖如上圖 4.2
32、所示,本音樂(lè)播放器一共存儲(chǔ)四首音樂(lè),分別為生日快樂(lè)、朋友、夢(mèng)的翅膀受了傷、和荷塘月色。當(dāng)接通電源后,開(kāi)始按鈕按下,判斷音 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 15 頁(yè) 共 28 頁(yè)樂(lè)曲目,調(diào)用音樂(lè)子程序,經(jīng)過(guò) LM386 放大后,通過(guò)揚(yáng)聲器播放音樂(lè)。下面為播放第一首音樂(lè)的程序:void playmusic1()uint i=0,j,k; while (song1_longi !=0 | song1_tonei !=0) /播放各個(gè)音符,song_long 為拍子長(zhǎng)度f(wàn)or(j=0;jsong1_longi*20;j+) if(S1=0) break;P1_0=P1_0;/so
33、ng_tone 延時(shí)表決定每個(gè)音符的頻率;for(k=0;ksong1_tonei/3;k+); delayms(100);/下一個(gè)音符的索引i+;4.34.3 按鍵控制模塊的子程序設(shè)計(jì)按鍵控制模塊的子程序設(shè)計(jì)本方案采用獨(dú)立式按鍵接口設(shè)計(jì),各按鍵相互獨(dú)立,每個(gè)按鍵單獨(dú)占用一根 I/O 口線,每根 I/O 口線的按鍵工作狀態(tài)不會(huì)影響其他 I/O 口線上的工作狀態(tài)。因此,通過(guò)檢測(cè)輸入線的電平狀態(tài)可以很容易判斷哪個(gè)按鍵被按下。鍵盤工作方式采用定時(shí)掃描方式,采用定時(shí)器 T0 定時(shí),通過(guò)讀取輸出數(shù)據(jù),識(shí)別按鍵工作狀態(tài)。鍵盤按鍵所用開(kāi)關(guān)為機(jī)械彈性開(kāi)關(guān),利用了機(jī)械觸點(diǎn)的合斷作用。由于機(jī)械觸點(diǎn)的的彈性作用,一
34、個(gè)按鍵開(kāi)關(guān)在閉合和斷開(kāi)的瞬間均有一連串的抖動(dòng)。抖動(dòng)時(shí)間的長(zhǎng) 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 16 頁(yè) 共 28 頁(yè)短由按鍵的機(jī)械特性決定,一般為 10100ms。電平信號(hào)的波動(dòng),有可能令 CPU 誤解為多次按鍵操作,從而引起誤處理。為了確保 CPU 對(duì)一次按鍵動(dòng)作只確認(rèn)一次按鍵,必須消除抖動(dòng)的影響。 按鍵的消抖通常有軟件和硬件兩種消除方法。如果按鍵較多,硬件消抖將無(wú)法勝任,常采用軟件消抖。本設(shè)計(jì)雖然按鍵少但還是采用常規(guī)的軟件延時(shí)的方法:在第一次檢測(cè)到有鍵按下時(shí),執(zhí)行一段延時(shí)子程序后,再確認(rèn)電平是否仍保持閉電平,如果保持閉合狀態(tài)電平,則確認(rèn)真正有鍵按下,進(jìn)行相應(yīng)處理工作,消
35、除了抖動(dòng)的影響。掃描鍵盤去除抖動(dòng)開(kāi)始是否有按鍵按下原按鍵按下執(zhí)行相應(yīng)按鍵操作是否是否圖 4.3 按鍵流程圖上圖 4.3 為按鍵模塊的程序流程圖。電路通電后,開(kāi)始單片機(jī)掃描是否有中斷信號(hào)出現(xiàn),若沒(méi)有則循環(huán)進(jìn)行掃描,當(dāng)發(fā)現(xiàn)中斷信號(hào)后,延時(shí) 10mS,去除抖動(dòng),再進(jìn)行判斷是否是之前接收到的按鍵按下信息,若不是則返回掃描中斷信號(hào)部分,若是則執(zhí)行此按鍵相應(yīng)的操作。 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 17 頁(yè) 共 28 頁(yè)4.3.1 播放暫停子程序播放暫停在程序運(yùn)行類似,以播放鍵 K3 為例,利用內(nèi)部中斷 T0 口。將 T0 口設(shè)為計(jì)數(shù)中斷并工作在方式 1 下。當(dāng)按鍵 K3 產(chǎn)生中斷信
36、號(hào)時(shí),播放器由暫停狀態(tài)進(jìn)入播放狀態(tài)。如下圖 4.4 所示。 判斷開(kāi)始鍵K3 是否按下開(kāi)始播放開(kāi)始是否圖 4.4 播放子程序流程圖4.3.2 曲目選擇子程序 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 18 頁(yè) 共 28 頁(yè) 開(kāi)始標(biāo)識(shí)符初值查詢曲目庫(kù)判斷標(biāo)識(shí)符是否為初值播放音樂(lè)上一曲改變曲目值標(biāo)識(shí)符加一是否標(biāo)識(shí)符賦初值圖 4.5 曲目選擇子程序流程圖曲目選擇子程序分為上一曲子程序和下一曲子程序,流程圖如上圖 4.5 所示。上一曲和下一曲功能實(shí)現(xiàn)方式類似,下面以實(shí)現(xiàn)上一曲功能為例:首先設(shè)置標(biāo)識(shí)符初始值為 0。當(dāng)按鍵產(chǎn)生中斷信號(hào),上一曲中斷子程序改變標(biāo)識(shí)符值并改變曲目的值。播放子程序判斷出
37、標(biāo)識(shí)符改變后,先將標(biāo)識(shí)符賦值為初值后,然后跳轉(zhuǎn)到曲目識(shí)別子程序。4.44.4 1602LCD1602LCD 顯示模塊的子程序設(shè)計(jì)顯示模塊的子程序設(shè)計(jì)1602 液晶顯示器的子程序?qū)崿F(xiàn)流程圖如下圖 4.6 所示。液晶 4 端為向液晶控制器寫數(shù)據(jù)/寫命令選擇端,接單片機(jī)的 P3.0 口。液晶 714 端為八位數(shù)據(jù)口,接單片機(jī)的 P1 口。接通電源后,初始化液晶顯示器,顯示姓名和第一首歌曲名字,按上一首與下一首按鍵是顯示上一首下一首的歌曲曲目和曲名。 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 19 頁(yè) 共 28 頁(yè) 開(kāi)始位,變量,數(shù)組,子程序聲明初始化液晶顯示第 1,2 行結(jié)束圖 4.6
38、液晶顯示流程圖那么如何對(duì) DDRAM 的內(nèi)容和地址進(jìn)行具體操作呢,下面先說(shuō)說(shuō) HD44780 的指令集及其設(shè)置說(shuō)明,請(qǐng)瀏覽該指令集,并找出對(duì) DDRAM 的內(nèi)容和地址進(jìn)行操作的指令。 共11 條指令: a)清屏指令 功能:1)清除液晶顯示器,即將 DDRAM 的內(nèi)容全部填入空白的 ASCII 碼 20H; 2)光標(biāo)歸位,即將光標(biāo)撤回液晶顯示屏的左上方; 3)將地址計(jì)數(shù)器(AC)的值設(shè)為 0。 b)光標(biāo)歸位指令 功能: 1)把光標(biāo)撤回到顯示器的左上方; 2)把地址計(jì)數(shù)器(AC)的值設(shè)置為 0; 3)保持 DDRAM 的內(nèi)容不變。c)進(jìn)入模式設(shè)置指令功能:設(shè)定每次定入 1 位數(shù)據(jù)后光標(biāo)的移位方向,
39、并且設(shè)定每次寫入的一個(gè)字符是否移動(dòng)。參數(shù)設(shè)定的 情況如下表 4.1 所示。 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 20 頁(yè) 共 28 頁(yè)表 4.1 進(jìn)入模式設(shè)置指令位名設(shè)置I/D0=寫入新數(shù)據(jù)后光標(biāo)左移1=寫入新數(shù)據(jù)后光標(biāo)右移S0=寫入新數(shù)據(jù)后顯示屏不移動(dòng)1=寫入新數(shù)據(jù)后顯示屏整體右移 1 個(gè)字符d)顯示開(kāi)關(guān)控制指令 功能:控制顯示器開(kāi)/關(guān)、光標(biāo)顯示/關(guān)閉以及光標(biāo)是否閃爍。參數(shù)設(shè)定的情況如下表 4.2 所示。表 4.2 顯示開(kāi)關(guān)控制指令位名設(shè)置D0=顯示功能關(guān)1=顯示功能開(kāi)C0=無(wú)光標(biāo)1=有光標(biāo)B0=光標(biāo)閃爍1=光標(biāo)不閃爍e)設(shè)定顯示屏或光標(biāo)移動(dòng)方向指令 功能:使光標(biāo)移位或使整
40、個(gè)顯示屏幕移位。參數(shù)設(shè)定的情況如下表 4.3 所示。表 4.3 顯示屏或光標(biāo)移動(dòng)方向指令S/CR/L設(shè)定情況00光標(biāo)左移 1 格,且 AC 值減 101光標(biāo)右移 1 格,且 AC 值加 110顯示器上字符全部左移一格,但光標(biāo)不動(dòng)11顯示器上字符全部右移一格,但光標(biāo)不動(dòng)f)功能設(shè)定指令功能:設(shè)定數(shù)據(jù)總線位數(shù)、顯示的行數(shù)及字型。參數(shù)設(shè)定的情況如下表 4.4 所示。表 4.4 功能設(shè)定指令位名設(shè)置DL0=數(shù)據(jù)總線為 4 位1=數(shù)據(jù)總線為 8 位N0=顯示 1 行1=顯示 2 行F0=57 點(diǎn)陣/每字符1=510 點(diǎn)陣/每字符g)設(shè)定 CGRAM 地址指令功能:設(shè)定下一個(gè)要存入數(shù)據(jù)的 CGRAM 的地
41、址。DB5DB4DB3 為字符號(hào),也就是你 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 21 頁(yè) 共 28 頁(yè)將來(lái)要顯示該字符時(shí)要用到的字符地址。(000111)(能定義八個(gè)字符)DB2DB1DB0 為行號(hào)。 (000111) (八行) h)設(shè)定 DDRAM 地址指令功能:設(shè)定下一個(gè)要存入數(shù)據(jù)的 DDRAM 的地址。 i)讀取忙信號(hào)或 AC 地址指令功能:1)讀取忙碌信號(hào) BF 的內(nèi)容,BF=1 表示液晶顯示器忙,暫時(shí)無(wú)法接收單片機(jī)送來(lái)的數(shù)據(jù)或指令; 當(dāng) BF=0 時(shí),液晶顯示器可以接收單片機(jī)送來(lái)的數(shù)據(jù)或指令; 2)讀取地址計(jì)數(shù)器(AC)的內(nèi)容。 j)數(shù)據(jù)寫入 DDRAM 或 CGR
42、AM 指令一覽 功能:1)將字符碼寫入 DDRAM,以使液晶顯示屏顯示出相對(duì)應(yīng)的字符; 2)將使用者自己設(shè)計(jì)的圖形存入 CGRAM。 DB7DB6DB5 可為任何數(shù)據(jù),一般取“000” 。DB4DB3DB2DB1DB0 對(duì)應(yīng)于每行 5 點(diǎn)的字模數(shù)據(jù)。 k)從 CGRAM 或 DDRAM 讀出數(shù)據(jù)的指令一覽功能:讀取 DDRAM 或 CGRAM 中的內(nèi)容?;静僮鲿r(shí)序如下表 4.5 所示。表 4.5 基本操作時(shí)序讀狀態(tài)輸入:RS=L,RW=H,E=H輸出:DB0DB7=狀態(tài)字寫指令輸入:RS=L,RW=L,E=下降沿脈沖,DB0DB7=指令碼輸出:無(wú)讀數(shù)據(jù)輸入:RS=H,RW=H,E=H輸出:D
43、B0DB7=數(shù)據(jù)寫數(shù)據(jù)輸入:RS=H,RW=L,E=下降沿脈沖,DB0DB7=數(shù)據(jù)輸出:無(wú) 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 22 頁(yè) 共 28 頁(yè)下面為液晶顯示第一首歌曲曲目,不論是第幾首歌曲,液晶顯示第一行都顯示的作者名不變,當(dāng) number=1 時(shí),顯示第一首歌曲名happy bitthday。if(key_number=1)DisplayOneChar(3,1,H);DisplayOneChar(4,1,a);DisplayOneChar(5,1,p);DisplayOneChar(6,1,p);DisplayOneChar(7,1,y);DisplayOneCha
44、r(8,1,B);DisplayOneChar(9,1,i);DisplayOneChar(10,1,r);DisplayOneChar(11,1,t);DisplayOneChar(12,1,h);DisplayOneChar(13,1,d); DisplayOneChar(14,1,a);DisplayOneChar(15,1,y);5 5 系統(tǒng)的仿真與調(diào)試系統(tǒng)的仿真與調(diào)試5.15.1 系統(tǒng)的調(diào)試系統(tǒng)的調(diào)試5.1.1 測(cè)試揚(yáng)聲器模塊 a)硬件測(cè)試 用一根導(dǎo)線,一端接地,另一端接在 P2.3 口,如果有呲呲的聲音表示揚(yáng)聲器正常。 b)軟件測(cè)試調(diào)入程序 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論
45、論文文) 第 23 頁(yè) 共 28 頁(yè)使用 P2.3 口做輸出口使揚(yáng)聲器工作START: MOV SP,#00H MOV TMOD,#11H MOV IE,#8AH MOV IP,#08H T1 中斷優(yōu)先 T0 中斷 MOV TH1,#3CH MOV TL1,#0B0H 以上是系統(tǒng)初始化,T=50ms HERE:SJMP HEREINT-T0: CLR TR0 MOV TLO,20H MOV TH0,21H CPL P2.3 SETB TR0 RETIc) 測(cè)試結(jié)果揚(yáng)聲器有聲音發(fā)出,揚(yáng)聲器正常工作。5.1.2 1602 的調(diào)試a)硬件測(cè)試液晶 1 端接地,2 端接電源電源;16 接地,15 接背
46、光電源;為防止直接加 5V 電壓燒壞背光燈,在 15 腳串接一個(gè) 10 歐姆電阻用于限流。5 接電源 ,16 接地,背光燈亮,顯示的東西更好看,15 接電源端 ,需上拉一個(gè) 10 歐的電阻,否則可能太亮。液晶 3 端為液晶對(duì)比度調(diào)節(jié)端,通過(guò)一個(gè) 10K 歐姆電位器接地來(lái)調(diào)節(jié)液晶顯示對(duì)比度。首次使用時(shí),在液晶上電狀態(tài)下,調(diào)節(jié)至液晶上面一行顯示出黑色小格為止。b)軟件調(diào)試程序燒制進(jìn)去后運(yùn)行,LCD 只能顯示 LCD1602 第一行全黑的效果如圖 5.1 所示。 本本科科畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)說(shuō)說(shuō)明明書(shū)書(shū)(論論文文) 第 24 頁(yè) 共 28 頁(yè)圖 5.1 運(yùn)行效果圖我查資料發(fā)現(xiàn),這個(gè)問(wèn)題的原因是接線錯(cuò)誤或 1602 初始化程序未運(yùn)行。檢查電路和程序。c)實(shí)物的完成實(shí)物呈現(xiàn)如下圖 5.2 所示,實(shí)現(xiàn)了預(yù)計(jì)效果,完成計(jì)劃的任務(wù)。圖 5.2 實(shí)物效果圖5.25.2 系統(tǒng)的仿真系統(tǒng)的仿真所編寫的程序,通過(guò) Keil 編譯軟件已經(jīng)編譯通過(guò),同時(shí)運(yùn)行效果已經(jīng)通過(guò)仿真軟件 Proteus 仿真
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 福建藝考生高考數(shù)學(xué)試卷
- 高一聯(lián)考期末數(shù)學(xué)試卷
- 肌理畫(huà)課件兒童創(chuàng)意
- 肉羊的飼養(yǎng)管理技術(shù)
- 肝病的癥狀與診斷方法課件
- 2025年03月浙江嘉興市海寧市人民醫(yī)院招聘1人筆試歷年專業(yè)考點(diǎn)(難、易錯(cuò)點(diǎn))附帶答案詳解
- 2025年浙江醫(yī)療衛(wèi)生招聘溫州醫(yī)科大學(xué)附屬第二醫(yī)院招聘特殊專業(yè)技術(shù)崗位106人筆試歷年專業(yè)考點(diǎn)(難、易錯(cuò)點(diǎn))附帶答案詳解
- 食品采購(gòu)加工培訓(xùn)課件
- 智能城市運(yùn)輸創(chuàng)投項(xiàng)目計(jì)劃書(shū)
- 2025至2030軌道軸箱行業(yè)市場(chǎng)深度研究與戰(zhàn)略咨詢分析報(bào)告
- APQP應(yīng)用表格全套
- 基于UML的外賣訂餐系統(tǒng)需求分析
- 中國(guó)宮腔鏡診斷與手術(shù)臨床實(shí)踐指南(2023年)
- 衡水市武強(qiáng)縣事業(yè)單位考試歷年真題
- 髖臼周圍截骨術(shù)治療成人髖關(guān)節(jié)發(fā)育不良
- 各科門診診所技術(shù)操作規(guī)程
- 新教材人教版高中化學(xué)選擇性必修1全冊(cè)課時(shí)練習(xí)及章末檢測(cè)含解析
- 2023年黑龍江高中地理學(xué)業(yè)水平考試高頻考點(diǎn)
- 部編版小學(xué)語(yǔ)文四年級(jí)上冊(cè)第三單元整體設(shè)計(jì)交流課件
- 年產(chǎn)30萬(wàn)噸水泥粉磨站建設(shè)工程可行性研究報(bào)告
- 邊際貢獻(xiàn)分析
評(píng)論
0/150
提交評(píng)論