名称:波形发生器DA输出模拟信号Verilog代码Quartus仿真(文末获取)
软件:Quartus
语言:Verilog
代码功能:
波形发生器DA输出模拟信号
1、设计波形发生器,输出的波形通过DA芯片输出模拟信号
2、可通过按键切换正弦波、三角波、方波
3、可通过按键控制频率加、减
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
源代码
扫描文章末尾的公众号二维码