低頻雙相函數(shù)信號發(fā)生器的設(shè)計論文_第1頁
低頻雙相函數(shù)信號發(fā)生器的設(shè)計論文_第2頁
低頻雙相函數(shù)信號發(fā)生器的設(shè)計論文_第3頁
低頻雙相函數(shù)信號發(fā)生器的設(shè)計論文_第4頁
低頻雙相函數(shù)信號發(fā)生器的設(shè)計論文_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 . 摘 要信號發(fā)生器是一種能產(chǎn)生模擬電壓波形的設(shè)備,這些波形能夠校驗電子電路的設(shè)計。信號發(fā)生器廣泛用于電子電路、自動控制系統(tǒng)和教學(xué)實驗等領(lǐng)域。目前使用的信號發(fā)生器大部分是函數(shù)信號發(fā)生器,且特殊波形發(fā)生器的價格昂貴。所以本設(shè)計使用的是STM32單片機(jī)構(gòu)成的發(fā)生器,可產(chǎn)生三角波、方波、正弦波、鋸齒波,波形的頻率可用程序控制改變。此系統(tǒng)使用STM32部的DAC轉(zhuǎn)換器,節(jié)約空間和成本。本設(shè)計具有線路簡單、結(jié)構(gòu)緊湊、價格低廉、性能優(yōu)越等優(yōu)點(diǎn)。兩路信號頻率圍從1000Hz到2000Hz可調(diào),步進(jìn)值1Hz,頻率準(zhǔn)確度不低于3%,且每路信號頻率和步進(jìn)值單獨(dú)程控可調(diào);產(chǎn)生兩路頻率一樣的正弦信號,程控設(shè)置其相位

2、差,可以在0360度變化,設(shè)置相位差的精度不大10度;產(chǎn)生的方波占空比在1%99%圍可調(diào),設(shè)置分辨率不低于1%。兩路信號輸出最大幅度不低于2.5V,每路幅度單獨(dú)程控可調(diào),設(shè)置分辨率不低于100mv;本信號發(fā)生器既可實現(xiàn)產(chǎn)生低頻信號,也可實現(xiàn)產(chǎn)生高頻信號,產(chǎn)生的信號為特定頻率信號。關(guān)鍵詞:信號發(fā)生器,STM32,DDS,波形目 錄第 1 章 緒 論41.1 課題背景41.2 數(shù)字信號發(fā)生器簡介4第2章 低頻信號發(fā)生器的方案研究.5 2.1 方案的構(gòu)思與選擇52.2 方案的實現(xiàn)5第3章 硬件電路的設(shè)計.73.1 系統(tǒng)總體框圖與其結(jié)構(gòu)分析.73.1.1 系統(tǒng)框圖展示.73.1.2 雙向低頻信號發(fā)生器

3、的使用方法.73.2 硬件模塊展示與分析.83.2.1 STM32單片機(jī)模塊簡介.83.2.2 顯示與控制模塊.93.2.3 電源模塊.10第 4 章 波形產(chǎn)生與其軟件設(shè)計.114.1軟件總體設(shè)計.114.2波形產(chǎn)生.114.2.1 DDS數(shù)字法信號合成技術(shù).114.2.2矩形波.114.2.3三角波.124.2.4 正弦波.134.2.5鋸齒波.14結(jié) 論.16參考文獻(xiàn).17附錄一 試驗完整程序18附錄二 實驗成果展示38第 1 章 緒 論1.1 課題背景 隨著電子測量與其他部門對各類信號發(fā)生器的廣泛需求與電子技術(shù)的迅速發(fā)展,促使信號發(fā)生器種類增多,性能提高。尤其隨著70年代微處理器的出現(xiàn),

4、更促使信號發(fā)生器向著自動化、智能化方向發(fā)展?,F(xiàn)在,許多信號發(fā)生器帶有微處理器,因而具備了自校、自檢、自動故障診斷和自動波形形成和修正等功能,可以和控制計算機(jī)與其他測量儀器一起方便的構(gòu)成自動測試系統(tǒng)。當(dāng)前信號發(fā)生器總的趨勢是向著寬頻率覆蓋、低功耗、高頻率精度、多功能、自動化和智能化方向發(fā)展。在科學(xué)研究、工程教育與生產(chǎn)實踐中,如工業(yè)過程控制、教學(xué)實驗、機(jī)械振動試驗、動態(tài)分析、材料試驗、生物醫(yī)學(xué)等領(lǐng)域,常常需要用到低頻信號發(fā)生器。而在我們?nèi)粘I钪?,以與一些科學(xué)研究中,鋸齒波和正弦波、矩形波信號是常用的基本測試信號。譬如在示波器、電視機(jī)等儀器中,為了使電子按照一定規(guī)律運(yùn)動,以利用熒光屏顯示圖像,常用

