基于單片機(jī)的波形發(fā)生器的課程設(shè)計(jì)報(bào)告_第1頁(yè)
基于單片機(jī)的波形發(fā)生器的課程設(shè)計(jì)報(bào)告_第2頁(yè)
基于單片機(jī)的波形發(fā)生器的課程設(shè)計(jì)報(bào)告_第3頁(yè)
基于單片機(jī)的波形發(fā)生器的課程設(shè)計(jì)報(bào)告_第4頁(yè)
基于單片機(jī)的波形發(fā)生器的課程設(shè)計(jì)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩19頁(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、精選文檔重慶科技學(xué)院學(xué)生實(shí)習(xí)(實(shí)訓(xùn))總結(jié)報(bào)告學(xué)院: 電氣與信息工程學(xué)院 專業(yè)班級(jí): 測(cè)控 學(xué)生姓名: 學(xué) 號(hào): 設(shè)計(jì)地點(diǎn)(單位) I506 設(shè)計(jì)題目: 基于單片機(jī)的波形發(fā)生器的設(shè)計(jì) 完成日期: 2014 年 03月 17日 指導(dǎo)教師評(píng)語(yǔ): _ _ 成績(jī)(五級(jí)記分制):_ 指 導(dǎo) 教 師(簽字) :_目錄一、 實(shí)習(xí)的任務(wù)要求與意義11.1 設(shè)計(jì)要求11.2 設(shè)計(jì)任務(wù)11.3 基本功能與性能指標(biāo)11.4 實(shí)習(xí)的意義1二、設(shè)計(jì)方案22.1硬件選擇22.2 系統(tǒng)總體設(shè)計(jì)3三、系統(tǒng)硬件設(shè)計(jì)43.1 單片機(jī)的最小系統(tǒng)43.2 按鍵電路設(shè)計(jì)53.3 LCD顯示的設(shè)計(jì)5四、系統(tǒng)軟件設(shè)計(jì)74.1 主程序設(shè)計(jì)74

2、.2 LCD顯示子程序設(shè)計(jì)84.3 D/A轉(zhuǎn)換子程序設(shè)計(jì)8五、調(diào)試及性能分析95.1 調(diào)試步驟105.2 性能分析12參考文獻(xiàn)13附錄 1 系統(tǒng)硬件電路圖14附錄 2 程序代碼15一、 實(shí)習(xí)的任務(wù)要求與意義1.1 設(shè)計(jì)要求1掌握電子系統(tǒng)的一般設(shè)計(jì)方法2. 掌握仿真軟件的應(yīng)用3.培養(yǎng)綜合應(yīng)用所學(xué)知識(shí)來(lái)指導(dǎo)實(shí)踐的能力4.根據(jù)技術(shù)指標(biāo)要求及實(shí)驗(yàn)室條件自選方案設(shè)計(jì)出原理電路圖,分析工作原理并計(jì)算元件參數(shù)。1.2 設(shè)計(jì)任務(wù)按要求設(shè)計(jì)波形發(fā)生器并完成相關(guān)功能:(1)運(yùn)用單片機(jī)控制產(chǎn)生多種波形,這些波形包括三角波、方波、鋸齒波等。(2)信號(hào)的發(fā)生器所產(chǎn)生波形的頻率、幅值均為連續(xù)可調(diào)。擴(kuò)展功能在上位機(jī)將波形實(shí)

3、時(shí)顯示出來(lái),用紅外線遙控器實(shí)現(xiàn)上述功能,其它功能。1.3 基本功能與性能指標(biāo)基本功能 : (1)可以產(chǎn)生正弦波、方波、三角波,頻率和幅值可調(diào)。 (2)按KEY1鍵選擇輸出波形。 (3)按KEY2,KEY5鍵調(diào)節(jié)輸出信號(hào)頻率和電壓幅值的增進(jìn)和減少。 (4)按KEY6鍵是轉(zhuǎn)換調(diào)節(jié)頻率或電壓幅值。 性能指標(biāo):(1)幅值05V可調(diào) (2)頻率0100Hz可調(diào) 1.4 實(shí)習(xí)的意義本次實(shí)訓(xùn)的目的是讓我們更加熟練的掌握單片機(jī)的原理與應(yīng)用,通過(guò)學(xué)習(xí)的單片機(jī)基礎(chǔ)知識(shí)來(lái)更加熟悉的操作將軟件和硬件相結(jié)合,通過(guò)控制單片機(jī)控制的程序代碼與能實(shí)現(xiàn)系統(tǒng)控制功能的電子元件來(lái)實(shí)現(xiàn)所需要的數(shù)據(jù)。通過(guò)對(duì)軟件和硬件的了解與應(yīng)用再結(jié)合

4、基礎(chǔ)知識(shí)對(duì)單片機(jī)更深層次的了解,達(dá)到以后能更加熟練的通過(guò)單片機(jī)去完成更復(fù)雜的任務(wù)。二、設(shè)計(jì)方案 采用AT89C51單片機(jī)和數(shù)模轉(zhuǎn)換器PCF8591實(shí)現(xiàn)波形的產(chǎn)生。波形的產(chǎn)生方法是用AT89C51單片機(jī)執(zhí)行波形程序,向PCF8591轉(zhuǎn)換器的輸入端輸入相應(yīng)的數(shù)據(jù),從而在DA轉(zhuǎn)換電路輸出端再通過(guò)運(yùn)放電路轉(zhuǎn)換得到相應(yīng)的電壓波形。在AT89C51的P1口接按鍵控制波形的各類和波形的頻率,每種波形對(duì)應(yīng)一種按鍵方式。此方案原理簡(jiǎn)單,同時(shí)適合操作,實(shí)現(xiàn)起來(lái)也相對(duì)較容易。產(chǎn)生的三種波形的頻率可由按鍵控制,并通過(guò)按鍵改變來(lái)轉(zhuǎn)換不同的波形,也能夠在示波器上顯示出所要求的波形。波形的頻率步進(jìn)也可以實(shí)現(xiàn)調(diào)節(jié),具有線路簡(jiǎn)

5、單、可行性高、符合設(shè)計(jì)要求等優(yōu)點(diǎn)。加上LCD數(shù)碼顯示管,從而能夠在LCD上顯示出頻率值、幅度值信息。輸出的波形也較穩(wěn)定,精度較高,通過(guò)濾波電路使得系統(tǒng)的抗干擾性增強(qiáng),電路簡(jiǎn)單,性價(jià)比高。圖2.1系統(tǒng)組成結(jié)構(gòu)框圖2.1硬件選擇 (1)單片機(jī):STC89C52是高速/低功耗/超強(qiáng)抗干擾的新一代8051 單片機(jī),指令代碼完全兼容傳統(tǒng)8051,但速度快8-12倍。內(nèi)部集成MAX810 專用復(fù)位電路,2路PWM,8路高速10位A/D轉(zhuǎn) 換(250K/S),針對(duì)電機(jī)控制,強(qiáng)干擾場(chǎng)合。 (2)PCF8591:PCF8591是一個(gè)單片集成、單獨(dú)供電、低功耗、8-bit CMOS數(shù)據(jù)獲取器件。PCF8591具有

6、4個(gè)模擬輸入、1個(gè)模擬輸出和1個(gè)串行I2C總線接口。PCF8591的3個(gè)地址引腳A0, A1和A2可用于硬件地址編程,允許在同個(gè)I2C總線上接入8個(gè)PCF8591器件,而無(wú)需額外的硬件。在PCF8591器件上輸入輸出的地址、控制和數(shù)據(jù)信號(hào)都是通過(guò)雙線雙向I2C總線以串行的方式進(jìn)行傳輸。2.2 系統(tǒng)總體設(shè)計(jì) 本系統(tǒng)是用單片機(jī)來(lái)控制波形的轉(zhuǎn)換以及幅值和頻率的改變的,所以該系 統(tǒng)可以分為4個(gè)電路模塊 ,下面是總體設(shè)計(jì)框圖。 STC89C52PCF8591按鍵控制示波器顯示L C D圖2.2 系統(tǒng)總體設(shè)計(jì)框圖三、系統(tǒng)硬件設(shè)計(jì) 3.1 單片機(jī)的最小系統(tǒng) 由于單片機(jī)最小系統(tǒng)只需要外圍有時(shí)鐘電路和復(fù)位電路即

7、可,則單片機(jī)最小系統(tǒng)有著兩個(gè)外圍電路即可正常工作,下面是單片機(jī)的最小系統(tǒng)原理圖。 圖3.1 STC89C52單片機(jī)最小系統(tǒng) 3.2 按鍵電路設(shè)計(jì)本實(shí)現(xiàn)采用4個(gè)按鍵來(lái)進(jìn)行波形的轉(zhuǎn)換、幅值和頻率的改變、幅值和頻率的選擇,P32鍵用來(lái)改變波P33、P16用來(lái)改變幅值或頻率的大小,P17用來(lái)選擇頻率和幅值,下面是按鍵電路圖。圖3.2按鍵電路圖 3.3 LCD顯示的設(shè)計(jì) 本硬件采用的是12864的液晶顯示屏,顯示屏將波形的轉(zhuǎn)化顯示在顯示屏上,下面是 液晶顯示的電路。 圖3.312864液晶顯示電路 四、系統(tǒng)軟件設(shè)計(jì) 4.1 主程序設(shè)計(jì) 主程序內(nèi)進(jìn)行的是波形的切換及幅值、頻率的改變,用示波器和LCD顯示,

8、將主要的寫(xiě)進(jìn)即可,其他的就寫(xiě)在外面,下面是主程序流程圖。 開(kāi)始 DA 轉(zhuǎn)換器 初始化LCD初始化Chang+Chang=1輸出方波Chang=2輸出三角波Chang=0輸出正弦波 圖4.1 主程序流程圖4.2 LCD顯示子程序設(shè)計(jì)液晶顯示的程序在本程序中比較的簡(jiǎn)單,就是為了實(shí)時(shí)的顯示出當(dāng)前的波形是什么,用按鍵切換之后液晶顯示也跟著變。液晶顯示程序需首先初始化,再進(jìn)行數(shù)據(jù)的傳輸,并進(jìn)行字符的顯示,所以寫(xiě)出相應(yīng)的幾個(gè)程序即可進(jìn)行LCD的顯示。 開(kāi)始初始化12864LCD寫(xiě)控制指令寫(xiě)顯示數(shù)據(jù)串行傳輸數(shù)據(jù)寫(xiě)漢字到LCD屏 指定位置結(jié)束圖4.2 LCD顯示流程圖4.3 D/A轉(zhuǎn)換子程序設(shè)計(jì)本程序采用PC

9、D8592來(lái)作D/A轉(zhuǎn)換器,需要將A1、A1、A2接地,單片機(jī)上的P37和P36接PCF8591上的SCL和SDA端口,AOUT接示波器,供顯示D/A轉(zhuǎn)換要滿足I2C協(xié)議才能進(jìn)行數(shù)據(jù)的傳輸。 void write_add(uchar date) start(); write_byte(0x90); respons(); write_byte(0x40); respons(); write_byte(date); respons(); stop(); 圖4.3 PCF8591電路圖五、調(diào)試及性能分析 5.1 調(diào)試步驟硬件調(diào)試:檢查線路連接有無(wú)錯(cuò)誤,SDA和SCL接單片機(jī)的P36和P37口,VCC

10、接電源,CND接地,AOUT接示波器,在下載數(shù)據(jù)到單片機(jī)之后數(shù)據(jù)在傳輸?shù)臅r(shí)候PCF8591上的一個(gè)藍(lán)色的燈會(huì)不停的閃,說(shuō)明有數(shù)據(jù)在傳輸,否則無(wú)數(shù)據(jù)傳輸。 軟件調(diào)試:首先看I2C協(xié)議是否正確,否則不能傳輸數(shù)據(jù),再看按鍵的邏輯關(guān)系是否正確,還有就是LCD的顯示是否正確。 調(diào)節(jié)電源,使其輸出5V電壓,調(diào)整好示波器。給電路供電,觀察示波器,記錄各頻段對(duì)應(yīng)波形的情況,峰峰值。調(diào)試結(jié)果表明,該電路在要求頻率范圍內(nèi)的大部分頻率范圍基本上不失真,除了在最高頻率的最低頻率有少許失真,其中,當(dāng)頻率接近10KHz時(shí),方波高低電壓躍變時(shí)出現(xiàn)毛刺,審過(guò)零比較器的頻率特性所致,另外,在最高頻和最低頻段,三角波出現(xiàn)少許彎斜

