分析测试百科网

搜索

喜欢作者

微信支付微信支付
×

基于FPGA的自动采集控制系统(二)

2020.10.26
头像

王辉

致力于为分析测试行业奉献终身

  3.2 温度显示模块

  设计采用了4个8段式的LED数码管可以动态显示温度的百位、十位、个位与分位。下图为温度显示模块的顶层电路,由图可知,模块由片选模块、译码转换模块与计数器三者组成。片选模块主要由一个二进制计数器和四选一电路组成。

基于FPGA的自动采集控制系统

  当系统工作时,先将二进制计数器在clk控制下依次连续产生4个两位二进制数组,来控制片选模块选择性的输出shi[3..0]、ge[3..0]、fen[3. 。 0]、bai[3. 。 0]四路输入信号中任意的一路。将选出的这一路输入信号交给译码转换模块,利用二进制计数器产生的连续二进制数组,可以控制译码器依次输出对应的4位二进制数组来依次点亮各个LED数码管。最后,可以在LED上显示出数字,读取结果。

  对温度显示模块display进行软件仿真测试,设置输入shi[3..0]、fen[3..0]、ge[3..0]分别是“0100”、“0011”、“0010”,则其对应10进制数应为“43.2”。仿真结果如图6所示。

基于FPGA的自动采集控制系统

  由仿真示意图可看出,片选信号由时钟信号控制循环变化,而对应输出的ledout端也依次输出shi,fen,ge,bai四个端口输入的数据,且输出的是8位LED数码管显示码,从图中可以读出,当片选信号为“0111”时,对应的输出信号ledout为“11000000”,即表示在数码管上的显示为 0,小数点不亮,表示百位为0;当片选信号为“1011”时,对应的输出信号ledout为“10011001”,在数码管上的显示为4,小数点不亮,表示十位为4;当片选信号为“1101”时,对应输出ledout为“10110000”,在数码管上的显示即为3,表示个位为3;当片选信号为 “1110”时,对应输出ledout为“00100100”,在数码管上的显示即为2,小数点点亮,表示小数位为2。动态扫描后可知,数码管上显示的内容即为“043.2”。与输入的数据相同,说明程序编写正确,系统运用良好。


互联网
文章推荐