方波函數(shù)發(fā)生器設(shè)計_第1頁
方波函數(shù)發(fā)生器設(shè)計_第2頁
方波函數(shù)發(fā)生器設(shè)計_第3頁
方波函數(shù)發(fā)生器設(shè)計_第4頁
方波函數(shù)發(fā)生器設(shè)計_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、方波函數(shù)發(fā)生器設(shè)計目 錄摘要1 關(guān)鍵詞1 Abstract1 Key words1 引言21 總體方案的論證與設(shè)計21.1 方案選擇設(shè)計21.2 總體硬件組成框圖22 系統(tǒng)硬件模塊32.1系統(tǒng)主要模塊設(shè)計32.1.1 STC89C52單片機簡介32.1.2 復(fù)位電路設(shè)計42.1.3 串行通信接口42.2 系統(tǒng)實物的焊接組裝62.2.1 系統(tǒng)原理圖62.2.2 焊接前的準備62.2.3 焊接注意事項62.2.4 焊接過程72.2.5 系統(tǒng)實物展示73 系統(tǒng)軟件設(shè)計73.1編程語言的選擇方案73.2 系統(tǒng)程序的設(shè)計84 系統(tǒng)調(diào)試84.1 軟件調(diào)試94.2 實踐操作94.3 測試結(jié)果分析10參考文獻

2、10附錄 方波函數(shù)發(fā)生器程序10方波函數(shù)發(fā)生器設(shè)計自動化專業(yè)學(xué)生 姬生達指導(dǎo)教師 00摘要:本函數(shù)發(fā)生器采用STC89C52單片機作為控制核心組成數(shù)字式低頻信號發(fā)生器。運用單片機內(nèi)部的定時器模塊,采用程序編寫波形函數(shù),通過控制按鍵可以改變方波的周期。本設(shè)計具有低功耗、 程控性、高穩(wěn)定性、結(jié)構(gòu)簡單性能優(yōu)良等特點??捎糜诙喾N需要低頻信號源的地方,具有很好的實用性。關(guān)鍵詞:單片機;占空比;方波 Design of Square Wave Function GeneratorStudent Majoring in Automation Ji ShengdaTutor 00Abstract: This

3、function generator adopts STC89C52 single chip microcomputer as the control core to form a digital low frequency signal generator. The use of single-chip internal timer module, the use of procedures for the preparation of the waveform function, through the control button can change the square wave c

4、ycle. This design has the characteristics of low power consumption, program control, high stability, simple structure, excellent performance and so on. Can be used for a variety of low frequency signal source, and has a good practicality. Key words: Single chip microcomputer; Duty ratio; Circuit dia

5、gram 引言 函數(shù)發(fā)生器是為電子測量提供符合一定技術(shù)要求的電信號的設(shè)備。單片機集成度高,功能強,低功耗,價格便宜等一系列的優(yōu)點。目前已經(jīng)深入到生活的方方面面。本次設(shè)計是基于單片機的占空比可調(diào)方波函數(shù)發(fā)生器,是通過單片機定時器和中斷來實現(xiàn)輸出占空比可調(diào)的方波信號,以達到簡易函數(shù)發(fā)生器的設(shè)計。1總體方案的論證與設(shè)計1.1 方案選擇設(shè)計實現(xiàn)方波發(fā)生器的方法很多,但主要有三個案:采用單片函數(shù)發(fā)生器8038;采用鎖相式頻率合成器;采用單片機編程。方案一:采用單片函數(shù)發(fā)生器8038,8038可同時產(chǎn)生正弦波、方波等。而且方法簡單易行但產(chǎn)生信號的頻率穩(wěn)定度不高。 方案二:采用鎖相式頻率合成器,利用鎖相環(huán),

6、將壓控振蕩器VCO的輸出頻率鎖定在所需頻率上,該方案性能良好,但難以達到輸出頻率覆蓋系數(shù)的要求,且電路復(fù)雜。方案三:采用單片機編程的方法來實現(xiàn),該方案可以通過編程的方法控制信號的占空比,而且硬件電路不變的情沉下,通過改變程序來實現(xiàn)占空比的變換。此外通過編程的方法產(chǎn)生的是數(shù)字信號,所以信號的精度可以做到很高。鑒于方案一的信號不穩(wěn)定,方案二的電路較為復(fù)雜等缺點,我采用的是方案三的設(shè)計方法。本設(shè)計采用軟硬件的結(jié)合,軟件控制硬件的方法來實現(xiàn),能夠使輸出信號頻率穩(wěn)定和準確性的得到保證,而且本次設(shè)計使用的一些元器件價格相對便宜,都是常用的元器件。2.2 總體硬件組成框圖系統(tǒng)框圖如圖2-1所示,系統(tǒng)主要由四