5、到鋸齒波產(chǎn)生器作為時基電路。信號發(fā)生器作為一種通用的電子儀器,在生產(chǎn)、科研、測控、通訊等領(lǐng)域都得到了廣泛的應(yīng)用。 但市面上能看到的儀器在頻率精度、帶寬、波形種類與程控方面都已不能滿足許多方面實際應(yīng)用的需求。加之各類功能的半導(dǎo)體集成芯片的快速生產(chǎn),都使我們研制一種低功耗、寬頻帶,能產(chǎn)生多種波形并具有程控等低頻的信號發(fā)生器成為可能。1.2 數(shù)字信號發(fā)生器簡介 數(shù)字信號指幅度的取值是離散的,幅值表示被限制在有限個數(shù)值之。二進(jìn)制碼就是一種數(shù)字信號。二進(jìn)制碼受噪聲的影響小,易于有數(shù)字電路進(jìn)行處理,所以得到了廣泛的應(yīng)用。凡是產(chǎn)生測試信號的儀器,統(tǒng)稱信號源也稱為信號發(fā)生器,它用于產(chǎn)生被測電路所需特定參數(shù)的電

6、測試信號。在測試、研究或調(diào)整電子電路與設(shè)備時,為測定電路的一些電參量,如測量頻率響應(yīng)、 噪聲系數(shù),為電壓表定度等,都要求提供符合所定技術(shù)條件的電信號,以模擬在實際工作中使用的待測設(shè)備的激勵信號。當(dāng)要求進(jìn)行系統(tǒng)的穩(wěn)態(tài)特性測量時,需使用振幅、頻率已知的正弦信號源。當(dāng)測試系統(tǒng)的瞬態(tài)特性時,又需使用前沿時間、脈沖寬度和重復(fù)周期已知的矩形脈沖源。并且要求信號源輸出信號的參數(shù),如頻率、波形、輸出電壓或功率等,能在一定圍進(jìn)行精確調(diào)整,有很好的穩(wěn)定性,有輸出指示。 第2章 低頻雙相信號發(fā)生器的方案研究2.1 總體方案構(gòu)思與選擇波形發(fā)生器可以基于模擬技術(shù),也可以基于數(shù)字技術(shù)。模擬發(fā)生器利用模擬硬件來產(chǎn)生簡單的函

7、數(shù),并在需要指定頻率的靜態(tài)正弦波或方波時經(jīng)常使用。而數(shù)字函數(shù)發(fā)生器采用直接數(shù)字綜合技術(shù),DAC,數(shù)字信號處理。 。根據(jù)設(shè)計要求,為實現(xiàn)發(fā)生儀應(yīng)有的功能,選擇使用單片機(jī)、定時器、DA轉(zhuǎn)換器作為信號發(fā)生部分,由真彩屏作為人機(jī)界面的設(shè)計思路。構(gòu)思框圖如下圖所示。圖2-1-1 構(gòu)思框圖2.2 方案的實現(xiàn)根據(jù)雙向低頻信號發(fā)生器的功能需要,我們選用stm32單片機(jī)。使用STM32減少了外拓替他芯片,提高了一起的系統(tǒng)可靠性,其計算能力更強(qiáng),計算速度更快,提高了波形實現(xiàn)的準(zhǔn)確度。STM32系列基于專為要求高性能、低成本、低功耗的嵌入式應(yīng)用專門設(shè)計的ARM Cortex-M3核。按性能分成兩個不同的系列:STM

