課程設(shè)計(jì)--基于單片機(jī)的函數(shù)信號(hào)發(fā)生器_第1頁
已閱讀1頁,還剩20頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p>  課題 智能信號(hào)發(fā)生器設(shè)計(jì)</p><p>  專業(yè) 測控技術(shù)與儀器</p><p><b>  目錄</b></p><p>  第一章 緒 論4</p><p>  1.1設(shè)計(jì)背景及意義4</p><p>  第二章

2、整體設(shè)計(jì)6</p><p><b>  2.1設(shè)計(jì)思路6</b></p><p>  2.2系統(tǒng)硬件設(shè)計(jì)7</p><p>  第三章 單片機(jī)AT89S51介紹8</p><p>  3.1 單片機(jī)的選擇8</p><p>  3.2 AT89S51主要性能8</p>

3、<p>  3.3 AT89S51主要特點(diǎn)8</p><p>  第四章 硬件設(shè)計(jì)10</p><p>  4.1信號(hào)發(fā)生部分8</p><p>  4.2頻率計(jì)數(shù)器部分10</p><p>  4.2.1利用AT89S51計(jì)數(shù)10</p><p>  4.3放大電路11</p

4、><p>  4.4 LCD顯示器12</p><p>  4.4.1 數(shù)碼管的選擇12</p><p>  4.4.2數(shù)碼管段驅(qū)動(dòng)芯片74LS57314</p><p>  4.4.3 鍵盤電路設(shè)計(jì)15</p><p>  第五章 程序設(shè)計(jì)17</p><p>  5.1

5、信號(hào)頻率數(shù)據(jù)采集程序17</p><p>  5.1.1程序設(shè)計(jì)的語言15</p><p>  5.2程序設(shè)計(jì)16</p><p>  5.3 正弦波的產(chǎn)生17</p><p>  5.4 方波的產(chǎn)生17</p><p>  5.4.1 方波流程圖17</p><p>  5.4.

6、2 程序設(shè)計(jì)18</p><p>  5.5 三角波的產(chǎn)生18</p><p>  5.5.1 三角波產(chǎn)生的流程圖19</p><p>  5.5.2 三角波程序設(shè)計(jì)19</p><p>  5.6 鍵盤程序設(shè)計(jì)22</p><p>  5.6.1 鍵盤掃描程序22</p><p

7、>  5.6.2 鍵盤處理程序設(shè)計(jì)24</p><p>  5.7 數(shù)碼管程序設(shè)計(jì)25</p><p><b>  設(shè)計(jì)總結(jié)25</b></p><p><b>  參考文獻(xiàn)26</b></p><p><b>  致謝28</b></p><

8、;p>  基于單片機(jī)的函數(shù)信號(hào)發(fā)生器</p><p>  摘 要: 函數(shù)(波形)信號(hào)發(fā)生器能產(chǎn)生某些特定的周期性時(shí)間函數(shù)波形(正弦波、方波、三角波等)信號(hào)。它在軍事方面,如航天飛機(jī)的飛行控制、衛(wèi)星陀螺儀的控制以及導(dǎo)彈發(fā)射架的起降控制等。在民用方面,如在生產(chǎn)制造以及一些廠礦企業(yè),對(duì)電機(jī)的正反轉(zhuǎn)的控制,以及工廠機(jī)器人和機(jī)械手的控制等。所以說函數(shù)信號(hào)發(fā)生在軍事國防和現(xiàn)代化工業(yè)生產(chǎn)上也具有廣泛地應(yīng)用前景。而本系

9、統(tǒng)就能夠產(chǎn)生正弦波、方波、三角波,同時(shí)還可以作為頻率計(jì)測頻率。函數(shù)信號(hào)的產(chǎn)生由MAX038、AT89S51和外圍電路完成,能產(chǎn)生1HZ---20MHZ的波形。當(dāng)我們通過,相應(yīng)的按鍵輸入時(shí),所產(chǎn)生模擬信號(hào),通過單片機(jī)的計(jì)算和相應(yīng)的程序語言環(huán)境下,由數(shù)碼顯示器進(jìn)行顯示。操作方便、維護(hù)簡單、可靠性性高,因此對(duì)環(huán)境的適應(yīng)能力相當(dāng)強(qiáng)。 </p><p>  本文在針對(duì)現(xiàn)有的函數(shù)信號(hào)發(fā)生器基礎(chǔ)上,將單片機(jī)等電子元器件常規(guī)控制

