利用74HC138三线-8线译码器和若干门电路设计一多传感器火灾报警系统,设有烟雾传感器、一氧化碳传感器、温度传感器和紫外光传感器,为了防止误报,有三个或三个以上传感器数值超过设定阈值,或者有两个传感器数值超过设定阈值,但其中一个是温度传感器时,报警系统轰鸣器报警。
假设a是温度,则有一下真值表和卡诺图
接下来通过卡诺图化简得到最小值相加的表达式
可以看出需要两个138译码器才能将m7-15(没有m8)信号容纳
74hc138译码器引脚图
因为138译码器可以将三个输入信号按照a2a1a0的顺序的二进制输出在y0-6引脚上(输出低电平,正好与化简的式子契合)(二进制的值即y0-6的下标),所以最小项的下标就反应在了y0-6的引脚上,因为最小项的下标即abcd输入信号的二进制值。
而需要容纳7-15(缺少8)这八个信号需要两个138译码器实现,即第一个译码器装下m7,第二个译码器装下m9-15。最后将这些信号相乘再取非即可,所以最后汇总到一个与非门即可。
根据138译码器的引脚图可知,e3高电平触发,e1.e2低电平触发,所以只需将第一个138的e1接电源,e2接地,e3接温度信号,然后将第二个138的e1接温度信号,e2e3接地就可以实现温度出0时第一个工作温度出1时第二个工作(因为由最小项可知,温度信号a是最高位,当他出1时二进制转十进制就是加8,因此可以让a控制两个138的使能端,控制两个138的其一工作,当a出0,即只有m7的信号输出时便只需启用第一个138,当a出1时启用第二个138即可输出m9-15:;相当于扩展了输出端口,因为有a的出1,使得最小项下标加8,a也通过对使能端的控制,使第二个138的y0-7变成了y8-15,从而使最小项下标和两个138的输出端下标对应)。解决了最高位a控制使能端(因为7-15跨越了八个数,所以只能用最高位a控制使能端)其他三个信号只要按照写最小项时的ABCD的顺序排入a2a1a0即可。
a3是温度信号
个人认为这个对138译码器的总结对数电入门很有帮助,写到这里顿悟:1、可以将最小项的高位和地位分开来看,看做是独立的处理,这样可以对选择芯片和引脚配对哪个信号有帮助,如本次就将高位信号a和bcd分离看待,因为两个138芯片相同,所以可以将bcd的信号直接与两个相同下标的引脚连一起,然后通过最高位a来控制最小项下标加减和输出端下标加减(即1第二个138的扩展) 。
2、对于m1m2这些只是一个信号,他是一个最小项,一个组合形式,也是abcd与的形式。
3、另一个思路就是将a和bcd分别看待,因为138译码器只有a2a1a0三个输入端可以输入二进制值,所以可以将最小项下标7-15从7这里断开,因为bcd最大值就是7,右边9-15这一段a出1,所以第一个138当a出0时启用,第二个138当a出1时启用。