單片機(jī)課程設(shè)計(jì)--簡(jiǎn)易波形發(fā)生器_第1頁
單片機(jī)課程設(shè)計(jì)--簡(jiǎn)易波形發(fā)生器_第2頁
單片機(jī)課程設(shè)計(jì)--簡(jiǎn)易波形發(fā)生器_第3頁
單片機(jī)課程設(shè)計(jì)--簡(jiǎn)易波形發(fā)生器_第4頁
單片機(jī)課程設(shè)計(jì)--簡(jiǎn)易波形發(fā)生器_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、電氣與電子信息工程學(xué)院?jiǎn)纹瑱C(jī)課程設(shè)計(jì)報(bào)告題 目: 簡(jiǎn)易波形發(fā)生器 專業(yè)班級(jí): 電氣 學(xué)號(hào): 123456 姓 名: 王剛 指導(dǎo)教師: 胡薔、湯立剛 設(shè)計(jì)時(shí)間: 2013年12月9日2013年12月13日 設(shè)計(jì)地點(diǎn): K2-407單片機(jī)、微機(jī)原理實(shí)驗(yàn)室 2013年11月20日 單片機(jī) 課程設(shè)計(jì)成績(jī)?cè)u(píng)定表答辯或質(zhì)疑記錄:1、該設(shè)計(jì)能產(chǎn)生幾種波形?分別是哪幾種? 答:能產(chǎn)生4種波形, 三角波,方波,鋸齒波以及正弦波。2、 DAC0832有幾種工作方式?哪幾種?各有什么特點(diǎn)?該設(shè)計(jì)中 DAC0832用的是哪一種方式? 答:3種,單緩沖方式、雙緩沖方式以及直通方式:(1)單緩沖方式此方式適用于只有一路模

2、擬量輸出或幾路模擬量非同步輸出的情形。方法是控制輸入寄存器同時(shí)接收數(shù)據(jù),或者只用輸入寄存器而把DAC寄存器接成直通方式。(2)雙緩沖方式此方式適用于多個(gè)DAC0832同時(shí)輸出的情形。方法是先分別使這些DAC0832的輸入寄存器接收數(shù)據(jù),再控制這些DAC0832同時(shí)傳送數(shù)據(jù)到DAC寄存器以實(shí)現(xiàn)多個(gè)D/A轉(zhuǎn)換同步輸出。3直通方式此方式適用于連續(xù)反饋控制線路中。方法是:數(shù)據(jù)不通過緩沖器,即-WR1,-WR2, -XFER, -CS均接地,ILE接高電平。此時(shí)必須通過I/O接口與微處理器連接,以匹配微處理器與D/A的轉(zhuǎn)換。 該設(shè)計(jì)中DAC0832用的是單緩沖方式。成績(jī)?cè)u(píng)定依據(jù):課程設(shè)計(jì)考勤情況 (5)

3、:課程設(shè)計(jì)仿真測(cè)試情況 (15)課程設(shè)計(jì)答辯情況 (30):完成設(shè)計(jì)任務(wù)及報(bào)告規(guī)范性(50):最終評(píng)定成績(jī)(以優(yōu)、良、中、及格、不及格評(píng)定) 指導(dǎo)教師簽字: 2013 年 12 月 日課程設(shè)計(jì)任務(wù)書20132014 學(xué)年第 1 學(xué)期專業(yè)班級(jí): 電氣 指導(dǎo)教師: 胡薔 湯立剛工作部門: 電氣與電子信息工程學(xué)院 電氣自動(dòng)化教研室 一、課程設(shè)計(jì)題目 單片機(jī)課程設(shè)計(jì) 二、課程設(shè)計(jì)內(nèi)容(含技術(shù)指標(biāo))1設(shè)計(jì)目的及要求(1) 根據(jù)具體設(shè)計(jì)課題的技術(shù)指標(biāo)和給定條件,以單片機(jī)為核心器件,能獨(dú)立而正確地進(jìn)行方案論證和電路設(shè)計(jì),完成仿真操作。要求概念清楚、方案合理、方法正確、步驟完整; (2) 熟悉、掌握各種外圍接

