freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于max038的多功能信號發(fā)生器的設(shè)計-資料下載頁

2025-08-19 18:53本頁面

【導(dǎo)讀】物聯(lián)網(wǎng)工程學(xué)院電子信息工程專業(yè)。的電路的信號發(fā)生器,在電路實驗和設(shè)備檢測中具有十分廣泛的用途.隨著科技的發(fā)展,對信號發(fā)生器的各方面要求越來越高.傳統(tǒng)的信號發(fā)生器由于波形精度低,頻率穩(wěn)定性差。能信號發(fā)生器,它采用MAX038與單片機結(jié)合的方法,通過Protel99軟件進行硬件設(shè)計及。仿真,采用C語言編程,結(jié)合軟件控制信號產(chǎn)生、變化,頻率測量及顯示的流程,整個信。方波及矩形波,對于產(chǎn)生的波形信號,通過功率放大電路對輸出波形信號的幅度、波形穩(wěn)。由于在12M晶振下單片機所能測量的頻率最高只能達到500kHZ,必須對整形輸出作一個。四分頻處理,另外本設(shè)計中對于不同頻率的波形信號采用了不同的測量方式,對于較低頻。率的方波,我們通過測量其周期間接獲得其頻率,而對于較高頻率的信號波,則可以直接。三角波、方波、矩形波,同時實現(xiàn)了對頻率、占空比及幅度的調(diào)節(jié)以及精確測量并且最終。得以顯示,基本達到了設(shè)計要求.

  

