赞
踩
名称:方波信号发生器的设计Verilog代码Quartus仿真(文末获取)
软件:Quartus
语言:Verilog
代码功能:
方波信号发生器的设计选题内容
基于可编程逻辑器件的工作原理和开发方法,采用 Verilog硬件描述语言,在可编程逻辑器件实验箱上实现一个方波信号发生器,能够实现一定频率范围内方波信号的产生。任务要求
(1)能够产生1kHz~50kHz频率范围内的方波信号;
(2)可以用按键实现方波信号频率的调节,按键每按一次,方波信号的频率按一定的值递增
(3)可以用按键实现方波信号占空比的调节,按键每按次,方波信号的占空比按一定的值递增;
(4)系统有复位按键,当复位按键按下后,方波信号的频率和占空比回到初始值;
(5)系统有按键消抖的功能,能够消除按键刚按下时的不稳定的抖动状态
(6)设计各功能模块,进行编译、综合、仿真、下载等步骤,在实验箱上模拟方波信号发生器产生方波的效果。
1. 工程文件
2. 程序文件
3. 程序编译
4. RTL图
5. Testbench
6. 仿真图
部分代码展示:
//方波信号发生器 //1K~50KHz,按键调节频率递增 //占空比,按键调节占空比递增 module pulse_ctrl( input clk,//工作时钟1MHz,一周期1us input reset,//复位,用于初始化 input freq_key,//频率控制按键 input duty_key,//占空比控制按键 output pulse_wave//方波信号输出 ); wire [12:0] period_in;//周期控制,即控制频率,频率是周期的倒数1K~50KHz对应周期为1000us~20us wire [6:0] Duty_cycle_in;//占空比控制,10%~90% //按键控制模块 key_in i_key_in( . clk(clk),//工作时钟1MHz,一周期1us . reset(reset),//复位,用于初始化 . freq_key(freq_key),//频率控制按键 . duty_key(duty_key),//占空比控制按键 . period_in(period_in),//周期控制,即控制频率,频率是周期的倒数1K~50KHz对应周期为1000us~20us . Duty_cycle_in(Duty_cycle_in)//占空比控制,10%~90% ); //波形产生模块 wave_generate i_wave_generate( . clk(clk),//工作时钟1MHz,一周期1us . period_in(period_in),//周期控制,即控制频率,频率是周期的倒数1K~50KHz对应周期为1000us~20us . Duty_cycle_in(Duty_cycle_in),//占空比控制,10%~90% . pulse_wave(pulse_wave)//方波信号输出 ); endmodule
扫描文章末尾的公众号二维码
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。