软件:Quartus
语言:Verilog
代码功能:
温度报警器设计
1、使用ds18b20作为温度传感器
2、可以按键控制最高报警温度、最低报警温度
3、数码管显示温度
4、当温度高于最高温度是报警,低于最低温度是也报警
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
演示视频:
设计文档:
1. 工程文件
2. 程序文件
3. 程序编译
4. RTL图
5. 仿真图
5.1 下降沿检测模块
5.3 显示模块
部分代码展示:
//温度显示,报警 module temp_disp( input sys_clk , //输入的系统时钟 input sys_rst_n , //输入的复位信号 inout dq , //ds18b20温度传感器单总线 output beep_out , //蜂鸣器报警 input up_set_high_SW,//设置报警最高温度加 input down_set_high_SW,//设置报警最高温度减 input up_set_low_SW,//设置报警最低温度加 input down_set_low_SW,//设置报警低高温度减 output [7:0] HEX0,//数码管-低亮 output [7:0] HEX1,//数码管-低亮 output [7:0] HEX2,//数码管-低亮 output [7:0] HEX3, //数码管-低亮 output [7:0] HEX4,//数码管-低亮 output [7:0] HEX5 //数码管-低亮 ); //wire define wire [19:0] temp_data; // 温度数值 wire [7:0] high_tem_out; wire [7:0] low_tem_out; wire up_set_high;//设置报警最高温度加 wire down_set_high;//设置报警最高温度减 wire up_set_low;//设置报警最低温度加 wire down_set_low;//设置报警低高温度减 //***************************************************** //** main code //***************************************************** down_detect i_SW1( . clk(sys_clk), . in_signal(up_set_high_SW), . negedge_signal(up_set_high)//输出下降沿 ); down_detect i_SW2( . clk(sys_clk), . in_signal(down_set_high_SW), . negedge_signal(down_set_high)//输出下降沿 ); down_detect i_SW3( . clk(sys_clk), . in_signal(up_set_low_SW), . negedge_signal(up_set_low)//输出下降沿 ); down_detect i_SW4( . clk(sys_clk), . in_signal(down_set_low_SW), . negedge_signal(down_set_low)//输出下降沿 );
阅读全文
637