7、大部分組成即:復(fù)位電路;LED顯示;按鍵電路;示波器顯示。其核心部位是STC89C52單片機。復(fù)位電路 STC89C52 LED顯示按鍵電路 串口轉(zhuǎn)換電路示波器顯示 圖2-1總體硬件系統(tǒng)組成框圖2系統(tǒng)硬件模塊2.1 系統(tǒng)主要模塊設(shè)計2.1.1 STC89C52單片機簡介STC89C52單片機內(nèi)部有兩個16位可編程的定時器計數(shù)器T0和T1,他們具有計數(shù)器方式和定時器方式兩種工作方式及4種工作模式。在波形發(fā)生器中,用定時器功能來精確地確定兩個采樣點輸出之間的延遲時間。模式1采用的是16位計數(shù)器,當(dāng)中斷開啟后,計數(shù)器開始從初值開始計數(shù),最高位產(chǎn)生溢出時間時向CPU請求中斷。STC89C52芯片的引腳

8、結(jié)構(gòu)圖如圖2-2所示,其實物圖如圖2-3所示。圖2-2 STC89C52引腳結(jié)構(gòu)圖2-3 STC89C52實物圖系統(tǒng)的中斷是使處理器具有對外異步事件的處理能力設(shè)置的。當(dāng)CPU正在處理某件事的時候外界發(fā)生了緊急事件,要求CPU暫停當(dāng)前的工作,執(zhí)行緊急事件。在本次設(shè)計 中,只用到單片機內(nèi)部定時器溢出時產(chǎn)生中斷請求,進而達到實現(xiàn)單片機輸出方波信號的要求。2.1.2 復(fù)位電路設(shè)計AT89C52單片機復(fù)位需要一個長達24個時鐘周期的高電平才能復(fù)位,復(fù)位的作用 就是將程序的指針指向地址0,所有程序重新從頭開始運行。復(fù)位電路圖設(shè)計如圖2-3所示,該電路不但具有復(fù)位按鍵復(fù)位功能,還有上電復(fù)位的功能。上電復(fù)位功

9、能是由極性電容C實現(xiàn)的。當(dāng)系統(tǒng)上電時該電容有一個充電放電的過程,放電過程會產(chǎn)生一個高電平,放電時間根據(jù)t=RC計算。R為電阻的阻值,C為電容的大小。圖2-4 復(fù)位電路 在系統(tǒng)正常運行的時候,按下按鍵時(人手的反應(yīng)時間要遠大于單片機復(fù)位需要的時間),REST端的電平為VCC也是一個高電平,此時單片機也會復(fù)位。2.1.3 串行通信接口單片機通信有并行和串行兩種方式。并行通信常是將數(shù)據(jù)字節(jié)的各位用多條數(shù)據(jù)線同時傳輸,每一位數(shù)據(jù)需要一條傳輸線。其優(yōu)點是控制簡單,相對傳輸速度快。缺點是傳輸線較多,長距離傳輸成本增加。串行通信方式是將數(shù)據(jù)字節(jié)分成一位一位的形式在一條數(shù)據(jù)線上逐個的傳輸。其優(yōu)點是傳輸線少,長

10、距離傳輸成本低。缺點是傳送控制比并行傳輸復(fù)雜。而串行通信又分為兩種,異步同步串行通信。綜合考慮在本次設(shè)計中我采用的是同步串行通信方式。ELA RS-232C是現(xiàn)在常用的串行接口標準。用于計算機與計算機之間,計算機與外設(shè)之間的數(shù)據(jù)通信。該標準的目的是定義數(shù)據(jù)終端設(shè)備之間的電氣特性。RS-232C提供了單片機與單片機, 單片機與PC機之問串行數(shù)據(jù)通信的標準接口。通信距離可以達到15m。但是RS-232C規(guī)定的邏輯電平與單片機的邏輯電平不是一致的。所以在應(yīng)用中,要把微處理器的信號電平(TTL電平)轉(zhuǎn)換為RS-232C電平,或者對二者進行逆轉(zhuǎn)換。本次設(shè)計中我們選用專用的電平轉(zhuǎn)換芯片MAX232實現(xiàn)單片

11、機與PC之間電平的轉(zhuǎn)換。其組成電路如圖2-4所示,RS232 9孔焊接頭實物圖如圖2-5所示。圖2-5 串口模塊圖2-6 RS232 9孔焊接頭2.2 系統(tǒng)實物的焊接組裝 2.2.1 焊接前的準備 本次設(shè)計需要用到的主要元器件是:89c52單片機一片,四位LED數(shù)碼管一個,MAX232芯片一片,RS232串口一個,pcb板一塊。焊接工具:焊錫絲,烙鐵,松香等。測試工具:示波器一臺。2.2.2 系統(tǒng)原理圖 如圖2-7所示為系統(tǒng)原理圖圖2-7 系統(tǒng)原理圖2.2.3 焊接注意事項(1)補焊時應(yīng)按照從左到右,由上到下的順序,避免檢查時漏檢或焊接時漏修。(2)焊接時要經(jīng)常清洗烙鐵頭,防止烙鐵頭的雜物造成