11、,可選用頻率特性更為寬的電容進(jìn)行校正。示波器顯示之后的幅值頻率的調(diào)試結(jié)果如下圖所示:調(diào)試之后的正弦波調(diào)試之后的方波 調(diào)試之后的三角波 5.2 性能分析 經(jīng)過(guò)一段時(shí)間運(yùn)行后,可以對(duì)系統(tǒng)的性能進(jìn)行測(cè)試。對(duì)于本波形發(fā)生器來(lái)說(shuō),用示波器可以測(cè)試其性能指標(biāo),按前面所述設(shè)計(jì)的波形發(fā)生器,能產(chǎn)生正弦波、三角波及方波信號(hào),其幅值可以05V內(nèi)變化,頻率也可以調(diào)整。 六、心得體會(huì)經(jīng)過(guò)兩周的實(shí)訓(xùn),很快就結(jié)束了。雖然時(shí)間短暫,但是其中我們?cè)谕瓿扇蝿?wù)的時(shí)候還是面臨了很多的問(wèn)題,正是因?yàn)橛龅搅穗y題,我們小組在一起探討,經(jīng)過(guò)多次改正最后還是圓滿的完成了任務(wù)。雖然平時(shí)上課我們做過(guò)實(shí)驗(yàn),但是現(xiàn)在給我們一個(gè)任務(wù)讓我們?nèi)ネ瓿傻臅r(shí)候

