您好, 访客   登录/注册

用可编程逻辑器件实现火警报警电路显示系统

来源:用户上传      作者:

  摘 要 采用了大规模可编程逻辑器件,用数字电路的设计方法,将优先编码器和七段数码管结合在一起实现了火警报警显示电路。
  关键词 FPGA 编码器 优先编码器 七段数码管 传感器 开发板 集成电路
  中图分类号:TP202 文献标识码:A
  1设计要求
  假设分别有八层楼,每层楼装有一个火警报警传感器,当传感器报警时,能在控制中心的显示屏上显示发生火警的楼层数,在FPGA开发板上模拟火警报警显示电路。
  2分析
  此电路的设计需要用到8-3线二进制编码器74LS148,显示译码器74LS48,七段数码管,QuartusII开发工具,Altera公司的FPGA实验开发板。用I0、I1、I2、I3、I4、I5、I6、I7变量分别代表八层楼的状态,当逻辑值为1的时候,代表该楼层失火,当逻辑值为0的时候代表该楼层没有失火。用Y0、Y1、Y2变量分别代表火警报警系统的三个输出端,根据输出端输出不同的二进制的值从而可以判断出火警发生的楼层数。
  3大规模可编程逻辑器件
  FPFA是一种可以编程的数字集成电路(IC,Integrated Circuit),其内部集成上千百万个门阵列供使用,在功能上可以取代传统规模的IC芯片组合的方式实现数字系统;更重要的是,其现场可编程特性允许设计人员在工作现场完成对逻辑块和连线的配置,实现或更改复杂的电子系统的功能,所有的FPGA结构中都包含可配置的邏辑块、可配置的I/O模块和可编程互联资源三个部分。
  FPGA的主要开发流程:(1)设计输入;(2)逻辑综合;(3)功能仿真;(4)布局布线;(5)时序分析;(6)时序仿真;(7)编程及配置。
  4存在的问题
  (1)电路设计时考虑的是理想状态,即楼层失火时不会出现两层楼同时失火的情况,在现实中不会出现理想状态只有一层楼失火的情况。
  解决方案:使用优先编码器,即对优先级别高的输入条件进行编码,输入变量下标值越大,优先级别越高,在输入变量中,I7的优先级别最高,I0的优先级别最低,当同时出现多层楼失火的情况,先对优先级别高的输入变量编码,即先显示优先级别高的楼层,再显示优先基低的楼层,依次显示。
  (2)8-3线二进制编码器输出端有三个,而显示译码器输入端有四个,如何将编码器和显示译码器连接到一起?
  解决方案:将8-3线编码器的输出端Y2Y1Y0分别连接到显示译码器四位输入端的低三位里面,可以在七段数码管上分别显示0-7这八个数。
  (3)楼层数不匹配的问题:七段数码管依次显示0-7这八个数字分别代表楼层数1-8层,如何让数码管能显示出火警的真实楼层数?
  解决方案:可以在8-3编码器的输出端上连接一个三位二进制的加法器,加法器设置初始值为001不变,即编码器的输出结果每次都会自动加一,从而保证七段数码管的显示楼层数与真实情况相匹配。
  5总结
  随着电子技术的发展,人工智能和大数据等新兴行业的发展, FPGA必将成为应用最广泛的电子设计工具。
转载注明来源:https://www.xzbu.com/1/view-15116996.htm