10、,通過合理的選擇和設(shè)計(jì),大大提高控制水平以及控制精度,使函數(shù)信號(hào)發(fā)生器達(dá)到較為理想的運(yùn)行效果。</p><p>  在介紹單片機(jī)基本結(jié)構(gòu)的基礎(chǔ)上,深入分析單片機(jī)的工作原理,闡述單片機(jī)的特點(diǎn)和優(yōu)點(diǎn),重點(diǎn)分析單片機(jī)的硬件設(shè)計(jì)和軟件設(shè)計(jì),研究分析并提出基于單片機(jī)的函數(shù)信號(hào)發(fā)生器設(shè)計(jì)的實(shí)現(xiàn)方案,最后對(duì)本論文進(jìn)行總結(jié)。</p><p><b>  第一章 緒 論</b><

11、;/p><p>  1、1設(shè)計(jì)背景及意義 </p><p>  對(duì)于函數(shù)信號(hào)發(fā)生器來說,一般常用模擬電子器件構(gòu)成電路,在終端接上顯示器。當(dāng)接通電源時(shí),來進(jìn)種波形來模擬??墒怯媚M電子器件來進(jìn)行對(duì)函數(shù)號(hào)的模擬,會(huì)有很多的缺點(diǎn),比如:首先,電路設(shè)計(jì)較為復(fù)雜,需要進(jìn)行大規(guī)模的計(jì)算及實(shí)驗(yàn),無法進(jìn)行預(yù)估,容易出錯(cuò);其次,花費(fèi)較大;最后,電路連接的導(dǎo)線等在通電后容易產(chǎn)生較大的電磁,導(dǎo)致相互影響,從而使得模

12、擬出來的函數(shù)信號(hào),有著相當(dāng)大的誤差,繼而人們需要加裝相應(yīng)的濾波電路等代價(jià)太大。 </p><p>  進(jìn)入二十一世紀(jì)以來,隨著科學(xué)技術(shù)的發(fā)展和計(jì)算機(jī)技術(shù)的發(fā)展單片機(jī)技術(shù)的發(fā)展與成熟。單片機(jī)自動(dòng)完成賦予它的任務(wù)的過程,也就是單片機(jī)執(zhí)行程序的過程,即一條條地執(zhí)行的指令的過程,所謂指令就是把要求單片機(jī)執(zhí)行的各種操作用的命令的形式寫下來,這是在設(shè)計(jì)人員賦予它的指令系統(tǒng)所決定的,一條指令對(duì)應(yīng)著一種基本操作。因此單片機(jī)具有以

13、下幾個(gè)特點(diǎn): 1、單片機(jī)集成度高。單片機(jī)包括CPU、4KB容量的ROM(8031 無)、128 B容量的RAM、 2個(gè)16位定時(shí)/計(jì)數(shù)器、4個(gè)8位并行口、全雙工串口行口;2、系統(tǒng)結(jié)構(gòu)簡單,使用方便,實(shí)現(xiàn)模塊化;3、單片機(jī)可靠性高,可工作到10^6 ~10^7小時(shí)無故障;4、處理功能強(qiáng),速度快。 根據(jù)以上的特點(diǎn),單片機(jī)應(yīng)用于軍事方面和民用方面。例如,在軍事方面上的導(dǎo)彈導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計(jì)算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸?shù)?;在民用方?/p>

14、上的工業(yè)自動(dòng)化過程的實(shí)時(shí)控制和數(shù)據(jù)處理。</p><p>  由于單片機(jī)的具有體積小、功耗低、控制功能強(qiáng)、擴(kuò)展靈活、微型化和使用方便等優(yōu)點(diǎn),廣泛應(yīng)用于儀器儀表中,結(jié)合不同類型的傳感器,可實(shí)現(xiàn)諸如電壓、功率、頻率、濕度、溫度、流量、速度、厚度、角度、長度、硬度、元素、壓力等物理量的測量。采用單片機(jī)控制使得儀器儀表數(shù)字化、智能化、微型化,且功能比起采用電子或數(shù)字電路更加強(qiáng)大。例如精密的測量設(shè)備(功率計(jì),示波器,各種分

15、析儀);現(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ī)、小型程控交換機(jī)、樓宇自動(dòng)通信呼叫系統(tǒng)、列車無線通信、再到日常工作中隨處可見的移動(dòng)電話,集群移動(dòng)通信,無線電對(duì)講機(jī)等;在某些專用單片機(jī)設(shè)計(jì)用于實(shí)現(xiàn)特定功能,從而在各種電路中進(jìn)行模塊化應(yīng)用,而不要求使用人員了解其內(nèi)部結(jié)構(gòu)。如音樂集成單片機(jī),看似簡單的功能,微