12、才發(fā)現(xiàn)并不是那么容易就能做出來(lái)的,不僅需要扎實(shí)的基礎(chǔ)知識(shí)還要去查詢相關(guān)的書(shū)籍了解一些我們不懂的。經(jīng)過(guò)本次實(shí)訓(xùn),我們不僅增強(qiáng)了知識(shí),也學(xué)到了很多技巧,對(duì)單片機(jī)的理解與運(yùn)用更加熟練了。此次單片機(jī)的設(shè)計(jì)硬件電路較為簡(jiǎn)單,而程序的設(shè)計(jì)在當(dāng)中占據(jù)很重要的部分。這次課程設(shè)計(jì)是用STC12C5AI6S2單片機(jī)與PCF8592D/A轉(zhuǎn)換器來(lái)實(shí)現(xiàn)的波形產(chǎn)生與顯示,所以要對(duì)這兩個(gè)模塊非常的熟悉。對(duì)于PCF8591需要深入的認(rèn)識(shí)I2C協(xié)議的內(nèi)容才能正確的傳輸數(shù)據(jù)。而對(duì)于單片機(jī)而需要對(duì)各個(gè)接口非常熟悉,才能保證數(shù)據(jù)的正常傳輸。此外還要熟練的使用示波器,對(duì)產(chǎn)生的波形進(jìn)行調(diào)整,來(lái)得到更好的效果。它考驗(yàn)我們靈活的運(yùn)用所學(xué)知

