软件: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)//输出下降沿 );
阅读全文