16、縮在純電子芯片中(有別于磁帶機(jī)的原理),就需要復(fù)雜的類似于計(jì)算機(jī)的原理。如:音樂信號(hào)以數(shù)字的形式存于存儲(chǔ)器中(類似于ROM),由微控制器讀出,轉(zhuǎn)化為模擬音樂電信號(hào)(類似于聲卡)。 在大型電路中,這種模塊化應(yīng)</p><p>  針對(duì)老舊的函數(shù)信號(hào)發(fā)生器的故障多,設(shè)計(jì)復(fù)雜,線路繁雜,功耗大,性價(jià)比低的缺點(diǎn)。從而提出采用功能多,可靠性強(qiáng),線路設(shè)計(jì)簡單,性價(jià)比高的基于單片機(jī)的函數(shù)信號(hào)發(fā)生器。</p>&l

17、t;p><b>  第二章 整體設(shè)計(jì)</b></p><p><b>  2.1設(shè)計(jì)思路</b></p><p>  本函數(shù)信號(hào)發(fā)生器是由MAX038芯片產(chǎn)生我們希望輸出的正弦波、三角波。它是本制作的核心,當(dāng)然隨帶的頻率計(jì)用于顯示輸出頻率,它是由單片機(jī)AT89S51控制的,由于用單片機(jī)所能測的頻率范圍有限,直接所計(jì)數(shù)的頻率最大只能達(dá)到50

18、0KHZ,為了能夠測得更高的頻率,所以加上分頻器進(jìn)行分頻后再加到AT89S51的外部中斷入口。考慮到小信號(hào)時(shí),所以必須加放大,然后整形才能達(dá)到分頻器的輸入要求。至于顯示部分就用芯片74S573驅(qū)動(dòng)數(shù)碼管顯示。</p><p><b>  2.2系統(tǒng)硬件設(shè)計(jì)</b></p><p>  具體的系統(tǒng)(硬件設(shè)計(jì))的框圖,如下圖所示:</p><p>

19、  數(shù)字信號(hào)可以通過數(shù)模轉(zhuǎn)換電路來轉(zhuǎn)換成模擬信號(hào),因此可以通過產(chǎn)生數(shù)字信號(hào)在轉(zhuǎn)換成模擬信號(hào)的方法來獲得所需要的波形。AT89S51單片機(jī)本身就是一個(gè)微型計(jì)算機(jī)。AT89S51單片機(jī)是整個(gè)函數(shù)信號(hào)發(fā)生器的核心部分,所以通過程序編寫和執(zhí)行,產(chǎn)生各種各樣的信號(hào),并從鍵盤接收數(shù)據(jù),進(jìn)行各種功能的轉(zhuǎn)換和信號(hào)頻率的調(diào)節(jié),當(dāng)數(shù)字信號(hào)進(jìn)過接口電路到達(dá)轉(zhuǎn)換電路,將其轉(zhuǎn)換模擬信號(hào)也就是所需要的輸出波形。</p><p>  第三章

20、 單片機(jī)AT89S51介紹</p><p>  3.1 單片機(jī)的選擇</p><p>  在選擇單片機(jī)的時(shí),應(yīng)注意幾點(diǎn),第一、選擇功能較為齊全的單片機(jī);第二、選擇價(jià)格低廉的,但性能優(yōu)越的單片機(jī);第三、選擇可靠性高的,運(yùn)算速度快的單片機(jī);第四、選擇符合我們所掌握知識(shí)的單片機(jī)。</p><p>  通過查閱資料,我選擇了性能較為豐富的51系列單片機(jī)AT89S5(見圖)

