基于MSP430單片機(jī)的信號(hào)發(fā)生器設(shè)計(jì)說(shuō)明_第1頁(yè)
基于MSP430單片機(jī)的信號(hào)發(fā)生器設(shè)計(jì)說(shuō)明_第2頁(yè)
基于MSP430單片機(jī)的信號(hào)發(fā)生器設(shè)計(jì)說(shuō)明_第3頁(yè)
基于MSP430單片機(jī)的信號(hào)發(fā)生器設(shè)計(jì)說(shuō)明_第4頁(yè)
基于MSP430單片機(jī)的信號(hào)發(fā)生器設(shè)計(jì)說(shuō)明_第5頁(yè)
已閱讀5頁(yè),還剩29頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、題目名稱: 基于MSP430的信號(hào)發(fā)生器設(shè)計(jì) 姓 名: 從鋒 班 級(jí): 電信111 學(xué) 號(hào): 3 日 期: 2014/7/08 摘 要隨著科技的發(fā)展和現(xiàn)代科研的需要,信號(hào)發(fā)生器已經(jīng)成為了很多行業(yè)進(jìn)行研究測(cè)試不可或缺的工具。信號(hào)發(fā)生器又稱信號(hào)源或振蕩器,在生產(chǎn)實(shí)踐和科技領(lǐng)域中有著廣泛的應(yīng)用。各種波形曲線均可以用三角函數(shù)方程式來(lái)表示。能夠產(chǎn)生多種波形,如三角波、鋸齒波、矩形波(含方波)、正弦波的電路被稱為函數(shù)信號(hào)發(fā)生器。函數(shù)信號(hào)發(fā)生器在電路實(shí)驗(yàn)和設(shè)備檢測(cè)中具有十分廣泛的用途。例如在通信、廣播、電視系統(tǒng)中,都需要射頻(高頻)發(fā)射,這里的射頻波就是載波,把音頻(低頻)、視頻信號(hào)或脈沖信號(hào)運(yùn)載出去,就需

2、要能夠產(chǎn)生高頻的振蕩器。在工業(yè)、農(nóng)業(yè)、生物醫(yī)學(xué)等領(lǐng)域,如高頻感應(yīng)加熱、熔煉、淬火、超聲診斷、核磁共振成像等,都需要功率或大或小、頻率或高或低的振蕩器。本系統(tǒng)采用MSP430F149單片機(jī)為控制核心,利用單片機(jī)置的DA芯片,通過(guò)按鍵中斷來(lái)邏輯選擇要輸出的波形(正弦波、方波、三角波、鋸齒波),再設(shè)置其它鍵來(lái)控制波形的幅值與頻率,然后通過(guò)單片機(jī)控制顯示到LCD1602上。波形的產(chǎn)生是通過(guò)MSP430單片機(jī)執(zhí)行某一波形發(fā)生程序,向D/A轉(zhuǎn)換器的輸入端按一定的規(guī)律發(fā)生數(shù)據(jù),從而在D/A轉(zhuǎn)換電路的輸出端得到相應(yīng)的電壓波形。在MSP430學(xué)習(xí)板的鍵盤按鍵,通過(guò)軟件編程來(lái)選擇各種波形、幅值電壓和頻率,按不同按

3、鍵產(chǎn)生不同波形的信號(hào)。此方案的有點(diǎn)是電路原理比較簡(jiǎn)單,實(shí)現(xiàn)起來(lái)比較容易。關(guān)鍵字:MSP430,信號(hào)發(fā)生器,LCD160229 / 34前 言 計(jì)算機(jī)和集成技術(shù)的高速發(fā)展,電子電路的分析與設(shè)計(jì)與相應(yīng)專業(yè)課程的教學(xué)與實(shí)驗(yàn)所采用的方式與方法都發(fā)生了重大變化,特別是電子設(shè)計(jì)自動(dòng)化系統(tǒng)中所包含的測(cè)試測(cè)量技術(shù)已經(jīng)成為現(xiàn)代教育技術(shù)的重要組成部分, 在高校的各個(gè)電子相關(guān)的實(shí)驗(yàn)室中,都需要開(kāi)發(fā)和測(cè)試各種復(fù)雜的電路或子系統(tǒng),其通常要求從沒(méi)有上市的或很難獲得的元器件或傳感器中提取額外的信號(hào),由此可見(jiàn)信號(hào)發(fā)生器已經(jīng)成為了很多行業(yè)進(jìn)行研究測(cè)試不可或缺的工具。信號(hào)發(fā)生器既可以構(gòu)成獨(dú)立的信號(hào)源,也可以是高性能網(wǎng)絡(luò)

4、分析儀、頻譜儀與其它自動(dòng)測(cè)試設(shè)備的組成部分。信號(hào)發(fā)生器的關(guān)鍵技術(shù)是多種高性能儀器的支撐技術(shù),因?yàn)樗軌蛱峁└哔|(zhì)量的精密信號(hào)源與掃頻源,可使相應(yīng)系統(tǒng)的檢測(cè)過(guò)程大大簡(jiǎn)化,降低檢測(cè)費(fèi)用并極提高檢測(cè)精度。1) 美捷倫生產(chǎn)的33250A型函數(shù)/任意波形發(fā)生器可以產(chǎn)生穩(wěn)定、精確和低失真的任意波形,其輸出頻率圍為1Hz80MHz,而輸出幅度為10mVpp10Vpp;該公司生產(chǎn)的8648D射頻信號(hào)發(fā)生器的頻率覆蓋圍更可高達(dá)9kHz4GHz。2) 美國(guó)泰克生產(chǎn)的DTG5000 信號(hào)發(fā)生器的采樣率達(dá)到最高3.35 Gb/s(數(shù)據(jù))3) 國(guó)產(chǎn)SG1060數(shù)字合成信號(hào)發(fā)生器能雙通道同時(shí)輸出高分辨率、高精度、高可靠性的