4、口電路芯片的工作原理和控制方法; (3) 熟練使用單片機(jī)匯編語言或C51進(jìn)行軟件設(shè)計(jì); (4) 熟練使用Proteus、Keil軟件進(jìn)行仿真電路測(cè)試; (5) 熟練使用Protel軟件設(shè)計(jì)印刷電路板; (6) 學(xué)會(huì)查閱有關(guān)參考資料和手冊(cè),并能正確選擇有關(guān)元器件和參數(shù);(7) 編寫設(shè)計(jì)說明書,參考畢業(yè)設(shè)計(jì)論文格式撰寫設(shè)計(jì)報(bào)告。2設(shè)計(jì)內(nèi)容(題目名稱: 簡(jiǎn)易波形發(fā)生器 ) 本設(shè)計(jì)是以AT89C51為核心,結(jié)合D/A轉(zhuǎn)換器DAC0832等器件,用仿真軟件設(shè)計(jì)硬件電路,用C語言編寫驅(qū)動(dòng)程序,以實(shí)現(xiàn)程序控制產(chǎn)生正弦波、三角波、方波、鋸齒波四種常用低頻信號(hào)??梢酝ㄟ^鍵盤選擇任意以上四種波型。三、課程設(shè)計(jì)考核

5、辦法與成績(jī)?cè)u(píng)定根據(jù)過程、報(bào)告、答辯等確定設(shè)計(jì)成績(jī),成績(jī)分優(yōu)、良、中、及格、不及格五等。2013年11月1項(xiàng)目概述1.1 項(xiàng)目名稱:簡(jiǎn)易波形發(fā)生器的設(shè)計(jì)1.2 小組成員小組成員:王剛1.3 基本要求工作要求 a.組建基于單片機(jī)的函數(shù)發(fā)生器的總體結(jié)構(gòu)框架; b.根據(jù)設(shè)計(jì)測(cè)量范圍和準(zhǔn)確度要求,理論分析和計(jì)算選擇電路參數(shù); c.根據(jù)操作功能要求,確定按鍵功能; d.采用C語言編寫應(yīng)用程序并調(diào)試通過; e.對(duì)系統(tǒng)進(jìn)行測(cè)試和結(jié)果分析;1.4主要工作本設(shè)計(jì)采用AT89C51及其外圍擴(kuò)展系統(tǒng),軟件方面主要是應(yīng)用C語言設(shè)計(jì)程序。系統(tǒng)以89C51單片機(jī)為核心,配置相應(yīng)的外設(shè)及接口電路,用C語言開發(fā),組成一個(gè)多功能

6、信號(hào)發(fā)生系統(tǒng)。該系統(tǒng)的軟件可運(yùn)行于Windows XP環(huán)境下,使用Keil C及Proteus等軟件開發(fā),硬件電路設(shè)計(jì)具有典型性。同時(shí),本系統(tǒng)中任何一部分電路模塊均可移植與實(shí)用開發(fā)系統(tǒng)的設(shè)計(jì)中,電路設(shè)計(jì)具有實(shí)用性。本設(shè)計(jì)講完成以下幾個(gè)方面的工作:a.選芯片,盡量滿足一般工業(yè)控制要求、以增強(qiáng)其實(shí)用性。b.原理圖設(shè)計(jì)在保證正確的前提下,盡量采用典型的電路設(shè)計(jì)。c.掌握單片機(jī)仿真軟件Keil C與Proteus的使用。2 系統(tǒng)總體設(shè)計(jì) 2.1主要功能系統(tǒng)主要功能是實(shí)現(xiàn)利用單片機(jī)AT89C51和8位D/A轉(zhuǎn)換芯片DAC0832共同實(shí)現(xiàn)正弦波、方波、三角波、鋸齒波這四種常見波形的發(fā)生。2.2 總體方案設(shè)