21、。</p><p><b>  圖3</b></p><p>  3.2 AT89S51主要性能</p><p>  AT89S51有PDIP、PLCC、TQFP三種封裝方式,其中最常見的就是采用40pin封裝的雙列直接PDIP封裝。芯片共有40個(gè)引腳,引腳的排列順序?yàn)閺目啃酒娜笨冢ㄒ妶D)左邊那列引腳逆時(shí)針數(shù)起,依次為1、2、3、4等直到4

22、0,其中芯片的1腳頂上有個(gè)凹點(diǎn)(見圖)。在單片機(jī)的40個(gè)引腳中。電源引腳2根,外接晶體振蕩器引腳2根,控制引腳4根以及4組8位可編程I/O引腳32根。</p><p>  3.3 AT89S51主要特點(diǎn)</p><p>  與MCS-51產(chǎn)品指令系統(tǒng)完全兼容;4K字節(jié)在系統(tǒng)編程(ISP)Flash閃速存儲(chǔ)器;1000次擦寫周期;4.0-5.5V的工作電壓范圍;全靜態(tài)工作模式:0HZ-3

23、3MHZ;三級(jí)程序加密鎖;128*8字節(jié)內(nèi)部RAM;32個(gè)可編程I/O口線;2個(gè)16位定時(shí)/計(jì)數(shù)器;6個(gè)中斷源;全雙工串行UART通道;低功耗空閑模式喚醒系統(tǒng);看門狗(WDT)及雙數(shù)據(jù)指針;掉電標(biāo)識(shí)和快速編程特性;靈活的在系統(tǒng)編程(ISP字節(jié)或頁面模式);標(biāo)準(zhǔn)的51單片機(jī)有32根可編程I/O口線;外接晶振引腳(2根):1.XTAL1(pin19):片內(nèi)振蕩電路的輸入端、2.XTAL2(pin20):片內(nèi)振蕩電路的輸出端;控制引腳(1根)

24、RST/VPP(pin9),(1)復(fù)位引腳,引腳上出現(xiàn)2個(gè)機(jī)器周期的高電平將使單片機(jī)復(fù)位;可編程輸入/輸出引腳(15根);主電源引腳(2根),(1)VCC(pin40)電源輸入接+5V的電源、(2)GND(pin20)接地線。</p><p>  第四章 硬件設(shè)計(jì)</p><p><b>  4.1信號(hào)發(fā)生部分</b></p><p> 

25、 在接通電源控制在輸出狀態(tài),此時(shí)波形所產(chǎn)生的電路工作,它產(chǎn)生我所選擇的波形并輸出到外部電路,另一部分則送入計(jì)數(shù)器。波形發(fā)生器的這部分電路是由MAX038及其外圍電路完成的。經(jīng)查資料MAX038是一個(gè)精密高頻波形產(chǎn)生器。它能夠產(chǎn)生頻率高達(dá)20MHZ的正弦波、三角波、方波等脈沖信號(hào),其壓振蕩器的頻率分粗調(diào)和細(xì)調(diào)兩層控制。另外MAX038還包括占空比調(diào)整電路、波形同步電路、相位檢測電路、波形切換開關(guān)和電壓基準(zhǔn)源等電路,所需外部元件少,使用很方

26、便,如下圖所示:</p><p><b>  圖4</b></p><p><b>  圖5 </b></p><p>  本系統(tǒng)采用MAX038設(shè)計(jì)了輸出三角波、方波和正弦波的函數(shù)信號(hào)發(fā)生器,能夠滿足大多數(shù)實(shí)驗(yàn)與檢測的需求(見上圖)。整機(jī)電路由信號(hào)產(chǎn)生級(jí)、電壓放大級(jí)、功率輸出級(jí)和電源四部分組成。信號(hào)產(chǎn)生級(jí)的核心部件MA

27、X038,它的輸出有三種,有波形設(shè)定端AO和A1控制,其中1為高電平,0為低電平。MAX038的輸出頻率f0由Iin,F(xiàn)ADJ端電壓和住振蕩器COSC的外接電容器cf三者共同確定。當(dāng)UFDA=0V時(shí),輸出頻率f0=Iin/rin=2.5/rin.當(dāng)UFAD不等于0V時(shí),輸出頻率f0=f(1-0.2915UFADJ).由波段開關(guān)SA2選擇不同的CF值,將整個(gè)輸出信號(hào)分為五個(gè)頻段。即:</p><p>  1HZ--