8、32F103“增強(qiáng)型”系列和STM32F101“基圖2-2-1 STM32單片機(jī) 本型”系列。增強(qiáng)型系列時鐘頻率達(dá)到72MHz,是同類產(chǎn)品中性能最高的產(chǎn)品;基本 型時鐘頻率為36MHz,以16位產(chǎn)品的價格得到比16位產(chǎn)品大幅提升的性能,是16位產(chǎn)品用戶的最佳選擇。兩個系列都置32K到128K的閃存,不同的是SRAM的最大容量和外設(shè)接口的組合。時鐘頻率72MHz時,從閃存執(zhí)行代 碼,STM32功耗36mA,是32位市場上功耗最低的產(chǎn)品,相當(dāng)于0.5mA/MHz。 控制與顯示界面選用的是TFT2.4寸的LCD液晶顯示屏,與電子觸摸屏。采用2.4寸彩色液晶顯示屏作為人機(jī)交互界面既美觀,同時又能直接方

9、便的調(diào)節(jié)對各通道各波形參數(shù)進(jìn)行調(diào)節(jié);在一種對外界完全隔離的環(huán)境下工作,不怕灰塵、水汽和油污,能適應(yīng)各種惡劣環(huán)境;可以用任何物體來觸摸,穩(wěn)定性較好;四層結(jié)構(gòu)造成其透光率較低;使用壽命相對較長;屏幕比較便宜;反應(yīng)靈敏度也較好。 第3章 硬件電路的設(shè)計3.1 系統(tǒng)總體框圖與其結(jié)構(gòu)分析3.1.1 系統(tǒng)框圖展示雙向低頻信號發(fā)生器系統(tǒng)主要由CPU、定時器、兩路12位DA轉(zhuǎn)換器、控制與顯示電路、供電電源等電路組成。系統(tǒng)總體框圖如下圖所示。圖3-1-1-1 系統(tǒng)總體框圖3.1.2 雙向低頻信號發(fā)生器的使用方法雙向低頻信號發(fā)生器通過320*240彩色觸摸屏作為人機(jī)界面調(diào)節(jié)兩路波形,波形幅度,波形頻率以與方波的占

10、空比和正弦波的相位差。如圖3-1-2-1的顯示與控制界面圖,觸摸通道一下方的開(即打開通道一),點(diǎn)按通道區(qū)域波形處,即可改變波形(依次由三角波,正弦波,方波,鋸齒波進(jìn)行循環(huán)調(diào)節(jié));在確定波 形以后,可點(diǎn)按通道一的頻率區(qū)進(jìn)行圖3-1-2-1 顯示與控制界 1000Hz2000Hz的頻率調(diào)節(jié),其中每點(diǎn)按一次頻率區(qū)依次對頻率的千、百、十、個位進(jìn)行上下調(diào)節(jié)(上下由調(diào)頻處的上下按鍵改變);點(diǎn)按通道一的幅度區(qū)對幅度調(diào)節(jié),每點(diǎn)按一次幅度值增加0.1V;特別的對于方波觸摸通道一的占空比處可改變方波的占空比大小(由1%99%進(jìn)行循環(huán)),每點(diǎn)按一次增加1%;同樣的方式對通道二各波形參數(shù)進(jìn)行調(diào)節(jié)。另外在兩路正弦波處

11、于工作顯示狀態(tài)時,可點(diǎn)按相位差處對兩路相位差進(jìn)行調(diào)節(jié)(0°360°進(jìn)行循環(huán)),每點(diǎn)按一次相位差增加1°。在各通道,各參數(shù)都確定以后,觸摸左上方“輸出”按鍵,即可輸出所要求的波形。、3.2 硬件模塊展示與分析3.2.1 STM32單片機(jī)模塊簡介STM32F103部主要配置:核:ARM32位Cortex-M3 CPU,最高工作頻率72MHz,1.25DMIPS/MHz。單周期乘法和硬件除法。存儲器:片上集成32-512KB的Flash存儲器。6-64KB的SRAM存儲器。時鐘、復(fù)位和電源管理:2.0-3.6V的電源供電和I/O接口的驅(qū)動電壓。POR、PDR和課編程的電

12、壓探測器(PVD)。4-16MHz的晶振。嵌出廠前調(diào)校的8MHz RC振蕩電路。部40 kHz的RC振蕩電路。用于CPU時鐘的PLL。帶校準(zhǔn)用于RTC的32kHz的晶振。低功耗:3種低功耗模式:休眠,停止,待機(jī)模式。為RTC和備份寄存器供電的VBAT。調(diào)試模式:串行調(diào)試(SWD)和JTAG接口。圖3-2-1-1 STM32最小系統(tǒng)DMA:12通道DMA控制器。支持的外設(shè):定時器,ADC,DAC,SPI,IIC和USART。2個12位的us級的A/D轉(zhuǎn)換器(16通道):A/D測量圍:0-3.6 V。雙采樣和保持能力。片上集成一個溫度傳感器。2通道12位D/A轉(zhuǎn)換器:STM32F103xC,STM