7、計(jì)2.2.1 元器件的選擇該函數(shù)發(fā)生器有以下幾個(gè)部分:(1)控制模塊(2)按鍵及轉(zhuǎn)換模塊(3)采用模塊組成。(1)控制模塊:用單片機(jī)AT89C51作為系統(tǒng)的主控核心。單片機(jī)具有體積小,使用靈活的,易于人機(jī)對(duì)話和良好的數(shù)據(jù)處理,有較強(qiáng)的指令尋址和運(yùn)算功能等優(yōu)點(diǎn)。且單片機(jī)功耗低,價(jià)格低廉的優(yōu)點(diǎn)。(2)按鍵及轉(zhuǎn)換模塊:采用DAC0832,其具有以下特點(diǎn):8位分辨率;雙通道D/A轉(zhuǎn)換;輸入輸出電平與TTL/CMOS相兼容等。2.2.2 系統(tǒng)總體框圖設(shè)計(jì)本系統(tǒng)是以單片機(jī)AT89C51和8位A/D轉(zhuǎn)換芯片DAC0832及顯示共同實(shí)現(xiàn)正弦波、方波、三角波、鋸齒波這四種常見波形及顯示功能。 系統(tǒng)框圖:?jiǎn)纹瑱C(jī)

8、AT89C51 按鍵轉(zhuǎn)換模塊 輸出3 系統(tǒng)硬件設(shè)計(jì)3.1 單片機(jī)介紹89C51單片機(jī)有44個(gè)引腳PLCC和TQFP方形封裝形式,40個(gè)引腳直插式封裝形式,常見如圖AT89C513.2 DAC0832外圍電路設(shè)計(jì) 系統(tǒng)中DAC0832的工作方式是單緩沖方式, DAC鎖存器呈直通狀態(tài),只需將XFER 和WR2 引腳直接接地,ILE端接+VCC,片選信號(hào)CS地址選擇線相連,WR1接單片機(jī)的寫信號(hào)。DAC0832輸出為電流形式,為了得到電壓輸出,需要在輸出端接上運(yùn)算放大器。LM324是四運(yùn)放集成電路,它采用14腳雙列直插塑料封裝,外形如圖所示。它的內(nèi)部包含四組形式完全相同的運(yùn)算放大器,除電源共用外,四

9、組運(yùn)放相互獨(dú)立。每一組運(yùn)算放大器可用圖1所示的符號(hào)來表示,它有5個(gè)引出腳,其中“+”、“-”為兩個(gè)信號(hào)輸入端,“V+”、“V-”為正、負(fù)電源端,“Vo”為輸出端。兩個(gè)信號(hào)輸入端中,Vi-(-)為反相輸入端,表 示運(yùn)放,輸出端Vo的信號(hào)與該輸入端的位相反;Vi+(+)為同相輸入端,表輸出端Vo的信號(hào)與該輸入端的相位相同。 LM324的引腳排列圖 由于LM324四運(yùn)放電路具有電源電壓范圍寬,靜態(tài)功耗小,可單電源使用,價(jià)格低廉等優(yōu)點(diǎn),因此被廣泛應(yīng)用在各種電路中Rfb即為運(yùn)算放大器的負(fù)反饋電阻端,由于V=5V,所以運(yùn)算放大器輸出電壓為負(fù)電壓(0-5V)。通過運(yùn)算放大器LM324進(jìn)行轉(zhuǎn)換,可以

10、實(shí)現(xiàn)單極性和雙極性輸出,通過總線方式和單片機(jī)相連。由于輸出要經(jīng)運(yùn)算放大器轉(zhuǎn)換成電壓信號(hào),對(duì)運(yùn)算放大器的動(dòng)態(tài)范圍要保證在5V+5V,要求運(yùn)算放大器的電源V+=12v,V-=12V,電路如圖所示,圖中兩個(gè)電流輸出端的電位應(yīng)盡可能的靠近地電位,一保證輸出電流的線性度。 DAC0832外圍電路在線性DAC中,輸出的模擬電壓的公式為:式中, 為輸出的模擬量,n為D/A轉(zhuǎn)換器的位數(shù), 為輸入的數(shù)字量, 為基準(zhǔn)電壓,D/A轉(zhuǎn)換芯片所需要的基準(zhǔn)電壓一般由芯片外的基準(zhǔn)電源提供,常取基準(zhǔn)電壓,n=8(D/A轉(zhuǎn)換器常用芯片DAC0832是8位);目前D/A轉(zhuǎn)換器較多,本設(shè)計(jì)項(xiàng)目選用大規(guī)律集成電路DAC0832來實(shí)現(xiàn)