28、-10HZ</p><p>  10HZ—100HZ</p><p>  100HZ—1KHZ</p><p>  1KHZ—20MHZ</p><p>  每段頻率的調(diào)節(jié)由電位器RP1和RP2完成。其中RP1為粗調(diào)電位器,改變RP1使振蕩器電容器CF的充電電流Iin改變。從而使頻率改變。RP2為細(xì)調(diào)節(jié)電位器,通過改變UFADJ的數(shù)值,輸出頻

29、率變化,它的變化范圍較小,起著微調(diào)的作用。為了簡化電路,則可使得各種波形的占空比固定比為百分之五十。這已能滿足多數(shù)場合的使用要求。</p><p>  4.2頻率計(jì)數(shù)器部分</p><p>  4.2.1利用AT89S51計(jì)數(shù)</p><p>  AT89S51單片機(jī)共有兩個(gè)16位的定時(shí)器/計(jì)數(shù)器,本頻率計(jì)就是利用它的定時(shí)器與計(jì)數(shù)器同時(shí)工作,外部輸入的脈沖在下降沿跳

30、變時(shí)有效,進(jìn)行計(jì)數(shù)器加1,定時(shí)器定時(shí)一秒內(nèi)計(jì)數(shù)器所計(jì)的數(shù)就是外部輸入信號(hào)的頻率,見下圖所示。</p><p>  由于單片機(jī)計(jì)算的頻率的范圍有限,必須切換調(diào)整在它的范圍內(nèi),才能準(zhǔn)確的計(jì)算頻率??刂剖欠窠?jīng)過100分頻的電路,切換通過單片機(jī)控制完成。<對(duì)于分頻電路,在高頻的時(shí)候,單片機(jī)不能直接讀取,所以要通過分頻電路進(jìn)行分頻再送到單片機(jī)進(jìn)行計(jì)數(shù)。本分頻電路采用的是74LS390雙十進(jìn)制計(jì)數(shù)器進(jìn)行分頻的。<

31、/p><p><b>  4.3放大電路</b></p><p>  由于單片機(jī)計(jì)算的頻率的范圍有限,必須切換調(diào)整在它的范圍內(nèi),才能準(zhǔn)確的計(jì)算頻率??刂剖欠窠?jīng)過100分頻的電路,切換通過單片機(jī)控制完成。對(duì)于分頻電路,在高頻的時(shí)候,單片機(jī)不能直接讀取,所以要通過分頻電路進(jìn)行分頻再送到單片機(jī)進(jìn)行計(jì)數(shù)。本分頻電路采用的是74LS390雙十進(jìn)制計(jì)數(shù)器進(jìn)行分頻的。見下圖所示<

32、/p><p>  為了輸入的是小信號(hào)時(shí)也能對(duì)精確的測出它的頻率,所以在信號(hào)的輸入口加電壓放大。有的輸入的信號(hào)波形不是很好,放大后也是失真的信號(hào),這就影響到所測信號(hào)的頻率,因此要經(jīng)過整形。</p><p><b>  4.4 顯示器</b></p><p>  4.4.1 數(shù)碼管的選擇</p><p>  本系統(tǒng)采用4位共

33、陽極數(shù)碼管進(jìn)行顯示。而每位數(shù)碼顯示用4個(gè)發(fā)光二極管的陽極連接在一起(見下圖所示)。通常,公共陽極接高電平(一般接電源),其他管腳接段驅(qū)動(dòng)電路輸出端。當(dāng)某段驅(qū)動(dòng)電路的電路的輸出端為低電平時(shí),則該端所連接的字段導(dǎo)通并點(diǎn)亮,根據(jù)發(fā)光字段的不同組合可顯示出各種數(shù)字或字符。此時(shí),要求段驅(qū)動(dòng)電路能吸收額定的段導(dǎo)通電流,還需根據(jù)外接電源及額定段導(dǎo)通電流來確定相應(yīng)的限流電阻。</p><p><b>  圖9</

