名称:波形发生器DA输出模拟信号Verilog代码Quartus仿真
软件:Quartus
语言:Verilog
代码功能:
波形发生器DA输出模拟信号
1、设计波形发生器,输出的波形通过DA芯片输出模拟信号。
3、可通过按键控制频率加、减。
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
演示视频:
设计文档:
1. 工程文件
2. 程序文件
3. 程序编译
4. RTL图
5. 管脚分配
6. 仿真图
整体仿真图
按键消抖模块
按键下降沿检测模块
控制频率模块
相位累加器
波形类型控制模块
部分代码展示:
//波形类型控制模块 module?wave_control( ????input?clk_in,//50MHz input?rst,//复位,低电平复位 input?wave_change,//波形切换 ????input?[13:0]?wave_fb,//方波波形 ????input?[13:0]?wave_sj,//三角波形 ????input?[13:0]?wave_sin,?//正弦波形?? ????output?reg?[13:0]?DATA//输出波形? ); reg?[1:0]?mode;//模式信号,01对应正弦波,10对应三角波,11对应方波 always@(posedge?clk_in?or?negedge?rst) if(rst==0)//复位 mode<=2'b01;//正弦波 else if(wave_change==1)begin//波形切换 if(mode==2'b01) mode<=2'b10;//10对应三角波 else?if(mode==2'b10) mode<=2'b11;//11对应方波 else?if(mode==2'b11) mode<=2'b01;//01对应正弦波 else mode<=2'b01;//正弦波 end else mode<=mode; //3选1;01对应正弦波,10对应三角波,11对应方波 always@(posedge?clk_in) ????case(mode) ????????2'b01:DATA<=wave_sin; ????????2'b10:DATA<=wave_sj; ????????2'b11:DATA<=wave_fb; ????????default:DATA<=14'd0; ????endcase endmodule
点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=562
阅读全文