13、32F103xD,STM32F103xE獨(dú)有。最多高達(dá)112個的快速I/O端口:根據(jù)型號的不同,有26,37,51,80,和112的I/O端口,所有的端口都可以映射到16個外部中斷向量。除了模擬輸入,所有的都可以接受5V以的輸入。最多多達(dá)11個定時器:4個16位定時器,每個定時器有4個IC/OC/PWM或者脈沖計數(shù)器。2個16位的6通道高級控制定時器:最多6個通道可用于PWM輸出。2個看門狗定時器(獨(dú)立看門狗和窗口看門狗)。Systick定時器:24位倒計數(shù)器。2個16位基本定時器用于驅(qū)動DAC。最多多達(dá)13個通信接口:2個IIC接口(SMBus/PMBus)。5個USART接口(ISO781

14、6接口,LIN,IrDA兼容,調(diào)試控制)。3個SPI接口(18 Mbit/s),兩個和IIS復(fù)用。CAN接口(2.0B)。USB 2.0全速接口。SDIO接口。3.2.2 顯示與控制模塊液晶屏配置簡介:1.模塊名稱2.4寸240x320全視角液晶顯示模塊 3.顯示模式: TFT4.分辨率: 240*3205.尺寸: 42.72*60.26*2.1mm6.可視面積37.72*49.96 mm7.點(diǎn)陣區(qū)36.72*48.96mm8. 接口類型: 8080 8/16位并口模式 9. 9.連接類型:COG+FPC 圖3-2-2-1 液晶屏引腳配置10.視角:全視角 電阻式觸摸屏是一種傳感器,

15、它 將矩形區(qū)域中的觸摸點(diǎn)(X,Y)的物理位置轉(zhuǎn)換為代表X坐標(biāo)和y坐標(biāo)的電壓。很多LCD模塊都采用了電阻式觸摸屏,這種屏幕可以用四線,五線,七線或八線來產(chǎn)生屏幕偏置電壓,同時讀回觸摸點(diǎn)的電壓。 電阻式觸摸屏基本上是薄膜加上玻璃的結(jié)構(gòu),當(dāng)觸摸時,薄膜下層的ITO會接觸到玻璃上層的ITO,經(jīng)由感應(yīng)器傳出一個訊息,再從控制器送到計算機(jī)端,藉由驅(qū)動程序轉(zhuǎn)化到屏幕上的X、Y值,而完成點(diǎn)選的動作,并呈現(xiàn)在屏幕上。 采用2.4寸彩色液晶顯示屏作為人機(jī)交互界面既美觀,同時又能直接方便的調(diào)節(jié)對各通道各波形參數(shù)進(jìn)行調(diào)節(jié); 在一種對外界完全隔離的環(huán)境下工作,不怕灰塵、水汽和油污,能適應(yīng)各種惡劣環(huán)境;可以用任何物體來觸

16、摸,穩(wěn)定性較好,;四層結(jié)構(gòu)造成其透光率較低;使用壽命相對較長;屏幕比較便宜;反應(yīng)靈敏度也較好。 3.2.3 電源模塊STM32的工作電壓(VDD)為2.03.6V。通過置的電壓調(diào)節(jié)器提供所需的1.8V電源。 當(dāng)主電源VDD掉電后,通過VBAT腳為實時時鐘(RTC)和備份寄存器提供電源。圖3-2-3-1圖3-2-3-2第 4 章 波形產(chǎn)生與其軟件設(shè)計4.1軟件總體設(shè)計應(yīng)用系統(tǒng)中的應(yīng)用軟件是根據(jù)系統(tǒng)功能要求而設(shè)計的,能可靠地實現(xiàn)系統(tǒng)的各種功能。系統(tǒng)的軟件包括以下幾個程序模塊:初始化程序;鍵盤掃描程序與處理程序;定時器2服務(wù)程序;正弦波、三角波、方波、鋸齒波發(fā)生程序與其服務(wù)程序;中斷處理程序等等。詳

