中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

酒業(yè)公司網(wǎng)站模板鄭州百度推廣公司

酒業(yè)公司網(wǎng)站模板,鄭州百度推廣公司,vi設(shè)計公司有哪些,合肥網(wǎng)站排名優(yōu)化公司目錄 一、理論基礎(chǔ) 二、FPGA程序 三、測試結(jié)果 一、理論基礎(chǔ) 能夠產(chǎn)生常規(guī)的波形,包括正弦波、方波和鋸齒波; 用鍵盤輸入編輯生成上述波形(同周期)的線性組合波形,以及由基波及其諧波(5次以下&#xff…

目錄

一、理論基礎(chǔ)

二、FPGA程序

三、測試結(jié)果


一、理論基礎(chǔ)

能夠產(chǎn)生常規(guī)的波形,包括正弦波、方波和鋸齒波;
用鍵盤輸入編輯生成上述波形(同周期)的線性組合波形,以及由基波及其諧波(5次以下)線性組合波形;
具有波形存儲功能;
輸出波形頻率范圍為100Hz-200KHz,頻率步進間隔<=100Hz;
輸出波形幅度范圍0-5V(峰-峰值),調(diào)整步距為0.1V;
能夠顯示輸出波形的類型、頻率和幅度;

?????? 這里,DDS的基本原理,就是將原始的信號保存到ROM中,然后通過頻率控制字讀取內(nèi)部的信號,通過修改頻率控制字的值,獲得對應(yīng)的頻率值。

?????? 關(guān)于幅度,則通過將輸入信號的幅度乘以一個固定的數(shù),獲得不同大小的頻率。

輸出波形頻率范圍為100Hz-200KHz,頻率步進間隔<=100Hz;

輸出波形幅度范圍0-5V(峰-峰值),調(diào)整步距為0.1V

? ? ? ? 假設(shè)晶振是40M,那么如果要輸出100Hz到200K之間的頻率范圍。以正弦波為例子。

??????? 那么通過計算頻率控制字,即如果以40M作為時鐘頻率,最小100Hz,最大200KHz,然后頻率控制字為24bit寬度。

? ? ? ? 那么100hz對應(yīng)的頻率控制值為:

A:42(100/40000000*2^24)

B: 83886 (200000/40000000*2^24)

通過修改頻率控制值,產(chǎn)生對應(yīng)的不同的頻率。

方波和鋸齒波做同樣的處理。

? ? ? ?然后對于幅度,0~5.布局為0.1,那么其分辨率為0.1V。那么整個調(diào)整區(qū)間為50,那么對應(yīng)的幅度,我們設(shè)置的位寬為12位(位數(shù)越高,其精度越高)

然后我們通過外部的按鍵,選擇信號類型,信號頻率,信號幅度。

然后再介紹一下那個線性組合的問題。

對于基波,我們直接通過加減法就可以實現(xiàn)。

? ? ? ?對于諧波,因為諧波是指頻率是基波頻率整數(shù)倍的信號,那么在這里,我加入了頻率為2~10倍這幾種范圍的諧波,具體只要選擇對應(yīng)頻率的諧波即可。然后對將諧波加入到原始信號中即可。

二、FPGA程序

通過設(shè)置如下的接口,我們可以分別獲得不同的信號組合,具體操作如下所示:

input???????i_clk;

系統(tǒng)時鐘,默認(rèn)時鐘為40M

input???????i_rst;

系統(tǒng)復(fù)位,輸入1,系統(tǒng)清零復(fù)位,輸入0,系統(tǒng)正常工作

input[3:0]??i_sel;

信號類型選擇按鍵,具體如下:

//signal?sel
//0:sin(正弦)
//1:square(方波)
//2:sawtooth(鋸齒波)
//3:k*sin(k為k倍頻率的諧波)
//4:k*square
//5:k*sawtooth
//6:sin+square(加號為線性組合功能)
//7:sin+sawtooth
//8:sawtooth+square
//9:sin+sawtooth+square
//10:sin+ksin
//11:sawtooth+k*sawtooth
//12:square+k*square

input???????i_amp_add;

幅度變大

input???????i_amp_sub;

幅度變小

input???????i_fre_add;

頻率變大

input???????i_fre_sub;

頻率變小

input[3:0]??i_fre_time;

產(chǎn)生幾倍頻率諧波,2~15

output[11:0]o_signal;

輸出信號

output[31:0]o_fre;

輸出當(dāng)前頻率

output[11:0]o_amp;

輸出當(dāng)前幅度

output[3:0]?o_signal_type;

輸出信號類型

頂層程序如下:

`timescale 1ps / 1ps
module tops(i_clk,i_rst,i_sel,i_amp_add,i_amp_sub,i_fre_add,i_fre_sub,i_fre_time,o_signal,o_fre,o_amp,o_signal_type);input       i_clk;
input       i_rst;
input[3:0]  i_sel;     //signal sel
//0:sin
//1:square
//2:sawtooth
//3:k*sin
//4:k*square
//5:k*sawtooth
//6:sin+square
//7:sin+sawtooth
//8:sawtooth+square
//9:sin+sawtooth+square
//10:sin+ksin
//11:sawtooth+k*sawtooth
//12:square+k*square
input       i_amp_add;
input       i_amp_sub;
input       i_fre_add;
input       i_fre_sub;
input[3:0]  i_fre_time; 
output[11:0]o_signal;
output[23:0]o_fre;
output[6:0] o_amp;
output[3:0] o_signal_type;reg[23:0]o_fre;
always @(posedge i_clk or posedge i_rst)
beginif(i_rst)begino_fre <= 24'd83886;end
else begin//frequency adjust//frequency adjustif(i_fre_add == 1'b1)o_fre <= o_fre + 24'd1;if(i_fre_sub == 1'b1)o_fre <= o_fre - 24'd1;if(o_fre <= 24'd42)o_fre <= 24'd42; 	if(o_fre >= 24'd83886)o_fre <= 24'd83886; end
endreg[5:0]amps;
always @(posedge i_clk or posedge i_rst)
beginif(i_rst)beginamps <= 7'b0111_111;end
else begin//frequency adjust//frequency adjustif(i_amp_add == 1'b1)amps <= amps + 7'd1;if(i_amp_sub == 1'b1)amps <= amps - 7'd1;if(amps <= 7'b0000_001)amps <= 7'b0000_001; 	if(amps >= 7'b0111_111)amps <= 7'b0111_111; end
endassign o_amp         = amps;
assign o_signal_type = i_sel; reg signed[18:0]tmps;
wire signed[11:0]sin1;
wire signed[11:0]cube1;
wire signed[11:0]saw1; 			  
DDS base(.i_clk  (i_clk),.i_rst  (i_rst),.i_k    (4'd1),.i_fre  (o_fre),.o_sin  (sin1),.o_cube (cube1),.o_saw  (saw1),.o_fre  (),.o_test1(),.o_test2());			  wire signed[11:0]sink;
wire signed[11:0]cubek;
wire signed[11:0]sawk; 			  
DDS h(.i_clk  (i_clk),.i_rst  (i_rst),.i_k    (i_fre_time),.i_fre  (o_fre),.o_sin  (sink),.o_cube (cubek),.o_saw  (sawk),.o_fre  (),.o_test1(),.o_test2());			  always @(posedge i_clk or posedge i_rst)
beginif(i_rst)begintmps <= 19'd0;end
else begincase(i_sel)0:tmps <= amps*sin1;1:tmps <= amps*cube1;2:tmps <= amps*saw1;3:tmps <= amps*sink;4:tmps <= amps*cubek;5:tmps <= amps*sawk;6:tmps <= amps*sin1[11:1] + amps*cube1[11:1];7:tmps <= amps*sin1[11:1] + amps*saw1[11:1];8:tmps <= amps*saw1[11:1] + amps*cube1[11:1];9:tmps <= amps*sin1[11:2] + amps*cube1[11:2] + amps*saw1[11:2];10:tmps <= amps*sin1[11:1] + amps*sink[11:1];11:tmps <= amps*cube1[11:1] + amps*cubek[11:1];12:tmps <= amps*saw1[11:1] + amps*sawk[11:1];default:tmps <= amps*sin1;endcase	end
end			 assign o_signal=tmps[18:7];			 
//0:sin
//1:square
//2:sawtooth//3:k*sin
//4:k*square
//5:k*sawtooth//6:sin+square
//7:sin+sawtooth
//8:sawtooth+square
//9:sin+sawtooth+square//10:sin+ksin
//11:sawtooth+k*sawtooth
//12:square+k*square			 endmodule 

三、測試結(jié)果

通過仿真,我們得到如下的幾組信號:

A35-15

?

http://www.risenshineclean.com/news/29094.html

相關(guān)文章:

  • wordpress點贊代碼北京seo網(wǎng)絡(luò)優(yōu)化師
  • 鹽城市住房城鄉(xiāng)建設(shè)委官方網(wǎng)站海陽seo排名優(yōu)化培訓(xùn)
  • 手機網(wǎng)站建設(shè)設(shè)計手機百度app免費下載
  • 長沙建個網(wǎng)站一般需要多少錢網(wǎng)絡(luò)營銷策劃方案
  • 金華電子商務(wù)網(wǎng)站建設(shè)百度怎么做廣告推廣
  • 高端型網(wǎng)站制作永久免費google搜索引擎
  • 網(wǎng)站建設(shè) 安慶關(guān)鍵詞全網(wǎng)搜索工具
  • 利為匯wordpress教程廈門關(guān)鍵詞seo排名網(wǎng)站
  • 寧城網(wǎng)站建設(shè)公司百度怎么免費推廣
  • 游戲網(wǎng)站開發(fā)視頻制作一個簡單的網(wǎng)站
  • 公司網(wǎng)站沒備案最近營銷熱點
  • 東莞php網(wǎng)站建設(shè)快速排名seo
  • wordpress 整站帶數(shù)據(jù)互動營銷的方式有哪些
  • asp做微網(wǎng)站設(shè)計濟南網(wǎng)站seo公司
  • 自己做的網(wǎng)站標(biāo)題青島網(wǎng)絡(luò)推廣公司排名
  • 企業(yè)負(fù)責(zé)人電話名錄百度搜索優(yōu)化怎么做
  • 企業(yè)做網(wǎng)站有什么好處壞處百度愛采購優(yōu)化軟件
  • 傳媒公司做網(wǎng)站條件如何讓關(guān)鍵詞排名靠前
  • wordpress數(shù)據(jù)表開頭小紅書seo排名規(guī)則
  • wordpress換域名換服務(wù)器寧波seo在線優(yōu)化
  • 長沙網(wǎng)站搭建百度引流推廣費用多少
  • 網(wǎng)站內(nèi)容建設(shè)ppt目前最新的營銷方式有哪些
  • 東昌府網(wǎng)站建設(shè)公司營銷對企業(yè)的重要性
  • 網(wǎng)站開發(fā)必用代碼西安百度競價托管代運營
  • 萊蕪 做網(wǎng)站 公司百度權(quán)重提升
  • 淮南網(wǎng)站建設(shè)好的公司百姓網(wǎng)推廣怎么收費標(biāo)準(zhǔn)
  • 微網(wǎng)站入口sem和seo的關(guān)系
  • 旅游網(wǎng)站設(shè)計說明書網(wǎng)絡(luò)營銷推廣方案步驟
  • 做百度翻譯英文網(wǎng)站信息流廣告優(yōu)秀案例
  • 法治政府建設(shè)網(wǎng)站四川seo平臺