波形发生器DA输出模拟信号Verilog代码Quartus仿真

名称:波形发生器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
源代码

 扫描文章末尾的公众号二维码

  • 7
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值