5、各種波形,頻率覆蓋圍為1Hz60MHz;4) 國(guó)產(chǎn)S1000型數(shù)字合成掃頻信號(hào)發(fā)生器通過(guò)采用新技術(shù)、新器件實(shí)現(xiàn)高精度、寬頻帶的掃頻源,同時(shí)應(yīng)用DDS和鎖相技術(shù),使頻率圍從1MHz1024MHz能精確地分辨到100Hz,它既是一臺(tái)高精度的掃頻源,同時(shí)也是一臺(tái)高精度的標(biāo)準(zhǔn)信號(hào)發(fā)生器。還有很多其它類型的信號(hào)發(fā)生器,他們各有各的優(yōu)點(diǎn),但是相信信號(hào)發(fā)生器總的趨勢(shì)將向著寬頻率覆蓋、高頻率精度、多功能、多用途、自動(dòng)化和智能化方向發(fā)展。目錄第1章概述11.1 信號(hào)發(fā)生器設(shè)計(jì)背景11.2信號(hào)發(fā)生器的發(fā)展現(xiàn)狀21.3本設(shè)計(jì)采用的研究方法和技術(shù)路線2第2章芯片介紹42.1 MSP430單片機(jī)技術(shù)的發(fā)展特點(diǎn)與應(yīng)用42

6、.1.1MSP430單片機(jī)技術(shù)的發(fā)展特點(diǎn)42.1.2 單片機(jī)的應(yīng)用62.1.3 MSP430F149單片機(jī)的引腳圖72.2 LCD1602液晶顯示器簡(jiǎn)介82.2.1LCD1602液晶顯示器的引腳說(shuō)明82.2.2寄存器選擇控制表92.3 DAC5571簡(jiǎn)介92.3.1 DAC5571的引腳說(shuō)明92.3.2 DAC5571的原理圖與運(yùn)算方法10第3章系統(tǒng)硬件設(shè)計(jì)113.1 基于MSP430F149信號(hào)發(fā)生器構(gòu)成與工作原理113.2信號(hào)發(fā)生器的鍵盤電路113.3信號(hào)發(fā)生器的LCD1602顯示模塊123.3數(shù)模轉(zhuǎn)換DAC5571電路133.4小結(jié)14第4章系統(tǒng)軟件設(shè)計(jì)154.1 信號(hào)發(fā)生器總流程圖15

7、4.2 初始化程序流程圖164.3 按鍵中斷程序流程圖164.4 波形產(chǎn)生程序流程圖174.4.1 正弦波產(chǎn)生程序流程圖174.4.2 方波產(chǎn)生程序流程圖184.4.3 鋸齒波產(chǎn)生程序流程圖194.4.4 三角波產(chǎn)生程序流程圖194.5 小結(jié)20結(jié)論21程序:22第1章 概 述1.1 信號(hào)發(fā)生器設(shè)計(jì)背景 隨著計(jì)算機(jī)和集成技術(shù)的高速發(fā)展,電子電路的分析與設(shè)計(jì)與相應(yīng)專業(yè)課程的教學(xué)與實(shí)驗(yàn)所采用的方式與方法都發(fā)生了重大變化,特別是電子設(shè)計(jì)自動(dòng)化系統(tǒng)中所包含的測(cè)試測(cè)量技術(shù)已經(jīng)成為現(xiàn)代教育技術(shù)的重要組成部分, 在高校的各個(gè)電子相關(guān)的實(shí)驗(yàn)室中,都需要開(kāi)發(fā)和測(cè)試各種復(fù)雜的電路或子系統(tǒng),其通常要求從沒(méi)

8、有上市的或很難獲得的元器件或傳感器中提取額外的信號(hào),由此可見(jiàn)信號(hào)發(fā)生器已經(jīng)成為了很多行業(yè)進(jìn)行研究測(cè)試不可或缺的工具。信號(hào)發(fā)生器又稱信號(hào)源或振蕩器,在生產(chǎn)實(shí)踐和科技領(lǐng)域中有著廣泛的應(yīng)用。各種波形曲線均可以用三角函數(shù)方程式來(lái)表示。能夠產(chǎn)生多種波形,如三角波、鋸齒波、矩形波(含方波)、正弦波的電路被稱為函數(shù)信號(hào)發(fā)生器。函數(shù)信號(hào)發(fā)生器在電路實(shí)驗(yàn)和設(shè)備檢測(cè)中具有十分廣泛的用途。例如在通信、廣播、電視系統(tǒng)中,都需要射頻(高頻)發(fā)射,這里的射頻波就是載波,把音頻(低頻)、視頻信號(hào)或脈沖信號(hào)運(yùn)載出去,就需要能夠產(chǎn)生高頻的振蕩器。在工業(yè)、農(nóng)業(yè)、生物醫(yī)學(xué)等領(lǐng)域,如高頻感應(yīng)加熱、熔煉、淬火、超聲診斷、核磁共振成像等

9、,都需要功率或大或小、頻率或高或低的振蕩器。(1)用分立元件組成的函數(shù)發(fā)生器:通常是單函數(shù)發(fā)生器且頻率不高,其工作不很穩(wěn)定,不易調(diào)試。 (2)可以由晶體管、運(yùn)放IC等通用器件制作,更多的則是用專門的函數(shù)信號(hào)發(fā)生器IC產(chǎn)生。(3)利用單片集成芯片的函數(shù)發(fā)生器:能產(chǎn)生多種波形,達(dá)到較高的頻率,且易于調(diào)試。(4)利用專用直接數(shù)字合成芯片的函數(shù)發(fā)生器:能產(chǎn)生任意波形并達(dá)到很高的頻率,但成本較高。1.2信號(hào)發(fā)生器的發(fā)展現(xiàn)狀信號(hào)發(fā)生器既可以構(gòu)成獨(dú)立的信號(hào)源,也可以是高性能網(wǎng)絡(luò)分析儀、頻譜儀與其它自動(dòng)測(cè)試設(shè)備的組成部分。信號(hào)發(fā)生器的關(guān)鍵技術(shù)是多種高性能儀器的支撐技術(shù),因?yàn)樗軌蛱峁└哔|(zhì)量的精密信號(hào)源與掃頻源