11、D/A轉(zhuǎn)換。3.3 設(shè)計(jì)系統(tǒng)圖本系統(tǒng)含有DAC0832與單片機(jī)的連接模塊,單片機(jī)的連接模塊以及按鍵控制模塊等主要部分。 DAC0832是采樣頻率為八位的D/A轉(zhuǎn)換芯片,集成電路內(nèi)有兩級(jí)輸入寄存器,使DAC0832芯片具備雙緩沖、單緩沖和直通三種輸入方式,以便適于各種電路的需要。所以這個(gè)芯片的應(yīng)用很廣泛。 簡(jiǎn)易波形發(fā)生器的原理圖4 系統(tǒng)軟件設(shè)計(jì) 4.1. 項(xiàng)目要求:實(shí)現(xiàn)簡(jiǎn)易波形發(fā)生器,程序設(shè)計(jì)主要要解決按鍵控制輸出三角波、方波、鋸齒波和正弦波的問題。 4.2. 按鍵控制:根據(jù)設(shè)計(jì)要求,根據(jù)按鍵控制輸出波形的變化,則程序設(shè)計(jì)中應(yīng)不斷查詢檢測(cè)按鍵狀態(tài),以便輸出對(duì)應(yīng)的波形。對(duì)于要通過一個(gè)按鍵來識(shí)別每種

12、不同的功能,我們給每個(gè)不同的功能模塊用不同的ID號(hào)標(biāo)識(shí),這樣,每按下一次按鍵,ID的值是不相同的,所以單片機(jī)就很容易識(shí)別不同功能的身份了。從上面的要求我們可以看出,輸出的波形受到按鍵的控制。我們給輸出不同的波形定義出不同的flag,當(dāng)flag=0時(shí),輸出三角波,當(dāng)flag=時(shí),輸出方波,當(dāng)flag=時(shí),輸出鋸齒波,當(dāng)flag=3時(shí),輸出正弦波。很顯然,只要每次按下開關(guān)K1時(shí),分別給出不同的flag值我們就能夠完成上面的任務(wù)了。 按鍵波形選擇程序流程圖 4.3 輸出模擬電壓:由于DAC0832與單片機(jī)AT89S51采用直通方式,因此只要往D/A數(shù)據(jù)輸入端口上送入數(shù)字量,從后面運(yùn)放的輸出端即可得到

13、模擬電壓。輸出電壓根據(jù)公式計(jì)算得來,因而在需要輸出某個(gè)電壓值時(shí),求出對(duì)應(yīng)得數(shù)字值,通過P2端口輸出,就可得到所需模擬電壓。程序設(shè)計(jì)即P2=x。為了便于程序修改和功能擴(kuò)展,采用模塊化設(shè)計(jì),將DAC0832的輸出封裝為一個(gè)函數(shù),用形參表示待輸出的數(shù)值: void DAC0832(unsigned char x) P2=x; 4,4 軟件設(shè)計(jì)思路,以輸出正弦波為例輸出正弦波: 一般采用查表方法獲得正弦值。將90° 270°的正弦值放在數(shù)組中,通過簡(jiǎn)單的處理就可以從數(shù)組中得到整個(gè)周期的值。設(shè)正弦信號(hào)角度為x,當(dāng) x<90°時(shí),sinx=sin(90°-x)