34、b></p><p>  4.4.2數(shù)碼管段驅(qū)動(dòng)芯片74LS573</p><p>  74LS73芯片是一種常用的數(shù)碼管譯碼器驅(qū)動(dòng)器,常用在各種數(shù)字電路和單片機(jī)系統(tǒng)的顯示系統(tǒng)中,具有門電路邏輯符號(hào)大全(三態(tài)門,同或門,異或門,或非門,與或非門, 傳輸門,全加器,半加器等) 常用集成門電路的邏輯符號(hào)對(duì)照表三態(tài)門,或門,異或門,或非門,與或非門, 傳輸門,全加器,半加器,基本rs觸

35、發(fā)器,同步rs觸發(fā)器,jk觸發(fā)器,d觸發(fā)器. </p><p><b>  圖10</b></p><p>  4.4.3 鍵盤電路設(shè)計(jì)</p><p>  在本設(shè)計(jì)已經(jīng)介紹了鍵盤的電路設(shè)計(jì),在這里我將著重介紹矩陣式鍵盤電路。</p><p><b>  矩陣式鍵盤電路</b></p>

36、;<p>  矩陣式鍵盤電路是由行線和列線組成,按鍵位與行、列交叉點(diǎn)上,行、列線分別連接到按鍵開關(guān)的兩端。行線通過上拉電阻連接到+5V上。平時(shí)無按鍵按下時(shí),行線處于高電平狀態(tài),而當(dāng)有按鍵按下時(shí)行線的電平狀態(tài)將由與此行線相連的列線電平?jīng)Q定。若列線的電平為低,則行線電平為低;若列線的水平為高,則行線的水平為高。</p><p><b>  矩陣式鍵盤的編碼</b></p>

37、;<p>  對(duì)于矩陣式鍵盤,按鍵的位置有行號(hào)和列號(hào)唯一確定,所以分別對(duì)行、列號(hào)進(jìn)行二進(jìn)制編碼,然后將兩值合成一個(gè)字節(jié),高四位是行號(hào),低四位是列號(hào)。所以無論以何種方式編碼,最基本的是鍵所在的物理位置即行號(hào)和列號(hào),它是各種編碼的之間相互轉(zhuǎn)換的基礎(chǔ),編碼相互轉(zhuǎn)換可以通過查表的方式來實(shí)現(xiàn)。見下圖所示</p><p><b>  圖11 </b></p><p>

38、;  第五章 程序設(shè)計(jì)</p><p>  5.1信號(hào)頻率數(shù)據(jù)采集程序</p><p>  本設(shè)計(jì)將各種波形的數(shù)據(jù)儲(chǔ)存在單片機(jī)的程序儲(chǔ)存器里,通過改變數(shù)據(jù)的輸出速度來改變信號(hào)的頻率,然后通過改變D/A轉(zhuǎn)換器的參考點(diǎn)要求來改變信號(hào)的頻率。所以程序編輯,是本設(shè)計(jì)的靈魂。</p><p><b>  程序設(shè)計(jì)</b></p>&

39、lt;p>  主程序設(shè)計(jì)是整個(gè)程序設(shè)計(jì)的核心。而主程序流程圖起了一個(gè)提綱的作用。本系統(tǒng)的流程圖。見下圖所示。</p><p><b>  圖12</b></p><p>  5.3 正弦波的產(chǎn)生</p><p>  Void sin wave(uchar t)</p><p><b>  { <

40、/b></p><p>  Uchar i;//定義1個(gè)無字符型變量</p><p>  For(i=0;i<255;i++)</p><p><b>  { </b></p><p>  MAX0380=sin [i];//給MAX038賦予命令</p><p><b>

41、;  Delay(t);</b></p><p><b>  }</b></p><p><b>  5.4 方波的產(chǎn)生</b></p><p>  方波產(chǎn)生的原理,是設(shè)個(gè)自變量i=0使之延遲一段時(shí)間,再使i=255時(shí)在延時(shí)與i=0相同的時(shí)間,重復(fù)上述過程便會(huì)得到方波波形。</p><p&g