10、,可使相應(yīng)系統(tǒng)的檢測(cè)過(guò)程大大簡(jiǎn)化,降低檢測(cè)費(fèi)用并極提高檢測(cè)精度。美捷倫生產(chǎn)的33250A型函數(shù)/任意波形發(fā)生器可以產(chǎn)生穩(wěn)定、精確和低失真的任意波形,其輸出頻率圍為1Hz80MHz,而輸出幅度為10mVpp10Vpp;該公司生產(chǎn)的8648D射頻信號(hào)發(fā)生器的頻率覆蓋圍更可高達(dá)9kHz4GHz。美國(guó)泰克生產(chǎn)的DTG5000 信號(hào)發(fā)生器的采樣率達(dá)到最高3.35 Gb/s(數(shù)據(jù))。國(guó)產(chǎn)SG1060數(shù)字合成信號(hào)發(fā)生器能雙通道同時(shí)輸出高分辨率、高精度、高可靠性的各種波形,頻率覆蓋圍為1Hz60MHz。國(guó)產(chǎn)S1000型數(shù)字合成掃頻信號(hào)發(fā)生器通過(guò)采用新技術(shù)、新器件實(shí)現(xiàn)高精度、寬頻帶的掃頻源,同時(shí)應(yīng)用DDS和鎖相

11、技術(shù),使頻率圍從1MHz1024MHz能精確地分辨到100Hz,它既是一臺(tái)高精度的掃頻源,同時(shí)也是一臺(tái)高精度的標(biāo)準(zhǔn)信號(hào)發(fā)生器。還有很多其它類型的信號(hào)發(fā)生器,他們各有各的優(yōu)點(diǎn),但是信號(hào)發(fā)生器總的趨勢(shì)將向著寬頻率覆蓋、高頻率精度、多功能、多用途、自動(dòng)化和智能化方向發(fā)展。1.3本設(shè)計(jì)采用的研究方法和技術(shù)路線首先去圖書館借閱有關(guān)MSP430單片機(jī)的書籍資料,了解MSP430單片機(jī)的工作原理、部結(jié)構(gòu)、功能模塊、各種寄存器以與匯編語(yǔ)言,從整體上對(duì)MSP430單片機(jī)的使用方法和編程原理進(jìn)行理解。然后利用網(wǎng)絡(luò)資源查閱單片機(jī)的C語(yǔ)言編程實(shí)例和視頻講解,對(duì)單片機(jī)每個(gè)功能模塊的使用有所了解。最后根據(jù)自己的題材基于M

12、SP430單片機(jī)的信號(hào)發(fā)生器設(shè)計(jì)指定相應(yīng)的策略想辦法完成編程。波形的產(chǎn)生是通過(guò)MSP430單片機(jī)執(zhí)行某一波形發(fā)生程序,向D/A轉(zhuǎn)換器的輸入端按一定的規(guī)律發(fā)生數(shù)據(jù),從而在D/A轉(zhuǎn)換電路的輸出端得到相應(yīng)的電壓波形。在MSP430學(xué)習(xí)板的鍵盤按鍵,通過(guò)軟件編程來(lái)選擇各種波形、幅值電壓和頻率,按不同按鍵產(chǎn)生不同波形的信號(hào)。此方案的有點(diǎn)是電路原理比較簡(jiǎn)單,實(shí)現(xiàn)起來(lái)比較容易。具體就是系統(tǒng)采用MSP430單片機(jī)為控制核心,利用單片機(jī)置的AD芯片,通過(guò)按鍵中斷來(lái)邏輯選擇要輸出的波形(正弦波、方波、三角波、鋸齒波),再設(shè)置其它鍵來(lái)控制波形的復(fù)制與頻率,然后通過(guò)單片機(jī)控制顯示到LCD1602上。本設(shè)計(jì)由檢測(cè)模塊、

13、顯示模塊和控制模塊組成,其中顯示模塊用LCD顯示實(shí)現(xiàn)溫度顯示,控制模塊通過(guò)單片機(jī)控制繼電器來(lái)實(shí)現(xiàn)。第2章 芯片介紹2.1 MSP430單片機(jī)技術(shù)的發(fā)展特點(diǎn)與應(yīng)用MSP430系列單片機(jī)是美國(guó)儀器(TI)1996年開(kāi)始推向市場(chǎng)的一種16位超低功耗、具有精簡(jiǎn)指令集(RISC)的混合信號(hào)處理器(Mixed Signal Processor)。稱之為混合信號(hào)處理器,是由于其針對(duì)實(shí)際應(yīng)用需求,將多個(gè)不同功能的模擬電路、數(shù)字電路模塊和微處理器集成在一個(gè)芯片上,以提供“單片”解決方案。該系列單片機(jī)多應(yīng)用于需要電池供電的便攜式儀器儀表中1。2.1.1MSP430單片機(jī)技術(shù)的發(fā)展特點(diǎn)儀器1996年到2000年初,

14、先后推出了31x、32x、33x等幾個(gè)系列,這些系列具有LCD驅(qū)動(dòng)模塊,對(duì)提高系統(tǒng)的集成度較有利。每一系列有ROM 型(C)、OTP 型(P)、和 EPROM 型(E)等芯片。2000 年推出了11x/11x1系列。這個(gè)系列采用20腳封裝,存容量、片上功能和 I/O 引腳數(shù)比較少,但是價(jià)格比較低廉。2000年7月推出了F13x/F14x 系列,在2001年7月到2002年又相繼推出F41x、F43x、F44x。這些全部是 Flash 型單片機(jī)。2001年TI 公司又公布了BOOTSTRAP LOADER技術(shù),利用它可在燒斷熔絲以后只要幾根線就可更改并運(yùn)行部的程序。這為系統(tǒng)軟件的升級(jí)提供了又一方