【正文】 Y返 回N顯 示 子 程 序 圖 41 主程序流程圖 江南大學(xué)學(xué)士學(xué)位論文 20 頻率測量流程圖 本電路采用 12M溫度補償晶振,其最大計數(shù)為 500kHZ,本頻率計測頻范圍為 1Hz到1MHZ,以 50kHz為分界,待測信號經(jīng)放大、變換 、四分頻處理后再將波形信號經(jīng)整形電路轉(zhuǎn)換為方波, 一路直接送 AT89C52單片機 的 P3. 2口, 另一路 送 P3. 4口 ,測頻時,首先 T0為計數(shù)器, T1為定時器,控制閘門時間為 1秒, 1S后,判斷值大于 50k時,經(jīng)變換處理后送顯示,小于 50k時,外部中斷用來捕捉脈沖頻率下降沿,捕捉到下降沿觸發(fā)外部中斷, 在外部中斷里開定時器 t的中斷,即每定時 t使 count加 1,當(dāng)再一次觸發(fā)外部中斷時,讀取 count的值 n,則脈沖時間為 n*t,從而測得頻率,經(jīng)過變化處理后送顯示模塊 . 測頻模塊的軟件流程圖如圖 42所示 [11]: 開始初始化粗側(cè)利用中斷周期測量頻率<50kHZY顯示模塊N 圖 42 頻率測量流程圖 多功能信號 發(fā)生器 的設(shè)計 21 占空比測量流程圖 首先測出方波的頻率(這個跟占空比無關(guān)),利用這個計算出周期 T; 其次利用一個獨立的外部中斷,在測量完頻率后啟動:先設(shè)置上升沿觸發(fā),一旦開啟后,下一個方波上升沿,外部中斷就會被觸發(fā) . 在處理中斷服務(wù)的時候,把這個外部中斷重新設(shè)置為下降邊沿觸發(fā),然后啟動定時器 . 下一個下降邊沿到來的時候,中斷會被觸發(fā),而這個下降邊沿,剛好就是方波高電平結(jié)束的地方 . 第二次觸發(fā)中斷后,停止計時,兩次中斷之間的間隔修正補償后,就是高電平的持續(xù)時間 Tu. 占空比可以計算出來,就是 q=Tu/T*100%,然后就顯示即可 . 流程圖如圖 43所示: 開 始初 始 化設(shè) 置 上 升 沿 觸 發(fā)觸 發(fā) 的 同 時 把 外 部 中 斷設(shè) 置 為 下 降 沿 觸 發(fā) 然 后啟 動 定 時 器數(shù) 據(jù) 處 理顯 示 模 塊 圖 43 占空比測量流程 江南大學(xué)學(xué)士學(xué)位論文 22 多功能信號 發(fā)生器 的設(shè)計 23 第 5 章 結(jié)論與展望 采用 MAX038 芯片制作函數(shù)信號發(fā)生器隨設(shè)計思想不同,具有多種方法 ,本文只是其中一種可實現(xiàn)的方法 . 設(shè)計出的信號發(fā)生器結(jié)構(gòu)簡單,不需調(diào)整,具有很高的性價比,體積也很小 . 和利用分離元件實現(xiàn)的發(fā)生器相比,具有顯著的優(yōu)勢,這足以彌補它在某些方面的不足 . 同時該信號源設(shè)計尚存在的不足之處,主要有兩個方面,第一為缺乏頻率準(zhǔn)確顯示的手段,可以配備相應(yīng)的數(shù)字頻率計模塊,但如何將顯示的精度與信號源的頻段配合有待討論研究 ; 第二為輸出級可配以顯示輸出幅度的儀表,并且放大電路有待進一步改進,使其具有更強的輸出能力 . 由于使用了單片機作為電路的控制核心,整個波形發(fā)生器具有成本低,可靠性高,體積小巧 、易于攜帶,功耗低,輸出波形優(yōu)良,使用方便等優(yōu)點 . 在此波形發(fā)生器輸出加入一個寬帶可變增益放大器即可調(diào)整輸出波形幅度,改變參考頻率的大小即可改變輸出信號的分辨率及頻率范圍,頻率范圍可以連續(xù)覆蓋 1Hz~ 20MHz,分辨率可以做到 10Hz 甚至1Hz. 對于低成本的小型波形發(fā)生器,這是 MAX038 的一個理想的應(yīng)用方案 . 由于此次實現(xiàn)的信號發(fā)生器電路是模數(shù)混合電路,因此在電路設(shè)計和線路板布局上都有所研究 . 具體有: ① MAX038 的模擬電源和數(shù)字電源需要分開,在供電時要分別供電,即分別取自不同的電源,以防數(shù)字信號通過電 源線干擾模擬部分 ; 同樣模擬地和數(shù)字地的處理也要慎重,PCB 板上要用低阻地平面分別將模擬地和數(shù)字地連接,然后在某一點上將兩地相連 . ② 在雙層板上,信號線要盡量布在焊接面,元件為地平面,這樣可以減少信號間的干擾,這一點對系統(tǒng)性能的穩(wěn)定尤為重要,因為系統(tǒng)性能受 IIN、 FADJ、 DADJ、 COSC 等引腳周圍的分布電容及信號環(huán)境的影響特別敏感,此外,這些引腳引線的長度和面積還應(yīng)盡量短小 . ③ 由于不同結(jié)構(gòu)的電阻具有不同的寄生電容和寄生電感,因此在選擇電阻時,應(yīng)選用寄生電容和寄生電感小的電阻,推薦使用 1%以上精度的金屬膜 電阻 . ④ 在高頻線路中,電源去耦是一個關(guān)鍵問題 . 整個線路往往會由于電源引線而產(chǎn)生電路諧振,當(dāng)有多大的瞬時變化時,也會產(chǎn)生尖峰干擾信號 . 消除這兩種現(xiàn)象的有效辦法就是在片子的電源引腳與地之間加上適當(dāng)?shù)娜ヱ铍娙?,一般使?1μF 以上的優(yōu)質(zhì)電容 . 在許多場合,采用兩個電容并聯(lián)的方法(并聯(lián)一個 0. 1μF 電容),則去耦效果更佳 . 由此可見,及時了解相關(guān)理論的新進展、采用新技術(shù),對降低成本、優(yōu)化設(shè)計方案,提高設(shè)計性能都很有意義 . 這次設(shè)計對我來說是一筆不小的財富 . 使我更加了解了單片機的結(jié)構(gòu)與功能,最重要的是應(yīng)用,我將一直學(xué)習(xí)到底 ,深入實踐,不斷提高自我 . 江南大學(xué)學(xué)士學(xué)位論文 24 參考文獻 [1] 張肅文 . 高頻電子線路 [M]. 北京 : 高等教育出版社 ,1984: 5051 [2] MAXIN 公司 . MAX038 技術(shù)資料 [Z] . 2020. [3]丁元杰 . 單片 微 機原理及應(yīng)用 [M]. 北京 : 機械工業(yè)出版社 , 2020: 2539 [4]常新華 . 高頻信號發(fā)生器原理 [M]. 北京 : 電子工業(yè)出版社, 2020: 3243 [5]解月珍 . 信號產(chǎn)生電路 [J]. 電子應(yīng)用技術(shù) , 2020, 19(3): 512 [6]聶漢平 . 高頻精密函數(shù)波形發(fā)生器設(shè)計 [J]. 國外電子元器件 2020(1): 6366. [7]李琳 . 單片高頻函數(shù)發(fā)生器 MAX038 及其應(yīng)用 [J] . 現(xiàn)代電子技術(shù) , 2020, 12(2): 1517. [8]沈紅衛(wèi) . 單片機應(yīng)用系統(tǒng)設(shè)計實例與分析 [M]. 北京 : 航空航天大學(xué)出版社 ,2020: 2937 [9]江太輝 . 高頻波形發(fā)生器的特性 [J]. 信息技術(shù)報 , 2020, 6(3): 1031 [10]Sugeno M. High precision function waveform generator design[J]. IEEE Trans on Systems, Man and Cyberics, 2020, 15(2): 116123. [11] Kang B. Signal generating circuit[J]. Fuzzy Sets Syst, 1986, 18(2): 329335. 多功能信號 發(fā)生器 的設(shè)計 25 致 謝 首先 ,我要感謝的是我的導(dǎo)師張建平老師 . 張老師平日里工作繁多,但在我做畢業(yè)設(shè)計的每個階段,都給予我耐心的指導(dǎo)和幫助 . 可以說,沒有張老師的耐心指導(dǎo)和幫助,我是不可能順利完成我的畢業(yè)設(shè)計的 . 張老師淵博的學(xué)識,謙虛、嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度、靈活的思維方式、認(rèn)真的工作作風(fēng)和對學(xué)生的關(guān) 心都令我佩服不已,諄諄教誨使我受益匪淺,另外,張老師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度以及對待學(xué)生極端負(fù)責(zé)的精神,給我留下很深的印象,這必將在今后的學(xué)習(xí)和工作中給我鼓勵和鞭策,為以后步入社會、適應(yīng)工作奠定良好的基礎(chǔ) . 其次,感謝電信 0903 班的兄弟姐妹們,是他們陪伴我度過愉快的大學(xué)四年生活!最后我要感謝的是我親愛的物聯(lián)網(wǎng)工程學(xué)院的每一位老師和同學(xué) . 總之,感謝每一位關(guān)心過我,愛護過我的人 . 滴水之恩,當(dāng)涌泉相報 . 最后,再次感謝我的導(dǎo)師張建平老師 . 附錄 26 附錄 A 單片機程序 ifndef _SIGNALGEN_H // 防止 SignalGen. h 被重復(fù)引用 define _SIGNALGEN_H include reg52. h // 引用標(biāo)準(zhǔn)庫的頭文件 define uchar unsigned char uchar key。 // 按鍵值 sbit A0 = P2^0。 // MAX038 的波形選擇位 A0 sbit A1 = P2^1。 // MAX038 的波形選擇位 A1 void delay()。 uchar keyscan()。 endif /* 用于鍵消抖的延時函數(shù) */ void delay() { uchar i。 for (i=400。i0。i)。 } /* 鍵掃描函數(shù) */ uchar keyscan(void) { uchar scancode,tmpcode。 P1 = 0xf0。 // 發(fā)全 0 行掃描碼 if ((P1amp。0xf0)!=0xf0) // 若有鍵按下 { delay()。 // 延時去抖動 if ((P1amp。0xf0)!=0xf0) // 延時后再判斷一 次,去除抖動影響 { scancode = 0xfe。 while((scancodeamp。0x10)!=0) // 逐行掃描 { P1 = scancode。 // 輸出行掃描碼 if ((P1amp。0xf0)!=0xf0) // 本行有鍵按下 { tmpcode = (P1amp。0xf0)|0x0f。 /* 返回特征字節(jié)碼,為 1 的位即對應(yīng)于行和列 */ 附錄 27 return((~scancode)+(~tmpcode))。 } else scancode = (scancode1)|0x01。 // 行掃描碼左移一位 } } } return(0)。 // 無鍵按下,返回值為 0 } includereg52. h bit timeint0,timeint1。 unsigned char dispbuf[4]。 unsigned int period。 unsigned int timecount=0。 unsigned int count_1s。 unsigned char code table[]={0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71}。 //7 段數(shù)碼管代碼表 HEX_TO_BCD(unsigned int n) //十六進制數(shù)轉(zhuǎn) BCD 碼子程序, //將 BCD 碼送至顯示緩存數(shù)組 { unsigned char i。 //當(dāng)顯示的頻率超出范圍,顯示 EEEE 報錯 if (n9361) for(i=0。i4。i++) dispbuf[i]=0x0e。 else { dispbuf[6]=n/1000000。 //取出 百萬 位字節(jié) dispbuf[5]=(n/100000)%10。 //取出 十萬 位字節(jié) dispbuf[4]=(n/10000)%10。 //取出 萬 位字節(jié) dispbuf[3]=(n/1000)%10。 //取出千位字節(jié) dispbuf[2]=(n/100)%10。 //取出 百 位字節(jié) dispbuf[1]=(n/10)%10。 //取出十位字節(jié) dispbuf[0]=n%10。 //取出個位字節(jié) } } 附錄 28 void scandisp(void) //顯示子程序, //將顯示緩存數(shù)組中的 BCD 碼掃描并顯示在數(shù)碼管上 { unsigned char posi=0x01。 unsigned char i,j,temp。 for(i=0。i4。i++) //依次選中 4 個數(shù)碼管 { temp=dispbuf[i]。 //查出字碼 temp=table[temp]。 //第三位顯示小數(shù)點 if(i==1) { for(j=0。j200。j++) { P2=posi。 P0=temp|0x80。 } } else { for(j=0。j200。j++) {
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1