42、t;  5.4.1 方波流程圖</p><p><b>  圖13</b></p><p>  5.4.2 程序設(shè)計(jì)</p><p>  Void rec wave(uchar t)</p><p><b>  { </b></p><p>  Uchar i;//定義

43、1個(gè)無字符型變量</p><p>  MAX0380=0xff;//給MAX038賦予命令</p><p>  For(i=0;i<255;i++)</p><p><b>  Delay(t);</b></p><p>  MAX0380=0x00;</p><p>  For(i=0;i

44、<255;i++)</p><p><b>  }</b></p><p>  5.5 三角波的產(chǎn)生</p><p>  三角波中的斜線用一個(gè)個(gè)小臺(tái)階來逼近,在一個(gè)周期內(nèi)從最小值開始逐步遞增,當(dāng)達(dá)到最大值后回到最小值,如此循環(huán),當(dāng)臺(tái)階間隔很小時(shí),波形基本上近似為一條直線。適當(dāng)?shù)倪x擇循環(huán)時(shí)間,可以得到不同周期的鋸齒波。鋸齒波發(fā)生原理與方波相

45、似,只是高低兩個(gè)延時(shí)的常數(shù)不同,所以延時(shí)法,來產(chǎn)生三角波,設(shè)個(gè)自變量i=0使之不斷的自動(dòng)加1,直到加到255,MAX030可以又自動(dòng)歸0。然后再不斷地重復(fù)上述過程而產(chǎn)生三角波</p><p>  5.5.1 三角波產(chǎn)生的流程圖</p><p><b>  圖14</b></p><p>  5.5.2 三角波程序設(shè)計(jì)</p>

46、<p>  Void zigwave(uchar t)</p><p><b>  { </b></p><p>  Uchar i;//定義1個(gè)無字符型變量</p><p>  For(i=0;i<255;i++)</p><p><b>  {</b></p>

47、<p>  MAX0380=0x00;</p><p>  Delay(t); </p><p><b>  }</b></p><p>  MAX0380=255;</p><p>  Delay(t); </p><p>  5.6 鍵盤程序設(shè)計(jì)</p><p&

48、gt;  5.6.1 鍵盤掃描程序</p><p>  Void keyscan()</p><p><b>  {</b></p><p>  Ucharcol,i;</p><p>  P2=0xff;//行線輸出全低</p><p>  Col=p2&0xf0;</p>

49、<p>  If(col==0xf0) return;//無鍵,返回</p><p>  Delay(20);//延時(shí)消抖</p><p>  P2=0xf0;//重新檢測是否有按下的案件</p><p>  Col=p2&0xf0;</p><p>  If(col==0xf0)return;// 無鍵,返回</

50、p><p>  Switch(col)//判斷按鍵所在的列</p><p>  { case 0xe0:keyval=0;break;</p><p>  Case 0xd0:keyval=1;break;</p><p>  Case 0xb0:keyval=2;break;</p><p><b&g

51、t;  }</b></p><p>  For(i=0;i<4;i++)</p><p><b>  }</b></p><p>  P2=scan[i];//輸出鍵盤掃描碼</p><p>  Col=p2&0xf0;</p><p>  If(col!=0xf0)br

52、eak;//按下按鍵</p><p><b>  }</b></p><p>  Keyval+=i*4;//計(jì)算鍵值</p><p><b>  }</b></p><p>  5.6.2鍵盤處理程序設(shè)計(jì)</p><p>  Void keydisp()</p>