17、細(xì)見附錄1。4.2波形產(chǎn)生4.2.1 DDS數(shù)字法信號合成技術(shù)DDS技術(shù)是采用直接數(shù)字合成(Direct Digital Synthesis)的方法實現(xiàn)信號產(chǎn)生。該技術(shù)具有頻率轉(zhuǎn)換速度快、頻率分辨率高、易于控制的突出特點(diǎn)。直接數(shù)字合成技術(shù)近年來發(fā)展得很快,而要產(chǎn)生任意波形就必須采用直接數(shù)字很成技術(shù)。數(shù)字函數(shù)發(fā)生器圖4-2-1-1 DDS原理圖 采用直接數(shù)字綜合DDS,DAC,數(shù)字信號處理,以與一個單周期存儲緩沖器來產(chǎn)生信號。DDS技術(shù)依賴數(shù)字控制的方法,利用單基準(zhǔn)時鐘頻率來實現(xiàn)一個模擬頻率源。DDS能夠?qū)崿F(xiàn)高精度和高分辨率,高溫度穩(wěn)定度,高寬帶,以與隨機(jī)的和相位連續(xù)的頻率切換。4.2.2矩形波

18、矩形波被廣泛用于數(shù)字開關(guān)電路, 矩形波電壓只有兩種狀態(tài),不是高電平,就是低電平,所以電壓比較器是它的重要組成部分;因為產(chǎn)生振蕩,就是要求輸出的兩種狀態(tài)自動地相互轉(zhuǎn)換,所以電路中必須引入反饋;因為輸出狀態(tài)應(yīng)按一定的時間間隔交替變化,即產(chǎn)生周期性變化,所以電路中要有延遲環(huán)節(jié)來確定每種狀態(tài)維持的時間。方波函數(shù)是一種常用的波形函數(shù),其表達(dá)式為: 圖4-2-2-1方波的波形圖方波的函數(shù)如下:u32 ju_out(void) ha+;if(ha<zkb1)ak47=4095; if(ha>zkb1)ak47=0;if(ha=4096)ha=0;return ak47;4.2.3三角波 .三角波

19、與鋸齒波很相似,,主要用在CRT作顯示器件的掃描電路中.如示波器,顯像管,顯示器等.CRT是由許多點(diǎn)組成的.要形成光柵就要有電子束轟擊這些發(fā)光點(diǎn).掃描電路分水平和垂直掃描兩種.可以一行或一幀的對CRT進(jìn)行掃描.電子束從第一行或幀的一端開始掃到另一端,馬上返回掃第二行或第二幀,鋸齒波的特點(diǎn)是電壓漸漸增大然后又逐漸降低,正好適合用于掃描電路中。圖4-2-3-1 三角波的波形圖三角波的函數(shù)如下:u32 san_out(void) if(debug=0) i=1; if(debug=4096) i=0; if(i=1) debug=debug+2; if(i=0) debug=debug-2; ret

20、urn debug; 4.2.4 正弦波 正弦波即是頻率成分最為單一的一種信號,因這種信號的波形是數(shù)學(xué)上的正弦曲線而得名。正弦信號與余弦信號,兩者只是在相位上相差2,可以統(tǒng)稱為正弦信號。其一般形式為: f (t)=A sin(t+ ) 式中,A 為振幅, 是角頻率, 為初相位。上述三量是正弦信號的三要素。它的波形見圖1。正弦信號是周期信號,其周期T 與頻率f 與角頻率 之間的關(guān)系為:正弦波函數(shù)如下:u32 zheng_out(void) u32 value;if(no<4095) value=sin(no+xwc1)*2*PI/4096)*2048+2048; no+;else no =

21、 0;圖4-2-4-1 正弦波的波形圖return value; 4.2.5鋸齒波鋸齒波,同樣也用在CRT作顯示器件的掃描電路中.如示波器,顯像管,顯示器等.CRT是由許多點(diǎn)組成的.要形成光柵就要有電子束轟擊這些發(fā)光點(diǎn).掃描電路分水平和垂直掃描兩種.可以一行或一幀的對CRT進(jìn)行掃描.電子束從第一行或幀的一端開始掃到另一端,馬上返回掃第二行或第二幀,鋸齒波的特點(diǎn)是電壓漸漸增大突然降到零,同樣適合用于掃描電路中。圖4-2-5-1 鋸齒波的波形圖鋸齒波函數(shù)如下:u32 awm_out(void) mvp=mvp+1;if(mvp>4096) mvp=0;return mvp;結(jié) 論經(jīng)過各組員的

