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

正文內(nèi)容

畢業(yè)論文-基于stc89c52單片機(jī)的智能音樂演奏器設(shè)計(jì)(編輯修改稿)

2024-12-20 21:36 本頁面
 

【文章內(nèi)容簡介】 息學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 9 效果而且很靈活的解決方 法 。 單片機(jī)管腳及功能說明 圖 7 STC89C52 引腳圖 單片機(jī)如 圖 所示。單片機(jī)引腳功能說明如下。 VCC: 5V供電電壓。 GND:接地。 P0 口: 雙向 IO 口,內(nèi)部無上拉,可以做數(shù)據(jù)和地址總線。數(shù)據(jù)總線時,需要上拉電阻。 P1 口: P1 口 與 P0 口的主要區(qū)別是 具有內(nèi)部上拉電阻 。 主控芯片引腳復(fù)用功能的簡單介紹: T2(外部計(jì)數(shù)輸入 端口,計(jì)數(shù)時使用 ), 主頻率 時鐘 分頻 輸出 T2EX( 功能控制器的 控制 端口,通過不同的配置達(dá)到不同的輸入檢測 ) 智能音樂演奏器設(shè)計(jì) 10 MOSI(在系統(tǒng)編程用) MISO(在系統(tǒng)編程用) SCK(在系統(tǒng)編程用) P2 口: 功能同 P1 口。 P3 口: P3 口 的驅(qū)動能力和其他口一樣。不同之處是 P3 口也能成為 89C52的特殊功能 ( 復(fù)用 第二功能) 來 使用,如下表所示。 P3 口含有單片機(jī)的特殊功能,如燒錄及中斷。描述如表 1 所示: 表 1 P3口引腳功能表 RST:復(fù)位輸入。 XTAL1: 振蕩時鐘 輸入端。 XTAL2: 振蕩時鐘 輸 入 端。 單片機(jī)最小系統(tǒng)設(shè)計(jì) 單片機(jī)最小的組成單位是由復(fù)位電路、電源電路、時鐘電路所組成的。而 時鐘信號 是單片機(jī)運(yùn)行的基礎(chǔ)。時鐘相當(dāng)于是整個系統(tǒng)運(yùn)行的時間準(zhǔn)則,只有當(dāng)時間安排精準(zhǔn),程序才能有條不絮的運(yùn) 行,才能各司其職。復(fù)位操作使它內(nèi)部所有程序全部重新開始。 當(dāng)單片機(jī)的復(fù)位引腳 檢測到 2 個機(jī)器周期 ( 1us 左右) 以上的高電平 以后 ,單片機(jī)就 會 執(zhí)行復(fù)位操作。 STC89C52 的最小系統(tǒng)設(shè)計(jì)圖如 錯誤 !未找到引用源。 所示: P3口引腳 P3口第二功能 RXD(串行口輸入) TXD(串行口輸出) INT0(外部中斷 0 輸入) INT1(外部中斷 1 輸入) T0(定時器 /計(jì)數(shù)器 0) T1(定時器 /計(jì)數(shù)器 1) WR(寫信號輸入) RD(讀信號輸出) 寧波大學(xué)信息學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 11 圖 8 STC89C52 的最小系統(tǒng)設(shè)計(jì)圖 LCD 顯示電路設(shè)計(jì) 相關(guān)數(shù)據(jù)的顯示是智能音樂演奏器的一項(xiàng)重要功能,是整個系統(tǒng)的主要組成部分,所以對顯示電路的設(shè)計(jì),也必須著重考慮。顯示的設(shè)計(jì)功能是:將主控讀取到的歌曲按鍵等相關(guān)數(shù)據(jù) 經(jīng)過器處理后直觀的顯示出來。 LCD1602 操作時序及引腳定義 對 LCD1602 的讀寫有嚴(yán)格的時序要求。讀時序如圖 9 所示,寫時序如圖 10所示。 圖 9 LCD1602 讀時序 (引自《 LCD1602 數(shù)據(jù)手冊》) 智能音樂演奏器設(shè)計(jì) 12 圖 10 LCD1602 寫時序 (引自《 LCD1602 數(shù)據(jù)手冊》) 引腳號 引腳名 稱 引腳功能定義 1 VSS 地引腳( GND) 2 VDD +5V電源引腳( VCC) 3 VO 液晶背光電壓( 0~5V),可接電位器調(diào)節(jié) 4 RS 數(shù)據(jù)狀態(tài)控制端端, RS=0 時命令或狀態(tài); RS=1 時數(shù)據(jù) 5 R/W 讀寫控制,高為讀,低為寫 6 E 數(shù)據(jù)讀寫操作使能端 7~14 DB0DB7 數(shù)據(jù)線,可以用 8 位連接,也可以只用高四位連接,其目的是為了節(jié)約資源 15 A 背光控制正電源 16 K 背光控制地 表 2 LCD1602 引腳定義 LCD1602 的讀操作,主要是讀取 LCD 的狀態(tài),判斷 LCD 是否在轉(zhuǎn)換及合成顯示狀態(tài)。 LCD1602 的寫操作,主要是對 LCD1602 進(jìn)行控制操作,包括清除指令,控制指令及相關(guān)的數(shù)據(jù)接收。 LCD1602 的硬件設(shè)計(jì) 根據(jù)上面的分析,我設(shè)計(jì)出了如圖 11 所示 LCD1602 顯示電路。其中 V0 通過 R1 變阻器分壓得到電壓,通過對該電壓的修改可以達(dá)到不同對比度的顯示效果。數(shù)據(jù)口我們選用 P0 外接上拉電阻實(shí)現(xiàn),控制口我們選用 P2 口實(shí)現(xiàn)。 寧波大學(xué)信息學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 13 圖 11 LCD1602 顯示電路 語音轉(zhuǎn)換模塊設(shè) 計(jì) 語音模塊概述 根據(jù)以上的方案對比,我們可以知道 NV的確是個有著非常強(qiáng)大的可編程語音芯片。它的音頻輸出方式可選為 PWM 和 DAC。多樣的輸出方式選擇,使它的運(yùn)用場合也越來越大。 NV芯片內(nèi)通過串口控制字的輸入,用戶可以選擇高分辨率的 DA 音頻輸出方式,而且 NV芯片內(nèi)部濾波功率的放大,致使模塊后可以自動驅(qū)動 的喇叭響動。該芯片內(nèi)部還集成 PSG 可編程語音合成技術(shù),這種效果使得音樂的音質(zhì)極好,發(fā)出的噪聲極低。 此芯片設(shè)計(jì)時就考慮了眾多的外圍搭配電路,配合其有的極強(qiáng)的可編程能力, NV解碼模塊不僅能實(shí) 現(xiàn)標(biāo)準(zhǔn)的控制方式,亦可根據(jù)不同的控制需求,做出各種不同功能的音樂解碼器件。 功能特點(diǎn) 用戶靈活且多變的 操作模式 供選擇 ( 串口數(shù)據(jù)命令 操作 、并口數(shù)據(jù)命令操作、按鍵操作); 20 秒語音長度(在 6KHz 采樣率) ; 有 忙狀態(tài)輸出指示供主控查詢,并且主控可以通過軟件調(diào)節(jié)音量大小 ; 音質(zhì)好,性能高,物美價廉; 多樣的封裝可供選擇, 使用 更 方便, 開發(fā) 應(yīng)用 更 靈活; 智能音樂演奏器設(shè)計(jì) 14 極簡的外圍電路,配合芯片內(nèi)部豐富的資源,能夠輕松實(shí)現(xiàn)用戶提出的各種功能要求; 靜態(tài) 工作 電流: 2uA; 有音頻輸出時的 Ia 在 20mA~120mA 之間; 語音模塊芯片引腳定義與功能 封裝引腳 引腳標(biāo)號 簡述 功能描述 1 P01 K1/A0/CS 控制方式 1 選擇端 2 GND GND 地 3 EQI OPI 芯片內(nèi)部的功率放大電路的反饋輸入端 4 EQO OPO 內(nèi)部功放反饋輸出 5 VCC VCC 芯片模擬電源 ~ 6 SPKP SPKP DAC 及 PWM 輸出 7 SPKN SPKN DAC 及 PWM 輸出 8 P06 BUSY 語音播放忙信號 9 P05 K3/A2/DI/RXD 控制方式 2 選擇端 10 P04 K2/A1/SCK 控制方式 3 選擇端 11 VPP VPP 芯片編程電源 12 VDD VDD 芯片數(shù)字電源 ~ 13 P10 A3 按鍵口 14 P11 D5 按鍵口 15 RESETB RESETB 芯片復(fù)位端 ,低有效 表 3 語音模塊引腳及相關(guān)功能描述 語音模塊觸發(fā)時序 語音模塊可分為:一線制和三線制。 一線串口控制方式,很特殊,它只有一條數(shù)據(jù)通信線,芯片確定不同的數(shù)據(jù)位是根據(jù)分辨電平占空比。這一點(diǎn)很特別,數(shù)據(jù)解調(diào)的方法同脈寬調(diào)制方法,即通過判斷脈沖高低電平的時間不同,來確定是高電平還是低電平。低電平在后,高電平在前,這種規(guī)定是脈沖時間所具有 的。 三條 通信控制線組成了三線串口控制,線程分別是 SS, DI, SCK。 控制的時序仿照標(biāo)準(zhǔn) SPI 通信格式。通信的準(zhǔn)則是:復(fù)位信號線在發(fā)碼之前先將數(shù)據(jù)線拉低 1ms~ 5ms 左右,然后再拉高并等待 5ms 以上。時序圖如圖 12 所示。 寧波大學(xué)信息學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 15 通過該三線串口即可以實(shí)現(xiàn)對 NV020 芯片的命令控制、語音播放。 D0 位為語音測試口。根據(jù)智能音樂演奏器的設(shè)計(jì)要求,我們選用三線制對語音模塊進(jìn)行控制。 r a m p u p 3 5 0 u s r a m p d o w n 3 0 u S 2 m SSSS CKS D IB U S YV O IC ER S T1 ~ 5 m S 5m S 圖 12 三線串口控制時序圖 (引自《語音模塊數(shù)據(jù)手冊》) 4 智能音樂演奏器的軟 件設(shè)計(jì) 開發(fā)軟件簡介 系統(tǒng)的軟件部分主要是利用 C 語言編程來完成程序的設(shè)計(jì),進(jìn)一步設(shè)計(jì)帶來了便利。匯編語言和 C 語言組成了單片機(jī)開發(fā)語言,由于匯編語言的冗長及復(fù)雜,所以智能音樂演奏器選用 C 語言為開發(fā)語言。對單片機(jī)進(jìn)行編程, Keil軟件當(dāng)仁不讓的是最好的工具,它有利于程序更好的設(shè)計(jì)實(shí)現(xiàn)。 Keil 的 C51 系列軟件是該公司獨(dú)自設(shè)計(jì)的,面向 51 單片機(jī)系列并且可以兼容國產(chǎn)單片機(jī)的軟件開發(fā)系統(tǒng)。 C 和其他編程語言相比較,它的優(yōu)點(diǎn)還是有很多的,而且該單片機(jī)的平臺提供大量的、可操作性強(qiáng)的調(diào)試工具,有利于集成開發(fā)。 應(yīng)用程序設(shè)計(jì) 那些設(shè)計(jì)類軟件,如果大腦中沒有很清楚的思路和很好的方案,那么設(shè)計(jì)東西是非常困難的。程序設(shè)計(jì)真的很繁瑣,很乏味但是它的重要性不言而喻。為了枯燥乏味的設(shè)計(jì)工作條理化,就必須要有相應(yīng)的步驟和方法。通過系統(tǒng)的分析,智能音樂演奏器設(shè)計(jì) 16 其設(shè)計(jì)流程可以簡單的分為以下若干種: ( 1)整體分析系統(tǒng)控制要求:什么要被控制,什么要被顯示,什么要被讀取。然后在根據(jù)處理值得不同,確定算法。 ( 2)然后根據(jù)它的算法來畫流程:第一步是什么,第二步是什么,再者又是什么。畫框圖的優(yōu)點(diǎn)可以把算法和程序設(shè)計(jì)的流程方法更加具體化( 3)最后再編寫程序:可以通過框圖的算法和步驟,選取合適的指令實(shí)現(xiàn)功能,然后把它們組成一個有機(jī)的整體,就構(gòu)成了整體程序。 下面給出各個模塊的軟件設(shè)計(jì),最終來達(dá)到設(shè)計(jì)的要求,實(shí)現(xiàn)其功能。 主程序的設(shè)計(jì) 智能音樂演奏器的軟件設(shè)計(jì)構(gòu)成主要有如下幾種:由按鍵檢測及控制發(fā)出的主程序、系統(tǒng) LCD 及解碼模塊的初始化程序、 1602 的數(shù)據(jù)顯示程序、控制解碼程序等。主程序設(shè)計(jì)流程 錯誤 !未找到引用源。 3 所示。 圖 13 主程序設(shè)計(jì)流程圖 是 否 是 是 開始 初始化 LCD1602 初始化 NV020 模塊 是否有 TF 卡插 入? 初始化文件系統(tǒng) 查找音樂文件 數(shù)據(jù)送至 NV020 目錄循環(huán)播放音樂 是否有鍵按下? 執(zhí)行相應(yīng)功能 結(jié)束 否 是 寧波大學(xué)信息學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 17 LCD 顯示程序設(shè)計(jì) 顯示程序設(shè)計(jì)流程圖,如 是其他需要調(diào)用的程序之一,所以它的設(shè)計(jì)重要性不言而喻。 是 否 智能音樂演奏器設(shè)計(jì) 18 圖 4 所示。顯示的目的是直觀的向用戶提供用戶想要的信息,并且在設(shè)計(jì)時,應(yīng)該充分考慮設(shè)計(jì)顯示的內(nèi)容,和顯示的時間。因?yàn)長CD1602 顯示子程序 是其他需要調(diào)用的程序之一,所以它的設(shè)計(jì)重要性不言而喻。 是 否 入口 對 1602 初始化寫入顯示設(shè)置命令 延時一段時間 檢查忙標(biāo)志 BF=7? 設(shè)置字符顯示位置 延時一段時間 向 1602 中寫入數(shù)據(jù) LCD 顯示內(nèi)容 返回主程序 寧波大學(xué)信息學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 19 圖 14 顯示子程序流程圖 顯示程序如下所示: static void delayms(unsigned int n) { unsigned int x,y。 for(x=n。x0。x) for(y=110。y0。y)。 } void lcd_w(unsigned char ) //lcd1602 寫命令函數(shù) { rs=0。 //選擇指令寄存器 rw=0。 //選擇寫 P0=。 //把命令字送入 P2 delayms(5)。 en=1。 e
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1