13、識(shí),培養(yǎng)了我們?cè)谟龅絾?wèn)題善于觸屏的良好學(xué)習(xí)態(tài)度。 以書(shū)本知識(shí)為基礎(chǔ)靈活的擴(kuò)展,學(xué)習(xí)前人的驗(yàn),向高層次邁進(jìn)。當(dāng)然還是存在不足的地方,例如當(dāng)頻率過(guò)小的時(shí)候矩形波會(huì)有些失真,轉(zhuǎn)換器轉(zhuǎn)換可以加一個(gè)鎖存器,放大電路設(shè)計(jì)上還有待進(jìn)一步改進(jìn),使其具有更強(qiáng)的輸出能力等。參考文獻(xiàn)1. 胡文金. 單片機(jī)系統(tǒng)實(shí)訓(xùn)教程. 重慶:重慶大學(xué)出版社,20052. 梁森. 自動(dòng)檢測(cè)技術(shù)及應(yīng)用.北京:機(jī)械工業(yè)出版社,20123. 程德福. 智能儀器. 機(jī)械工業(yè)出版社.2009.94. 朱定華,戴汝平等.單片危機(jī)原理與應(yīng)用.清華大學(xué)出版社.5. 彭楚武.微機(jī)原理與接口技術(shù).湖南大圩出版社.6. 李朝清.單片機(jī)原理與接口技術(shù).北京

14、航空航天大學(xué)出版社.7. 張李勇,陳郎,張飛舟.基于8051的雙通道波形發(fā)生器的設(shè)計(jì)與現(xiàn)實(shí).計(jì)算機(jī)工程與應(yīng)用8. 許慶山等編.電路、信號(hào)與系統(tǒng).北京:航空工業(yè)出版社. 附錄 1 系統(tǒng)硬件電路圖 附錄 2 程序代碼#include#include#include#define uchar unsigned char#define uint unsigned intsbit SDA=P36; sbit SCL=P37;unsigned int a=0; unsigned int b=0;unsigned int c=0;unsigned int bx_chang=0;unsigned int n=

