FPGA读写DS18B20温度并通过七段数码管显示verilog设计实验Quartus9.1工程源码,可以做为你的学习设计参考。 /ds18b20_seg7.v //---------------------------------------- module ds18b20_seg7( input CLOCK_50, // 板载50MHz时钟 input Q_KEY, // 板载按键RST // inout DS18B20, // output [7:0] SEG7_SEG, // 七段数码管 段脚 output [7:0] SEG7_SEL // 七段数码管 待译位脚 ); //++++++++++++++++++++++++++++++++++++++ // 获取温度值开始 //++++++++++++++++++++++++++++++++++++++ wire [15:0] t_buf; ds18b20_drive ds18b20_u0( .clk(CLOCK_50), .rst_n(Q_KEY), // .one_wire(DS18B20), // .temperature(t_buf) ); //------------------------------------- // 获取温度值 结束 //------------------------------------- //+++++++++++++++++++++++++++++++++++++ // 显示键盘值 开始 //+++++++++++++++++++++++++++++++++++++ seg7x8_drive seg7_u0( .i_clk (CLOCK_50), .i_rst_n (Q_KEY), .i_turn_off (8'b1110_1000), // 熄灭位[2进制] .i_dp (8'b0000_0010), // 小数点位[2进制] // 欲显数据[16进制] // 正负位 空白 十位 个位 小数位 .i_data ({12'h0, t_buf[15:12], 4'h0, t_buf[11:0]}), .o_seg (SEG7_SEG), .o_sel (SEG7_SEL) ); //------------------------------------- // 显示键盘值 结束 //------------------------------------- endmodule