22、共同努力和老師的悉心指導(dǎo),我們最終完成了我們的作品。作品性能總結(jié)如下:(1)兩路信號均可程控輸出正弦波、方波、三角波和鋸齒波;(2) 兩路信號輸出最大幅度不低于3.3V,每路幅度單獨(dú)程控可調(diào),設(shè)置分辨率不低于100mv;(3) 兩路信號頻率圍從1Hz到3000Hz可調(diào),步進(jìn)值1Hz,頻率準(zhǔn)確度不低于3%,且每路信號頻率和步進(jìn)值單獨(dú)程控可調(diào);(4)產(chǎn)生兩路頻率一樣的正弦信號,程控設(shè)置其相位差,可以在0360度變化,設(shè)置相位差的精度不大10度;(5)產(chǎn)生的方波占空比在1%99%圍可調(diào),設(shè)置分辨率不低于1%;在設(shè)計過程中,應(yīng)用的知識有電路基礎(chǔ),模擬電子,數(shù)字電子,PROTEL99SE等,回顧一下,我

23、們回顧了以前學(xué)過的知識,使自己的專業(yè)視野有所拓展,也是我們認(rèn)識到學(xué)識有待提高,在設(shè)計和實驗過程中,與同學(xué)相互協(xié)作,討論研究,也提升了我們的團(tuán)隊精神。參考文獻(xiàn)1 自美電子線路設(shè)計實驗測試(第三版)M:華中科技大學(xué).2000年7月.2梓城實用電子電路設(shè)計與調(diào)試M:中國電力.2006.63麗,鎮(zhèn),厚軍.基于FPGA的多波形信號發(fā)生器J.無線電工程,2OO5(7):46-484志軼,晶,靳煌.DDS原理與在高速跳頻系統(tǒng)中的應(yīng)用J.船舶電子工程,2005,25(l):105嘉佳,志浩,王天麟一種基于DDS芯片AD9959的高精度信號發(fā)生器J.自動化儀表.2007(4):50-536徐愛鈞,秀華.單片機(jī)高

24、級語言C51應(yīng)用程序設(shè)計M.電子工業(yè),1998. 12-27世倉,柴任,胡新梅.一種新型兩路正弦波信號發(fā)生器的研究J.科技學(xué)院報,2002(4):459-468朱立鋒.傳統(tǒng)的和基于DDS的AWG之間的區(qū)別J.國外電子測量技術(shù),1996,(1):1219田新廣,爾揚(yáng),鄰書躍.DDS幅度量化雜散信號的頻譜研究J.通信學(xué)報,Vol.24,No.7,79-85,200附錄一實驗完整程序:39 / 40#include "stm32f10x.h"#include "DAC.h"#include "stm32f10x_it.h"#include

25、"stm32f10x_tim.h"#include "stm32f10x_dac.h"#include "ili9320.h"#include "Touch.h"#include "stdio.h"#include "math.h"#define PI 3.1415926u16 x,y;/觸摸屏位置float zkb1=0;/占空比1u32 zkx1=99;u8 zhan18;float zkb2=0;/占空比2u32 zkx2=99;u8 zhan28;float A1=0

26、.76;/調(diào)整幅值float A2=0.76;u8 tj=0;/調(diào)頻位選擇u8 tj2=0;u8 fuzhi18;/幅值顯示u32 fx1=25;u8 fuzhi28;u32 fx2=25;u32 ma=0;/選擇波形u32 mb=0;u16 app=0;/通道選擇u16 ban=0;u32 date4096;/波形存儲u32 date24096;u32 pl1=1000;/頻率u8 pin18;u32 pl2=1000;u8 pin28;float xwc1=2048;/相位差u32 xwx1=180;u8 xiang18;u16 h,k;/隨機(jī)使用變量u16 a,a2,b,b2,c,c2,

27、da,da2;u32 no=0,no2;/*函數(shù)聲明*/void GPIO_Configuration(void);u32 san_out(void);u32 zheng_out(void);u32 zheng2_out(void);u32 ju_out(void);u32 ju2_out(void);u32 awm_out(void);void x_out(void);void y_out(void);void m_out(void);void n_out(void);void x2_out(void);void y2_out(void);void m2_out(void);void n2_