12、虛焊、針孔、加焊等不良發(fā)生。(3)不要在基板上給烙鐵頭加焊錫,生產(chǎn)過程中不能抖錫、敲錫、甩錫,防止焊錫渣、焊錫珠掉到基板上面。(4)在壓件或拆件時要先在線路板的銅箔面上加焊錫,要求均勻加熱,避免松香失效或銅箔翹皮造成線路破壞。(5)電烙鐵使用以后,一定要穩(wěn)妥地插放在烙鐵架上,并注意導(dǎo)線等其他雜物不要碰到烙鐵頭,以免燙傷導(dǎo)線,造成漏電等事故。(6)保持烙鐵頭的清潔:焊接時,烙鐵頭長期處于高溫狀態(tài),又接觸助焊劑等弱酸性物質(zhì),其表面很容易氧化腐蝕并沾上一層黑色雜質(zhì)。這些雜質(zhì)形成隔熱層,妨礙了烙鐵頭與焊件之間的熱傳導(dǎo)。因此,要注意用一塊濕布或濕的木質(zhì)纖維海綿隨時擦拭烙鐵的頭。對于普通烙鐵頭,在腐蝕污染

13、嚴重時可以使用銼刀修去表面氧化層。2.2.4 焊接過程 首先進行元器件的識別,將其按照電路圖那樣安裝到PCB板上進行固定。然后安裝先焊接體積較小的元器件,然后再焊接體積大的元器件,焊接時要用助焊劑輔助焊接,焊接芯片的時候停留時間不宜超過3秒,防止燒壞芯片。焊點焊接完成后,按照電路圖如圖2-5所示進行線的焊接,要求同上。2.2.5 系統(tǒng)實物展示 如圖2-8所示實物是本次設(shè)計最終完成的作品,在一個洞洞板上焊接了所有需要的模塊:一個自鎖式按鍵為電源開關(guān)按鍵,三個點觸式按鍵,其中一個是復(fù)位按鍵,兩個方波占空比調(diào)節(jié)按鍵。圖2-8 系統(tǒng)實物圖3 系統(tǒng)軟件設(shè)計3.1 編程語言的選擇方案方案一:使用高級語言-

14、C語言。C語言具有可移植性,能夠結(jié)構(gòu)化編程,而且程序很容易讀懂。使用標準的C語言程序,幾乎可以不做任何改變就能移植到不同的微機平臺上。其缺點是C語言的語法限制不太嚴格,對變量的類型約束不嚴格,對數(shù)組下標越界不做檢查,對數(shù)據(jù)的封裝性上有很大的安全性缺陷。方案二:使用低級語言匯編語言。匯編語言代碼執(zhí)行效率高速度很快,占用內(nèi)存少,保留了機器語言的靈活性,而且具有直接訪問硬件的能力,直接面向機器并較好的發(fā)揮機器的特性,屬于質(zhì)量較高的程序。但是匯編語言依賴于具體的硬件系統(tǒng),不能通用,不能再不同機型之間移植,而且其開發(fā)工作量非常大,可讀性差。綜合兩種語言的優(yōu)缺點我選用的是高級語言C語言來完成本次設(shè)計。3.

15、2 系統(tǒng)程序的設(shè)計本次系統(tǒng)程序的設(shè)計我采用的是KELL單片機語言編譯軟件,其編譯界面如圖3-1所示。圖3-1 編譯軟件(1)首先設(shè)計總體的主程序思路,本設(shè)計的主要功能就是實現(xiàn)占空比可調(diào)的方波發(fā)生電路,而且通過LED數(shù)碼管顯示出占空比,示波器顯示相應(yīng)的波形。(2)定時器中斷子程序的設(shè)計思路,用定時器0和定時器2中斷,定時器0控制方波占空比,定時器2控制方波的周期。(3)按鍵子程序的設(shè)計思路,按鍵的兩個觸電一端連接IO口一端接地,當(dāng)單片機讀取連接按鍵的IO電平被拉低時,說明按鍵被按下,進而進行相應(yīng)的程序。在處理按鍵掃描的時候要用軟件對按鍵按下這個動作進行延時消抖。(4)LED數(shù)碼管顯示器的驅(qū)動程序