53、<p><b>  {</b></p><p><b>  Uchar x;</b></p><p>  If(keyval==10)//選擇鍵處理</p><p><b>  {</b></p><p>  Keyselcount ++;</p>

54、<p>  Switch(keyselcount)//選擇信號(hào)波形</p><p><b>  {</b></p><p><b>  Case 1:</b></p><p>  Recwave(freq);//調(diào)用方波函數(shù)</p><p><b>  Break;</b&

55、gt;</p><p><b>  Case 2:</b></p><p>  Triwave(freq);//調(diào)用三角波產(chǎn)生函數(shù)</p><p><b>  Break;</b></p><p><b>  Case3:</b></p><p>  S

56、inwave(freq);//調(diào)用正弦波產(chǎn)生函數(shù)</p><p><b>  Break;</b></p><p><b>  }</b></p><p>  If(keyselcount==3)keyselcount=1;</p><p><b>  }</b></p&

57、gt;<p>  If(keyval<10)//數(shù)字處理</p><p><b>  {</b></p><p>  Keyselcount++;</p><p>  Disp[Keyselcount-1]= keyval;</p><p>  X=x*10+x;//計(jì)算信號(hào)頻率</p>

58、<p>  If(Keyselcount==3)</p><p><b>  { </b></p><p>  Keyselcount=1;</p><p><b>  Freq=x;</b></p><p><b>  X=0 ;</b></p>

59、;<p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  5.7 數(shù)碼管程序設(shè)計(jì)</p><p>  Void main()</p><p><b>  

60、{</b></p><p><b>  Freq=2;</b></p><p><b>  While(1)</b></p><p><b>  {</b></p><p>  Display();//調(diào)用數(shù)碼管顯示函數(shù)</p><p>  

61、Keyscan();//調(diào)用鍵盤掃描函數(shù)</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  設(shè)計(jì)總結(jié)</b></p><p>  經(jīng)過近兩個(gè)星期的學(xué)習(xí)和研究,通過在圖書館、網(wǎng)絡(luò)中查閱有關(guān)資料,了解了單片機(jī)的起源和發(fā)展,并

62、且加深了對(duì)單片機(jī)的運(yùn)行過程、控制系統(tǒng)的認(rèn)識(shí),熟悉了程序在單片機(jī)控制系統(tǒng)中的運(yùn)用,在所學(xué)知識(shí)的基礎(chǔ)上,利用已有的單片機(jī)控制系統(tǒng)設(shè)計(jì)及借鑒了前人的研究成果,對(duì)單片機(jī)控制系統(tǒng)作了深入的分析和研究。通過此次畢業(yè)設(shè)計(jì),加強(qiáng)了我對(duì)原有知識(shí)理論有了更為系統(tǒng)化、理論化、實(shí)用化的理解。</p><p>  本設(shè)計(jì)利用單片機(jī)控制技術(shù),針對(duì)模擬電子控制進(jìn)行改造,充分利用現(xiàn)代換流技術(shù)數(shù)字化電子控制技術(shù),達(dá)到對(duì)函數(shù)信號(hào)發(fā)生器的控制。并節(jié)約

63、了電能。采用單片機(jī)改造后的函數(shù)信號(hào)發(fā)生器,結(jié)構(gòu)緊湊,功耗低,運(yùn)行效率高,維修簡單,故障率低,具有明顯的節(jié)能特性,也具有一定得經(jīng)濟(jì)效益和社會(huì)效益。</p><p>  改造過程中值得注意的問題:對(duì)單片機(jī)的選擇。一般來說,其功能越多越好。但是對(duì)于一個(gè)簡單的函數(shù)信號(hào)發(fā)生器,選擇適當(dāng)?shù)膯纹瑱C(jī),可以簡化我們的設(shè)計(jì)復(fù)雜程度;程序設(shè)計(jì)。程序是單片機(jī)的靈魂,否則一切都將失去意義。</p><p><

64、b>  參考文獻(xiàn)</b></p><p>  [1]康華光.電子技術(shù)基礎(chǔ)(第四版)[M].北京:高等教育出版社.1998</p><p>  [2]張有德等.單片微型機(jī)原理、應(yīng)用預(yù)實(shí)驗(yàn)[M].上海:復(fù)旦大學(xué)出版社.1993</p><p>  [3]陳澤宗等.單片精密函數(shù)發(fā)生器應(yīng)用[J].電子技術(shù)報(bào),1997</p><p>

65、;  [4]常新等.高頻信號(hào)發(fā)生器原理,維修與鑒定[M].北京:電子工業(yè)出版社,1996</p><p>  [5]謝嘉奎,宣月清.電子線路[非線性部分][M].北京:高等教育出版社,1998</p><p>  [6]張素文.高頻電子線路[M].電子技術(shù)報(bào),1998</p><p>  [7]謝月珍等.信號(hào)產(chǎn)生電路[M].北京:電子工業(yè)出版社,1999</p

66、><p>  [8]黃曉東.現(xiàn)代測控技術(shù)及設(shè)計(jì)概要[M].北京:高等教育出版社,2004</p><p>  [9]肖瑞珠等.基于虛擬檢測技術(shù)原理[J].北京:清華大學(xué)出版社,2006</p><p>  [10]程文峰等.基于虛擬檢測技術(shù)原理[J] .北京:清華大學(xué)出版社,2007</p><p>  [11] 江太輝等.高頻波形發(fā)生器的特性[

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(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)論