28、out(void);/*主函數(shù)*/int main(void)DAC_RCC_Configuration();DAC_GPIO_Configuration();dac_config();TIM_Configuration();NVIC_Configuration();TIM2_IRQHandler();SPI_Config();ili9320_Initializtion();ili9320_Clear(Red); GUI_Line(10,15,315,15,Black);GUI_Line(10,45,315,45,Black);GUI_Line(10,75,315,75,Black);GUI_

29、Line(10,105,315,105,Black); GUI_Line(10,135,315,135,Black);GUI_Line(10,165,315,165,Black);GUI_Line(10,195,315,195,Black);GUI_Line(10,225,315,225,Black);GUI_Line(10,15,10,225,Black);GUI_Line(110,15,110,225,Black);GUI_Line(215,15,215,165,Black);GUI_Line(215,195,215,225,Black);GUI_Line(315,15,315,225,B

30、lack);GUI_Line(180,165,180,195,Black);Putstr_color(36,48,"幅度", 24, Black,Blue ,TRANSP );Putstr_color(36,78,"波形", 24, Black,Blue ,TRANSP );Putstr_color(36,108,"頻率", 24, Black,Blue ,TRANSP );Putstr_color(24,138,"占空比", 24, Black,Blue ,TRANSP );Putstr_color(24,168

31、,"相位差", 24, Black,Blue ,TRANSP );Putstr_color(11,198,"調(diào)節(jié)", 24, Black,Blue ,TRANSP );Putstr_color(61,198,"確定", 24, Black,Blue ,TRANSP );Putstr_color(120,198,"開 關(guān)", 24, Black,Yellow ,TRANSP );Putstr_color(145,198," ", 24, Black,Red ,TRANSP );Putstr_col

32、or(252,168,"上", 24, Black,Blue ,TRANSP );Putstr_color(225,198,"開 關(guān)", 24, Black,Yellow ,TRANSP );Putstr_color(250,198," ", 24, Black,Red ,TRANSP );Putstr_color(282,168,"下", 24, Black,Blue ,TRANSP );Putstr_color(124,18,"通道一", 24, Black,Yellow ,TRANSP )

33、;Putstr_color(224,18,"通道二", 24, Black,Yellow ,TRANSP );Putstr_color(36,18,"輸出", 24, Black,Blue ,TRANSP );Putstr_color(182,168,"調(diào)頻:", 24, Black,Red ,TRANSP );pin10=0x31;pin11=0x30;pin12=0x30;pin13=0x30;pin14='H'pin15='Z'pin20=0x31;pin21=0x30;pin22=0x30;pi

34、n23=0x30;pin24='H'pin25='Z' while(1) x=TPReadX();/觸摸檢測y=TPReadY();Putstr_color(124,18,"通道一", 24, Black,Yellow ,TRANSP );Putstr_color(224,18,"通道二", 24, Black,Yellow ,TRANSP );/*通道1*/*通道1選擇開關(guān)*/if(x>120&&x<145&&y>198&&y<225)app=1;i

35、f(x>175&&x<200&&y>198&&y<225)app=0;for(b=0;b<=4096;b+) dateb=0; if(x>61&&x<110&&y>198&&y<225) tj=0; tj2=0;/*選擇通道1波形區(qū)域*/if(app=1)Putstr_color(124,18,"通道一", 24, Black,Blue ,TRANSP );if(x>120&&x<200&&

36、amp;y>75&&y<105) ma+; if(ma>4) ma=1; switch(ma)case 1:/三角波Putstr_color(124,78,"三角波",24,Blue,Red,NORMAL);Putstr_color(115,108,pin1,24,Blue,Red, NORMAL);if(x>120&&x<184&&y>48&&y<72) /幅值 fx1=fx1+1;A1=A1+0.03;if(fx1>33)fx1=1;A1=0.03; fuzh