16、設(shè)計思路,用單片機的P2和P3的IO進行對數(shù)碼管的驅(qū)動。用動態(tài)掃描的方式讓數(shù)碼管顯示相應(yīng)的數(shù)據(jù)。 以上為主要部分程序的設(shè)計思路及方法,具體的程序設(shè)計請看附錄。4 系統(tǒng)調(diào)試根據(jù)本次的設(shè)計方案,本系統(tǒng)的調(diào)試分為軟件調(diào)試和實踐操作演示過程以及測試結(jié)果分析。4.1 軟件調(diào)試用KELL軟件進行本次設(shè)計的C語言程序的編譯,檢查是否有語法的錯誤,若有則進行修正,當(dāng)編譯沒有錯誤提示時,編譯生成HEX文件,然后再下載到單片機進行下一步的實踐操作過程。4.2 實踐操作將本次設(shè)計的函數(shù)發(fā)生器,平穩(wěn)放到試驗臺上,接通電源,然后打開示波器先對示波器調(diào)零,用示波器探針接觸函數(shù)發(fā)生器的信號輸出引腳。先觀察示波器顯示的是否為

17、設(shè)定的初值為50%占空比的方波。若是則按下增加和減少按鍵,觀察示波器波形的變化規(guī)律。示波器波形演示如圖4-1所示為初始化的方波,如圖4-2所示為按下增加占空比按鍵時產(chǎn)生的波形。圖4-1 初始化方波 圖4-2 波形變化4.3 測試結(jié)果分析 此次系統(tǒng)設(shè)計的效果較好,在試驗中可以發(fā)現(xiàn),LED數(shù)碼管上顯示初始值為50,示波器輸出方波占空比為1/2。按下控制按鍵,LED數(shù)碼管上的數(shù)字變化增加或減少,示波器方波占空比也跟隨增加或減少,一直增加到99或減少到0都跳變?yōu)槌跏贾?0。示波器占空比也變?yōu)?/2。參考文獻1郭天祥.51單片機C語言教程M.北京:電子工業(yè)出版社,2009.2童詩白,華成英.模擬電子技術(shù)

18、基礎(chǔ)M.北京:高等教育出版社,2001.3梁明理,鄧仁清.電子線路M.北京:高等教育出版社,2001.4謝自美.電子線路設(shè)計#實驗#測試M.武漢:華中科技大學(xué)出版社,2000.5韓國棟,趙月飛,婁建安.Altium Designer Winter 09電路設(shè)計入門與提高M.北京:化學(xué)工業(yè)出版社.2010.附錄/* 關(guān)于頻率和占空比的確定,對于12M晶振,假定PWM輸出頻率為1KHZ,這樣定時中斷次數(shù) 設(shè)定為C=10,即0.01MS中斷一次,則TH0=FF,TL0=F6;由于設(shè)定中斷時間為0.01ms,這樣可以設(shè)定占空比可從1-100變化。即0.01ms*100=1ms * /#include

19、<REGX51.H> #define uchar unsigned char /* TH0和TL0是計數(shù)器0的高8位和低8位計數(shù)器,計算辦法:TL0=(65536-C)%256; TH0=(65536-C)/256,其中C為所要計數(shù)的次數(shù)即多長時間產(chǎn)生一次中斷;TMOD是計數(shù)器工作模式選擇,0X01表示選用模式1,它有16位計數(shù)器,最大計數(shù)脈沖為65536,最長時間為1ms*65536=65.536ms */#define V_TH0 0XFF /定時器初值的宏定義 #define V_TL0 0XF6 #define V_TMOD 0X01 uchar code Tab = 0x

20、C0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xff; void init_sys(void); /*系統(tǒng)初始化函數(shù)*/ void Delay5Ms(void); /*5毫秒基準延時*/unsigned char ZKB1; /*函數(shù)功能:顯示子程序 參數(shù):ZKB1*/ void display(ZKB1) P3=0xbf; /P2.6引腳輸出低電平 P2=TabZKB1/10; delay(); /消影 delay(); delay(); P3=0x7f; /P2.7引腳輸出低電平 P2=TabZKB1%10; delay(); delay(); delay();P2=0xff; /關(guān)閉所有數(shù)碼管 P0=0xff;delay(); delay(); delay(); void main (void) init_sys(); /系統(tǒng)初始化 ZKB1=50; /占空比初始值設(shè)定 while(1) if (!P14) /如果按了+鍵,增加占空比 Delay5Ms(); /按鍵消抖延時 if (!P14) /再次確認按鍵是否按下 ZKB1+; if (ZKB1>99) ZKB1=1; /給占空比設(shè)定范圍值 if (!P15) /如果按了-鍵,減少占空比 Delay5Ms(); /按鍵消抖延時 i

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論