15、便的手段。BOOTSTRAP 具有很高的性,口令可達(dá)到 32個(gè)字節(jié)的長(zhǎng)度1。1、處理能力強(qiáng)MSP430系列單片機(jī)是一個(gè)16位的單片機(jī),采用了精簡(jiǎn)指令集(RISC)結(jié)構(gòu),具有豐富的尋址方式(7 種源操作數(shù)尋址、4 種目的操作數(shù)尋址)、簡(jiǎn)潔的 27 條核指令以與大量的模擬指令;大量的寄存器以與片數(shù)據(jù)存儲(chǔ)器都可參加多種運(yùn)算;還有高效的查表處理指令。這些特點(diǎn)保證了可編制出高效率的源程序。2、運(yùn)算速度快 MSP430 系列單片機(jī)能在25MHz晶體的驅(qū)動(dòng)下,實(shí)現(xiàn)40ns的指令周期。16位的數(shù)據(jù)寬度、40ns的指令周期以與多功能的硬件乘法器(能實(shí)現(xiàn)乘加運(yùn)算)相配合,能實(shí)現(xiàn)數(shù)字信號(hào)處理的某些算法(如 FFT

16、等)。3、超低功耗MSP430 單片機(jī)之所以有超低的功耗,是因?yàn)槠湓诮档托酒碾娫措妷汉挽`活而可控的運(yùn)行時(shí)鐘方面都有其獨(dú)到之處。首先,MSP430 系列單片機(jī)的電源電壓采用的是1.8-3.6V 電壓。因而可使其在1MHz 的時(shí)鐘條件下運(yùn)行時(shí),芯片的電流最低會(huì)在165A左右,RAM 保持模式下的最低功耗只有0.1A。其次,獨(dú)特的時(shí)鐘系統(tǒng)設(shè)計(jì)。在 MSP430 系列中有兩個(gè)不同的時(shí)鐘系統(tǒng):基本時(shí)鐘系統(tǒng)、鎖頻環(huán)(FLL 和FLL+)時(shí)鐘系統(tǒng)和DCO數(shù)字振蕩器時(shí)鐘系統(tǒng)。可以只使用一個(gè)晶體振蕩器(32768Hz),也可以使用兩個(gè)晶體振蕩器。由系統(tǒng)時(shí)鐘系統(tǒng)產(chǎn)生 CPU 和各功能所需的時(shí)鐘。并且這些時(shí)鐘可以

17、在指令的控制下,打開(kāi)和關(guān)閉,從而實(shí)現(xiàn)對(duì)總體功耗的控制。由于系統(tǒng)運(yùn)行時(shí)開(kāi)啟的功能模塊不同,即采用不同的工作模式,芯片的功耗有著顯著的不同。在系統(tǒng)中共有一種活動(dòng)模式(AM)和五種低功耗模式(LPM0LPM4)。在實(shí)時(shí)時(shí)鐘模式下,可達(dá)2.5A ,在RAM 保持模式下,最低可達(dá)0.1A 。4、片資源豐富MSP430 系列單片機(jī)的各系列都集成了較豐富的片外設(shè)。它們分別是看門狗(WDT)、模擬比較器A、定時(shí)器A0(Timer_A0)、定時(shí)器A1(Timer_A1)、定時(shí)器B0(Timer_B0)、UART、SPI、I2C、硬件乘法器、液晶驅(qū)動(dòng)器、10位/12位ADC、16位- ADC、DMA、I/O端口、

18、基本定時(shí)器(Basic Timer)、實(shí)時(shí)時(shí)鐘(RTC)和USB控制器等若干外圍模塊的不同組合。其中,看門狗可以使程序失控時(shí)迅速?gòu)?fù)位;模擬比較器進(jìn)行模擬電壓的比較,配合定時(shí)器,可設(shè)計(jì)出 A/D 轉(zhuǎn)換器;16 位定時(shí)器(Timer_A 和 Timer_B)具有捕獲/比較功能,大量的捕獲/比較寄存器,可用于事件計(jì)數(shù)、時(shí)序發(fā)生、 PWM 等;有的器件更具有可實(shí)現(xiàn)異步、同步與多址訪問(wèn)串行通信接口可方便的實(shí)現(xiàn)多機(jī)通信等應(yīng)用;具有較多的 I/O 端口,P0、P1、P2 端口能夠接收外部上升沿或下降沿的中斷輸入;10/12位硬件 A/D 轉(zhuǎn)換器有較高的轉(zhuǎn)換速率,最高可達(dá)200kbps ,能夠滿足大多數(shù)數(shù)據(jù)采

19、集應(yīng)用;能直接驅(qū)動(dòng)液晶多達(dá) 160 段;實(shí)現(xiàn)兩路的 12 位 D/A 轉(zhuǎn)換;硬件I2C串行總線接口實(shí)現(xiàn)存儲(chǔ)器串行擴(kuò)展;以與為了增加數(shù)據(jù)傳輸速度,而采用的DMA模塊。MSP430 系列單片機(jī)的這些片外設(shè)為系統(tǒng)的單片解決方案提供了極大的方便。5、方便高效的開(kāi)發(fā)環(huán)境MSP430 系列有 OPT 型、 FLASH 型和 ROM 型三種類型的器件,這些器件的開(kāi)發(fā)手段不同。對(duì)于 OPT 型和 ROM 型的器件是使用仿真器開(kāi)發(fā)成功之后燒寫或掩膜芯片;對(duì)于 FLASH 型則有十分方便的開(kāi)發(fā)調(diào)試環(huán)境,因?yàn)槠骷?JTAG 調(diào)試接口,還有可電擦寫的 FLASH 存儲(chǔ)器,因此采用先下載程序到 FLASH ,再在器

20、件通過(guò)軟件控制程序的運(yùn)行,由 JTAG 接口讀取片信息供設(shè)計(jì)者調(diào)試使用的方法進(jìn)行開(kāi)發(fā)。這種方式只需要一臺(tái) PC 機(jī)和一個(gè) JTAG 調(diào)試器,而不需要仿真器和編程器。開(kāi)發(fā)語(yǔ)言有匯編語(yǔ)言和 C 語(yǔ)言。2.1.2 單片機(jī)的應(yīng)用MSP430單片機(jī)具有體積小,功耗低,易于產(chǎn)品化,面向控制,抗干擾能力強(qiáng),適用溫度圍寬,它廣泛應(yīng)用于儀器儀表、家用電器、醫(yī)用設(shè)備、航空航天、專用設(shè)備的智能化管理與過(guò)程控制等領(lǐng)域,大致可分如下幾個(gè)疇:1、在智能儀器儀表上的應(yīng)用單片機(jī)的體積小、功耗低、控制功能強(qiáng)、擴(kuò)展靈活、微型化和使用方便等優(yōu)點(diǎn),使其廣泛應(yīng)用于儀器儀表中。采用單片機(jī)控制使得儀器儀表數(shù)字化、智能化、微型化,且功能比起

21、采用電子或數(shù)字電路更加強(qiáng)大。例如精密的測(cè)量設(shè)備(功率計(jì),示波器,各種分析儀)。2、在工業(yè)控制中的應(yīng)用單片機(jī)可以方便的實(shí)現(xiàn)多機(jī)和分布式控制,用單片機(jī)可以構(gòu)成形式多樣的控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)。例如工廠流水線的智能化管理,電梯智能化控制、各種報(bào)警系統(tǒng),與計(jì)算機(jī)聯(lián)網(wǎng)構(gòu)成二級(jí)控制系統(tǒng)等。3、在家用電器中的應(yīng)用可以這樣說(shuō),現(xiàn)在的家用電器基本上都采用了單片機(jī)控制,從電飯煲、洗衣機(jī)、電冰箱、空調(diào)機(jī)、彩電、其他音響視頻器材、再到電子秤量設(shè)備,無(wú)所不在。4、在計(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)在的通信

22、設(shè)備基本上都實(shí)現(xiàn)了單片機(jī)智能控制,從小型程控交換機(jī)、樓宇自動(dòng)通信呼叫系統(tǒng)、再到日常工作中隨處可見(jiàn)的移動(dòng),集群移動(dòng)通信,無(wú)線電對(duì)講機(jī)等。5、單片機(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 MSP430F149單片機(jī)的引腳圖MSP430F149單片機(jī)的引腳如圖2-1所示。圖2-1 MSP430F149單片機(jī)的引腳圖2.2 LCD1602液晶顯示器簡(jiǎn)介工業(yè)字符型液晶,能夠同時(shí)顯示16x02即32個(gè)字符(16列2行)。1602字符

23、型LCD通常有14條引腳線或16條引腳線的LCD,多出來(lái)的2條線是背光電源線VCC(15腳)和地線GND(16腳),其控制原理與14腳的LCD完全一樣2.2.1LCD1602液晶顯示器的引腳說(shuō)明LCD1602液晶顯示器的引腳說(shuō)明如表2-1所示。表2-1 LCD1602的引腳功能說(shuō)明引腳符號(hào)功能說(shuō)明1VSS一般接地2VDD接電源(+5V)3V0液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高(對(duì)比度過(guò)高時(shí)會(huì)產(chǎn)生“鬼影”,使用時(shí)可以通過(guò)一個(gè)10K的電位器調(diào)整對(duì)比度)。4RSRS為寄存器選擇,高電平1時(shí)選擇數(shù)據(jù)寄存器、低電平0時(shí)選擇指令寄存器。5R/WR/W為讀寫信號(hào)線,高電平(1

24、)時(shí)進(jìn)行讀操作,低電平(0)時(shí)進(jìn)行寫操作。6EE(或EN)端為使能(enable)端,下降沿使能。7DB0低4位三態(tài)、 雙向數(shù)據(jù)總線 0位(最低位)8DB1低4位三態(tài)、 雙向數(shù)據(jù)總線 1位9DB2低4位三態(tài)、 雙向數(shù)據(jù)總線 2位10DB3低4位三態(tài)、 雙向數(shù)據(jù)總線 3位11DB4高4位三態(tài)、 雙向數(shù)據(jù)總線 4位12DB5高4位三態(tài)、 雙向數(shù)據(jù)總線 5位13DB6高4位三態(tài)、 雙向數(shù)據(jù)總線 6位14DB7高4位三態(tài)、 雙向數(shù)據(jù)總線 7位(最高位)(也是busy flag)15BLA背光電源正極16BLK背光 電源負(fù)極2.2.2寄存器選擇控制表控制寄存器的控制指令說(shuō)明如表2-2所示。表2-2 控制

25、寄存器的控制表RSR/W操作說(shuō)明00寫入指令寄存器(清除屏等)01讀busy flag(DB7),以與讀取位址計(jì)數(shù)器(DB0DB6)值10寫入數(shù)據(jù)寄存器(顯示各字型等)11從數(shù)據(jù)寄存器讀取數(shù)據(jù)注:關(guān)于E=H脈沖開(kāi)始時(shí)初始化E為0,然后置E為1,再清0。busy flag(DB7):在此位為被清除為0時(shí),LCD將無(wú)法再處理其他的指令要求。2.3 DAC5571簡(jiǎn)介2.3.1DAC5571的引腳說(shuō)明DAC5571的引腳說(shuō)明如表2-3所示。表2-3 DAC5571的引腳說(shuō)明引腳名稱描述1VOUT模擬輸出電壓2GND所有地面參考3VDD模擬供電電壓輸入4SDA串行數(shù)據(jù)輸入5SCL串行時(shí)鐘輸入6A0設(shè)備

26、地址選擇2.3.2 DAC5571的原理圖與運(yùn)算方法DAC5571的原理圖與運(yùn)算方法分別如圖2-2和圖2-3所示。圖2-2 DAC5571的工作原理圖圖2-3 DAC5571的工作運(yùn)算方法第3章 系統(tǒng)硬件設(shè)計(jì)3.1 基于MSP430F149信號(hào)發(fā)生器構(gòu)成與工作原理信號(hào)發(fā)生器電路主要由MSP430F149系統(tǒng)、鍵盤電路、LCD1602顯示電路、DAC5571芯片、電源電路等組成。系統(tǒng)原理方框圖如圖3-1所示。顯示電路鍵盤電路數(shù)模轉(zhuǎn)換MSP430F149電 源圖3-1系統(tǒng)原理方框圖系統(tǒng)工作原理:本系統(tǒng)采用MSP430單片機(jī)為控制核心,利用單片機(jī)置的DA芯片,通過(guò)按鍵中斷來(lái)邏輯選擇要輸出的波形(正弦

27、波、方波、三角波、鋸齒波),再設(shè)置其它鍵來(lái)控制波形的復(fù)制與頻率,然后通過(guò)單片機(jī)控制顯示到LCD1602上。波形的產(chǎn)生是通過(guò)MSP430單片機(jī)執(zhí)行某一波形發(fā)生程序,向D/A轉(zhuǎn)換器的輸入端按一定的規(guī)律發(fā)送數(shù)據(jù),從而在D/A轉(zhuǎn)換電路的輸出端得到相應(yīng)的電壓波形。在MSP430學(xué)習(xí)板的鍵盤按鍵,通過(guò)軟件編程來(lái)選擇各種波形、幅值電壓和頻率,按不同按鍵產(chǎn)生不同波形的信號(hào)。3.2信號(hào)發(fā)生器的鍵盤電路本系統(tǒng)所需要的鍵盤有8個(gè),經(jīng)過(guò)分析覺(jué)得使用獨(dú)立式鍵盤更為合適,但是手上有現(xiàn)有的4*4矩陣鍵盤,因此使用了4*4矩陣鍵盤。連接電路如圖3-2所示。圖3-2 鍵盤模塊電路現(xiàn)在具體分析鍵盤的工作原理:鍵盤初始化使得單片機(jī)

28、P1的P1.0P1.3設(shè)置為輸入狀態(tài), P1.4P1.7設(shè)置為輸出狀態(tài),然后令P1.4P1.7輸出低電平,P1.0P1.3下降沿觸發(fā)中斷,并開(kāi)中斷。進(jìn)入中斷子程序后進(jìn)行掃描并獲得鍵值,最后根據(jù)按鍵的不同分別跳到對(duì)應(yīng)的子程序中。在掃描的子程序中,當(dāng)在P1.7管腳上輸出低電平,并且行線的其他管腳上輸出高電平時(shí),如果“K1”鍵被按下,則P1.0為低電平;如果“K2”鍵被按下,則P1.1為低電平;如果“K3”鍵被按下,則P1.2為低電平;如果“K4”鍵被按下,則P1.3為低電平。通過(guò)設(shè)置一條行線的輸出就可以獲取列線上的相應(yīng)狀態(tài),從而獲得鍵盤輸入的值。同理,依次在其他列線上輸出低電平,就可以獲取其他鍵的

29、輸入值。通過(guò)這樣的掃描方式,可以實(shí)現(xiàn)鍵盤的輸入。3.3信號(hào)發(fā)生器的LCD1602顯示模塊LCD1602液晶顯示器的電路圖如圖3-2所示。本電路的功能是顯示當(dāng)前輸出的波形與該波形的幅值與頻率。指令集如表3-1所示。表3-1 LCD1602的控制指令集寫指令38H對(duì)1602進(jìn)行復(fù)位操作寫指令08H對(duì)1602進(jìn)行顯示關(guān)閉操作寫指令01H對(duì)1602進(jìn)行顯示清屏操作寫指令06H寫字符時(shí)整體不移動(dòng)寫指令0cH顯示開(kāi),不開(kāi)游標(biāo),不閃爍圖3-2 LCD1602電路圖3.3數(shù)模轉(zhuǎn)換DAC5571電路本DAC5571實(shí)現(xiàn)單片機(jī)的數(shù)字信號(hào)轉(zhuǎn)換成模擬信號(hào)并輸出,電路圖如圖3-3所示。圖3-3 DAC5571電路圖3.

30、4小結(jié)本章在上一章的基礎(chǔ)上,結(jié)合MSP430單片機(jī)信號(hào)發(fā)生器的基本功能介紹了它的工作流程、硬件組成和工作原理,設(shè)計(jì)了鍵盤電路、LCD1602顯示電路、DAC5571芯片等,各電路根據(jù)需要連接到MSP430F149單片機(jī)的接口上,就構(gòu)成了一個(gè)功能強(qiáng)大的基于MSP430單片機(jī)的信號(hào)發(fā)生器設(shè)計(jì)。第4章 系統(tǒng)軟件設(shè)計(jì)信號(hào)發(fā)生器的順利工作,需要合適的軟件來(lái)協(xié)調(diào)系統(tǒng)的各個(gè)硬件組成部分,根據(jù)信號(hào)發(fā)生器系統(tǒng)的工作需要來(lái)工作,從而達(dá)到特定的功能。本章主要設(shè)計(jì)信號(hào)發(fā)生器系統(tǒng)的各個(gè)硬件組成部分的程序流程圖。4.1 信號(hào)發(fā)生器總流程圖系統(tǒng)總程序流程圖如圖4-1所示。系統(tǒng)初始化后,當(dāng)有按鍵按下是就會(huì)產(chǎn)生按鍵中斷,然后按

31、鍵掃描獲得鍵值并根據(jù)鍵值跳轉(zhuǎn)到不同的子程序,產(chǎn)生不同的波形。圖4-1 信號(hào)發(fā)生器的程序總流程圖4.2 初始化程序流程圖初始化程序流程圖如圖4-2所示。進(jìn)入初始化階段,信號(hào)發(fā)生器的各個(gè)部分依次初始化,為后期的程序執(zhí)行做好準(zhǔn)備。圖4-2 初始化程序流程圖4.3 按鍵中斷程序流程圖按鍵中斷程序流程圖如圖4-3所示。當(dāng)有按鍵按下是就會(huì)產(chǎn)生按鍵中斷,然后按鍵掃描獲得鍵值并根據(jù)鍵值跳轉(zhuǎn)到不同的子程序,產(chǎn)生不同的波形。圖4-3 按鍵中斷程序流程圖4.4 波形產(chǎn)生程序流程圖4.4.1 正弦波產(chǎn)生程序流程圖本程序的波形產(chǎn)生原理是將一個(gè)波形周期分割成n等份,每加上一個(gè)偏移量然后對(duì)輸出量求正弦值,并寫到DAC557

32、1中,原理圖如圖4-4所示。圖4-4 正弦波程序流程圖4.4.2 方波產(chǎn)生程序流程圖方波的產(chǎn)生程序是根據(jù)波形的頻率要求計(jì)算出每次幅值躍變的時(shí)間,等到定時(shí)器A的計(jì)時(shí)時(shí)間到時(shí)進(jìn)入中斷進(jìn)行一次躍變,流程圖如圖4-5所示。圖4-5 方波程序流程圖4.4.3 鋸齒波產(chǎn)生程序流程圖鋸齒波的產(chǎn)生程序根據(jù)波形的頻率要求計(jì)算出每次幅值變化的時(shí)間,等到定時(shí)器A的計(jì)時(shí)時(shí)間到時(shí)進(jìn)入中斷進(jìn)行一次增值,如圖4-6所示。圖4-6 鋸齒波程序流程圖4.4.4 三角波產(chǎn)生程序流程圖三角波的產(chǎn)生程序跟鋸齒波的產(chǎn)生程序是同一個(gè)原理,根據(jù)波形的頻率要求計(jì)算出每次幅值變化的時(shí)間,等到定時(shí)器A的計(jì)時(shí)時(shí)間到時(shí)進(jìn)入中斷進(jìn)行一次增值另設(shè)一個(gè)計(jì)

33、數(shù)變量,用于判斷幅值增減的分割點(diǎn),流程圖如圖4-7所示。圖4-7 三角波程序流程圖4.5 小結(jié)本章首先設(shè)計(jì)了信號(hào)發(fā)生器系統(tǒng)程序的總流程圖,并在系統(tǒng)程序的總流程圖的框架下有序地設(shè)計(jì)了初始化程序流程圖、按鍵中斷程序流程圖、正弦波程序流程圖、方波程序流程圖、鋸齒波程序流程圖與三角波程序流程圖,并就各個(gè)部分的主要功能作了進(jìn)一步的介紹和說(shuō)明。結(jié) 論信號(hào)發(fā)生器已經(jīng)成為了很多行業(yè)進(jìn)行研究測(cè)試不可或缺的工具。 本文主要介紹了信號(hào)發(fā)生器的硬件電路結(jié)構(gòu)與其中的原理。所設(shè)計(jì)的信號(hào)發(fā)生器可以產(chǎn)生正弦波、方波、鋸齒波、三角波以與每種波形的幅值與頻率的增減功能。信號(hào)發(fā)生器的產(chǎn)生的波形幅值2V,頻率10HZ,結(jié)合所用的MS

34、P430F149芯片,具有低功耗的特點(diǎn)。波形的產(chǎn)生是通過(guò)MSP430單片機(jī)執(zhí)行某一波形發(fā)生程序,向D/A轉(zhuǎn)換器的輸入端按一定的規(guī)律發(fā)生數(shù)據(jù),從而在D/A轉(zhuǎn)換電路的輸出端得到相應(yīng)的電壓波形。在MSP430學(xué)習(xí)板的鍵盤按鍵,通過(guò)軟件編程來(lái)選擇各種波形,按不同按鍵產(chǎn)生不同波形的信號(hào)。此方案的有點(diǎn)是電路原理比較簡(jiǎn)單,實(shí)現(xiàn)起來(lái)比較容易。隨著信號(hào)發(fā)生器信號(hào)整合相關(guān)技術(shù)的不斷完善,數(shù)字化、智能化、小型化的信號(hào)發(fā)生器必將為各領(lǐng)域的科學(xué)研究帶來(lái)極大的便利,信號(hào)發(fā)生器的發(fā)展前景也必將更加廣闊。程序:#include <msp430x14x.h>#include "IIC.h"#in

35、clude "IIC.c"#include "cry1602.h"#include "cry1602.c"#include "Keypad.h"#include "Keypad.c"#include <math.h>#define pai 3.14uchar DAC_Val; /DAC輸出數(shù)據(jù)uchar fuzhi;char m=0;char data_Sin128=128,134,140,147,153,159,165,171,177,182,188,193,199,204,209

36、,213, 218,222,226,230,234,237,240,243,245,248,250,251,253,254,254,255, 255,255,254,254,253,251,250,248,245,243,240,237,234,230,226,222, 218,213,209,204,199,193,188,182,177,171,165,159,153,147,140,134, 128,122,116,109,103,97,91,85,79,74,68,63,57,52,47,43,38,34,30,26, 22,19,16,13,11,8,6,5,3,2,2,1,1,1,

37、2,2,3,5,6,8,11,13,16,19,22,26,30, 34,38,43,47,52,57,63,74,79,85,91,97,103,109,116,122;uchar pinlv;int vcc; /da上加的電壓uchar boxing; double bianliang;uchar biaozhi;int pianyi;double shuchu;void zengfu(void);void jianfu(void);void zengpin(void);void jianpin(void);void xianshi(void);void chansheng2(void);

38、void chansheng1(void);void chansheng3(void);void chansheng4(void);void chansheng5(void);unsigned int time; /定時(shí)uchar s1 = "zhengxian:"uchar s2 = "fangbo:"uchar s3 = "juchi:"uchar s4 = "sanjiao:"uchar Write_DAC(uchar wdata);/*主函數(shù)*/void main(void) bianliang = 2 *

39、 pai / 12; fuzhi = 0x02; pinlv = 10; WDTCTL = WDTPW + WDTHOLD; /停止看門狗 P6DIR |= BIT2;P6OUT |= BIT2; /關(guān)閉電平轉(zhuǎn)換 P6DIR |= BIT7;P6OUT |= BIT7; /關(guān)閉蜂鳴器 P6DIR |= BIT3;P6OUT |= BIT3; /開(kāi)液晶背光 P2DIR |= 0x03; /設(shè)置DAC的控制IO為輸出狀態(tài) P2OUT = 0x03; P1IE |=0xff; /允許P1.2和P1.3中斷 vcc=3; LcdReset(); biaozhi=1; DAC_Val = 148; ti

40、me=3276; Init_Keypad(); CCTL0=CCIE; CCR0=280; TACTL=TASSEL_1+MC_1; _EINT(); while(1) LPM0; /* 函數(shù)名稱:xianshi功 能:讓液晶顯示程序中液晶顯示的主框架參 數(shù):返回值 :*/void xianshi(void) LcdWriteCommand(0x01, 1); /清除顯示 Disp1Char(0,1,0x46); /顯示F Disp1Char(1,1,0x3d); /顯示= Disp1Char(3,1,0x56); /0x56是字符V的ASCII碼值 Disp1Char(5,1,0x50);

41、/顯示P Disp1Char(6,1,0x3d); /顯示= Disp1Char(9,1,0x48); /0x48是字符H的ASCII碼值 Disp1Char(10,1,0x5a); /0x5a是字符Z的ASCII碼值/*函數(shù)名稱:Port1_ISR功 能:端口P1的中斷服務(wù)函數(shù)參 數(shù):無(wú)返回值 :無(wú)*/#pragma vector=PORT1_VECTOR_interrupt void Port1_ISR(void) _DINT(); Key_Event(); /檢測(cè)按鍵,并獲取鍵值 P1IFG = 0; P1OUT = 0; /清中斷標(biāo)志 switch(key_val) case 1: b

42、oxing=1; xianshi(); DispNChar(0,0,10,s1); /顯示正弦波 Disp1Char(2,1,0x30 + fuzhi); /顯示幅值 數(shù)字的ASCII碼值等于其本身數(shù)值加上0x30 Disp1Char(7,1,0x30 + pinlv / 10); /顯示頻率十位 Disp1Char(8,1,0x30); /顯示頻率各位 break; case 2: boxing=2; xianshi(); DispNChar(0,0,7,s2); /顯示方波 Disp1Char(2,1,0x30 + fuzhi); /顯示幅值 數(shù)字的ASCII碼值等于其本身數(shù)值加上0x30

43、 Disp1Char(7,1,0x30 + pinlv / 10); /顯示頻率十位 Disp1Char(8,1,0x30); /顯示頻率各位 break; case 3: boxing=3; xianshi(); DispNChar(0,0,6,s3); /顯示鋸齒波 Disp1Char(2,1,0x30 + fuzhi); /顯示幅值 數(shù)字的ASCII碼值等于其本身數(shù)值加上0x30 Disp1Char(7,1,0x30 + pinlv / 10); /顯示頻率十位 Disp1Char(8,1,0x30); /顯示頻率各位 break; case 4: boxing=4; xianshi()

44、; DispNChar(0,0,8,s4); /顯示三角波 Disp1Char(2,1,0x30 + fuzhi); /顯示幅值 數(shù)字的ASCII碼值等于其本身數(shù)值加上0x30 Disp1Char(7,1,0x30 + pinlv / 10); /顯示頻率十位 Disp1Char(8,1,0x30); /顯示頻率各位 case 5: zengfu(); break; /增加幅值 case 6: jianfu(); break; /減小幅值 case 7: zengpin(); break; /增大頻率 即選擇20hz case 8: jianpin(); break; /減小頻率 即選擇10h

45、z default: _NOP(); break; P1IFG = 0x00; /清中斷標(biāo)志 key_Flag = 0; _EINT(); /*函數(shù)名稱:Write_DAC功 能:向DAC中寫入輸出電壓數(shù)據(jù)參 數(shù):無(wú)返回值 :寫入結(jié)果:1-成功,0-失敗*/uchar Write_DAC(uchar wdata) start();write1byte(0x98); /DAC的設(shè)備地址if(check() write1byte(wdata >> 4); /寫控制模式和電壓數(shù)據(jù)的高四位else return 0;if(check() write1byte(wdata <<

46、4); /寫電壓數(shù)據(jù)的低四位else return 0;if(check() stop();else return 0;return 1; /*函數(shù)名稱:chansheng1功 能:輸出正弦波參 數(shù):無(wú)返回值 :無(wú)*/void chansheng5(void)if(biaozhi = 12) biaozhi = 0; if(biaozhi < 12) biaozhi += 1; shuchu = 0xff * (fuzhi * sin(biaozhi * bianliang)+1.5) / vcc; Write_DAC(shuchu); /寫入DAC void chansheng1(void) m+; Write_DAC( dat

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論