37、i10=(fx1)/10+0x30;fuzhi11='.'fuzhi12=(fx1)%10+0x30;fuzhi13='V'fuzhi14=0;Putstr_color(130,48,fuzhi1,24,Blue,Red, NORMAL);if(x>115&&x<200&&y>108&&y<132)/頻率tj+;if(tj=5)tj=0;if(tj=1) Putstr_color(115,108," ",24,Red,Black, NORMAL); if(x>252

38、&&x<277&&y>168&&y<193) pin10=pin10+1; if(pin10>0x39) pin10=0x30; if(x>282&&x<306&&y>168&&y<193) pin10=pin10-1; if(pin10<0x30) pin10=0x39; if(tj=2) Putstr_color(131,108," ",24,Red,Black, NORMAL); if(x>252&&

39、;x<277&&y>168&&y<193) pin11=pin11+1; if(pin11>0x39) pin11=0x30; if(x>282&&x<306&&y>168&&y<193) pin11=pin11-1; if(pin11<0x30) pin11=0x39; if(tj=3) Putstr_color(147,108," ",24,Red,Black, NORMAL); if(x>252&&x<277

40、&&y>168&&y<193) pin12=pin12+1; if(pin12>0x39) pin12=0x30; if(x>282&&x<306&&y>168&&y<193) pin12=pin12-1; if(pin12<0x30) pin12=0x39; if(tj=4) Putstr_color(163,108," ",24,Red,Black, NORMAL); if(x>252&&x<277&&

41、;y>168&&y<193) pin13=pin13+1; if(pin13>0x39) pin13=0x30; if(x>282&&x<306&&y>168&&y<193) pin13=pin13-1; if(pin13<0x30) pin13=0x39; if(x>252&&x<310&&y>168&&y<193)pl1=(pin10-0x30)*1000+(pin11-0x30)*100+(pin12-0x

42、30)*10+pin13-0x30; if(x>24&&x<72&&y>18&&y<42)/輸出y_out();break;case 2:/正弦波Putstr_color(124,78,"正弦波",24,Blue,Red,NORMAL);Putstr_color(115,108,pin1,24,Blue,Red, NORMAL);if(x>120&&x<184&&y>48&&y<72)/幅值 fx1=fx1+1;A1=A1+0.03

43、;if(fx1>33)fx1=1;A1=0.03; fuzhi10=(fx1)/10+0x30;fuzhi11='.'fuzhi12=(fx1)%10+0x30;fuzhi13='V'fuzhi14=0;Putstr_color(130,48,fuzhi1,24,Blue,Red, NORMAL);if(x>115&&x<200&&y>108&&y<132)/頻率tj+;if(tj=5)tj=0;if(tj=1) Putstr_color(115,108," ",2

44、4,Red,Black, NORMAL); if(x>252&&x<277&&y>168&&y<193) pin10=pin10+1; if(pin10>0x39) pin10=0x30; if(x>282&&x<306&&y>168&&y<193) pin10=pin10-1; if(pin10<0x30) pin10=0x39; if(tj=2) Putstr_color(131,108," ",24,Red,Bla

45、ck, NORMAL); if(x>252&&x<277&&y>168&&y<193) pin11=pin11+1; if(pin11>0x39) pin11=0x30; if(x>282&&x<306&&y>168&&y<193) pin11=pin11-1; if(pin11<0x30) pin11=0x39; if(tj=3) Putstr_color(147,108," ",24,Red,Black, NORMA

46、L); if(x>252&&x<277&&y>168&&y<193) pin12=pin12+1; if(pin12>0x39) pin12=0x30; if(x>282&&x<306&&y>168&&y<193) pin12=pin12-1; if(pin12<0x30) pin12=0x39; if(tj=4) Putstr_color(163,108," ",24,Red,Black, NORMAL); if(x&

47、gt;252&&x<277&&y>168&&y<193) pin13=pin13+1; if(pin13>0x39) pin13=0x30; if(x>282&&x<306&&y>168&&y<193) pin13=pin13-1; if(pin13<0x30) pin13=0x39; if(x>252&&x<310&&y>168&&y<193)pl1=(pin10-0x30

48、)*1000+(pin11-0x30)*100+(pin12-0x30)*10+pin13-0x30; if(x>115&&x<215&&y>168&&y<192)if(ma=2&&mb=2)xwx1=xwx1+1;xwc1=xwc1+11.38;if(xwx1>360) xwx1=0;xwc1=0;xiang10=xwx1/100+0x30;xiang11=(xwx1%100)/10+0x30;xiang12=xwx1%10+0x30;Putstr_color(112,168,xiang1,24,Blue,Red, NORMAL);Putstr_color(157,168,"°", 16,Blue,Red, NORMAL);if(x>24&&x<72&&y>18&&y<42)x_out();break;case 3:Putstr_color(124,78," 方波 ",24,Blue,Red,NORMAL);Putstr_color(115,108,pin1,24,Blue,Red, NORMAL);if(x

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論