15、40; unsigned char TH;unsigned char TL;unsigned int mode=0; unsigned int fd=6;unsigned int x;unsigned int u;/*sbit RS =P24; sbit RW=P25; sbit E=P26; sbit PSB=P14;/*sbit p20=P32;sbit p21=P33; sbit p22=P16; sbit p32=P17; /sin波形數(shù)組uchar code tosin256= 0x80,0x83,0x86,0x89,0x8D,0x90,0x93,0x96,0x99,0x9C,0x9

16、F,0xA2,0xA5,0xA8,0xAB,0xAE,0xB1,0xB4,0xB7,0xBA,0xBC,0xBF,0xC2,0xC5,0xC7,0xCA,0xCC,0xCF,0xD1,0xD4,0xD6,0xD8,0xDA,0xDD,0xDF,0xE1,0xE3,0xE5,0xE7,0xE9,0xEA,0xEC,0xEE,0xEF,0xF1,0xF2,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFD,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF

17、E,0xFD,0xFD,0xFC,0xFB,0xFA,0xF9,0xF8,0xF7,0xF6,0xF5,0xF4,0xF2,0xF1,0xEF,0xEE,0xEC,0xEA,0xE9,0xE7,0xE5,0xE3,0xE1,0xDF,0xDD,0xDA,0xD8,0xD6,0xD4,0xD1,0xCF,0xCC,0xCA,0xC7,0xC5,0xC2,0xBF,0xBC,0xBA,0xB7,0xB4,0xB1,0xAE,0xAB,0xA8,0xA5,0xA2,0x9F,0x9C,0x99,0x96,0x93,0x90,0x8D,0x89,0x86,0x83,0x80,0x80,0x7C,0x7

18、9,0x76,0x72,0x6F,0x6C,0x69,0x66,0x63,0x60,0x5D,0x5A,0x57,0x55,0x51,0x4E,0x4C,0x48,0x45,0x43,0x40,0x3D,0x3A,0x38,0x35,0x33,0x30,0x2E,0x2B,0x29,0x27,0x25,0x22,0x20,0x1E,0x1C,0x1A,0x18,0x16,0x15,0x13,0x11,0x10,0x0E,0x0D,0x0B,0x0A,0x09,0x08,0x07,0x06,0x05,0x04,0x03,0x02,0x02,0x01,0x00,0x00,0x00,0x00,0x0

19、0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0A,0x0B,0x0D,0x0E,0x10,0x11,0x13,0x15,0x16,0x18,0x1A,0x1C,0x1E,0x20,0x22,0x25,0x27,0x29,0x2B,0x2E,0x30,0x33,0x35,0x38,0x3A,0x3D,0x40,0x43,0x45,0x48,0x4C,0x4E,0x51,0x55,0x57,0x5A,0x5D,0x60,0x63,0x66,0x69,0x6C,0x6

20、F,0x72,0x76,0x79,0x7C,0x80; /*void delay(unsigned int z) unsigned int x,y; for(x=z;x0;x-) for(y=125;y0;y-) ; /*void SendByte(unsigned char Dbyte) unsigned char i; RS=1; for(i=0;i8;i+) E = 0; if(Dbytei)&0x80) RW=1; elseRW=0;E = 1; E= 0; RS=0;void Lcd_WriteCmd(unsigned char Cbyte ) delay(10); SendByte

21、(0xf8); SendByte(0xf0&Cbyte); SendByte(0xf0&(Cbyte4); void Lcd_WriteData(unsigned char Dbyte ) delay(10); SendByte(0xfa); SendByte(0xf0&Dbyte); SendByte(0xf0&(Dbyte0)Lcd_WriteData(*stri);stri+;/*void delayp() /延遲函數(shù);void delay_1ms(uint z) uint x,y; for(x=z;x0;x-) for(y=110;y0;y-) ; /*I2C協(xié)議 void start

22、() SDA=1; delayp(); SCL=1; delayp(); SDA=0; delayp(); void stop() SDA=0; delayp(); SCL=1; delayp(); SDA=1; delayp(); void respons() uchar i; SCL=1; delayp(); while(SDA=1)&(i250) i+; SCL=0; delayp(); void init() SDA=1; delayp(); SCL=1; delayp(); void write_byte(uchar date) uchar i,temp; temp=date; fo

23、r(i=0;i8;i+) temp=temp1; SCL=0; delayp(); SDA=CY; delayp(); SCL=1; delayp(); SCL=0; delayp(); SDA=1; delayp(); void write_add(uchar date) start(); write_byte(0x90); respons(); write_byte(0x40); respons(); write_byte(date); respons(); stop(); /* int main()/*主函數(shù) TMOD = 0x01;TH0 = (65536-99000/n)/256; TL0 = (65536-99000/n)%256;TH1 = (65536-

溫馨提示

  • 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)論