14、;當(dāng)x>270°時(shí),sinx=sin(450°-x)。oid out_sin(unsigned int x) unsigned char code_sin=0,0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2,2, 3, 3, 4, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9,9,10, 10, 11, 12, 12, 13, 14, 15, 15, 16, 17, 18, 18, 19, 20, 21,22, 23, 24, 25, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35

15、, 36, 37, 38, 39, 40, 41, 42, 44, 45, 46, 47, 49, 50, 51, 52, 54, 55, 56, 57, 59, 60, 61, 63, 64, 66, 67, 68, 70, 71, 73, 74, 75, 77, 78, 80, 81, 83, 84, 86, 87, 89, 90, 92, 93, 95, 96, 98, 99, 101,102, 104, 106, 107,109, 110, 112, 113, 115, 116, 118, 120, 121, 123, 124, 126,128,129, 131, 132, 134,

16、135, 137, 139, 140, 142, 143, 145, 146, 148,149,151,153, 154, 156, 157, 159, 160, 162, 163, 165, 166, 168, 169, 171, 172, 174, 175, 177, 178, 180, 181, 182, 184, 185, 187, 188, 189, 191, 192, 194, 195, 196, 198, 199, 200, 201, 203, 204, 205, 206, 208, 209, 210, 211, 213, 214, 215, 216, 217, 218,219,

17、 220, 221, 223, 224, 225, 226, 227, 228, 229, 230, 230, 231, 232, 233, 234, 235, 236, 237, 237, 238, 239, 240, 240, 241, 242, 243, 243, 244, 245, 245, 246, 246, 247, 247, 248, 248, 249, 249, 250, 250, 251, 251, 251, 252, 252, 253, 253, 253, 253, 254, 254,254, 254, 254, 255, 255, 255, 255, 255, 255,

18、255, 255,255; /將90°270°的正弦值存放在數(shù)組中 unsigned char y;x=x%360; if(x<90) x=90-x; else if(x>270) x=450-x; else x=x-90;y=sinx; DAC0832(y); int k;for(k=0;k<360;k+) out_sin(k) 5 仿真結(jié)果及分析設(shè)個(gè)自變量i讓它不斷地自加1,直到加到255時(shí),t=i,對(duì)t進(jìn)行不斷地自減1直到減到t=0,然后再不斷地重復(fù)上述過程產(chǎn)生三角波。 設(shè)個(gè)自變量i=0使之延時(shí)一段時(shí)間,再另i=255時(shí)在延時(shí)與i=0相同的時(shí)間,然后

19、再重復(fù)上述過程可產(chǎn)生方波。鋸齒波中的斜線用一個(gè)個(gè)小臺(tái)階來逼近,在一個(gè)周期內(nèi)從最小值開始逐步遞增,當(dāng)達(dá)到最大值后又回到最小值,如此循環(huán),當(dāng)臺(tái)階間隔很小時(shí),波形基本上近似于直線。適當(dāng)選擇循環(huán)的時(shí)間,可以得到不同的周期鋸齒波。鋸齒波發(fā)生原理與方波類似,只是高低兩個(gè)時(shí)延的常數(shù)不同,所以用延時(shí)法,來產(chǎn)生鋸齒波,設(shè)個(gè)自變量i讓它不斷地自加1,直到叫到255,DAC0832可以又自動(dòng)歸0,然后再不斷地重復(fù)上述過程可得鋸齒波。 采用查表方法獲得正弦值。將90° 270°的正弦值放在數(shù)組中,通過簡(jiǎn)單的處理就可以從數(shù)組中得到整個(gè)周期的值,然后不斷地循環(huán)即可得出正弦波。6 總結(jié)與提高6.1 課程設(shè)計(jì)總結(jié)本組設(shè)計(jì)的課題為:?jiǎn)纹瑱C(jī)課程設(shè)計(jì)簡(jiǎn)易波形發(fā)生器的設(shè)計(jì),由于以前做過類似簡(jiǎn)易的有關(guān)波形發(fā)生器的實(shí)驗(yàn)。對(duì)于本次課程設(shè)計(jì)總體認(rèn)知不是

溫馨提示

  • 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. 人人文庫網(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)論