数字电路设计--用四个开关控制一盏灯

  最近,翻到了以前写的:用三个开关控制一盏灯三个开关控制一盏灯的博文。
  在上述两个博文中,做而论道设计了两种不同的电路,都实现了 “三个开关控制一盏灯” 的目的。此外,还曾设计过 “使用与非门” 来实现的电路,时间太久,也不知道积压到什么地方去了。

  在上述博文中,做而论道给出了设计思路,还给读者留了个题目:设计一个用四个开关控制一盏灯的电路。但是多年来,也未见有人拿出成果,反而是有人来求助这个设计。
  下面,做而论道就以这个设计要求为题,介绍一下《数字电子技术》中,组合逻辑电路的设计方法。

  怎样设计一个组合逻辑电路? 在教材中,已经给出了路子:
   1. 根据设计要求,列出真值表;
   2. 由真值表转到卡诺图,进行化简;
   3. 由卡诺图,列出所需要的逻辑表达式;
   4. 由逻辑表达式,画出逻辑电路图。
   5. 如果需要,还应该进行:电路验证、优化、完善等等。

  教材中的缺陷,是把第一步和第二步的次序,给固定死了。学生只知道由真值表开始设计,却不知道 “真值表和卡诺图” 是等价的,由卡诺图开始入手设计,也是一样可以成功的。

  假如,要求用两个开关控制一盏灯,比如,楼梯上方、下方,分别安装一个开关,用任一个开关,都可以打开、关闭楼道中的照明灯。这个要求就太简单了,只需用两个“单刀双掷” 机械开关,分别安装在楼梯的两头即可,电路图,做而论道就不画了。

  假如,要求用三个开关控制一盏灯,各个开关,要分别安装在三个不同的地点。要求拨动任意一个开关,都可以打开、关闭同一盏灯。这个要求就复杂了,用简单的机械开关,是不容易办到了。如果再要求具有更多的(如四个、五个)开关,显然,此时就必须用电子器件来达到目的。设计这种电路,就必须使用《数字电子技术》中的知识。

  下面,就看看做而论道设计 “四个开关控制一盏灯” 的过程吧。

  设四个输入的自变量为 ABCD,输出的因变量为 Y。 题目要求是:自变量每改变一次状态,Y 就应该改变一次。 这种变化的需求,从真值表中,并不容易找到规律。但是,从卡诺图中,却很容易看出门道。因为,卡诺图中相邻的格,其自变量的值,正是变化了一个状态。 那么,四个变量的卡诺图,共有 16 个小格,先在第一个格中,填上一个 1,随后,在相邻的格中,依次填入 010101...,直至填满 16 个格子。 于是,就得到了完整的 Y 卡诺图,如下所示。

  \CD   Y 的卡诺图
 AB\  00  01  11  10
   +---+---+---+---+
 00 | 1 | 0 | 1 | 0 |
   +---+---+---+---+
 01 | 0 | 1 | 0 | 1 |
   +---+---+---+---+
 11 | 1 | 0 | 1 | 0 |
   +---+---+---+---+
 10 | 0 | 1 | 0 | 1 |
   +---+---+---+---+

  根据卡诺图,也可以直接就去编写逻辑表达式了。
  但是,还有一个真值表,还没有用上。 那么就由卡诺图,列出真值表吧。如下:

   Y 的真值表
 -----+---------+-----
    m | A B C D |  Y
 -----+---------+-----
    0 | 0 0 0 0 |  1
    1 | 0 0 0 1 |  0
    2 | 0 0 1 0 |  0
    3 | 0 0 1 1 |  1
    4 | 0 1 0 0 |  0
    5 | 0 1 0 1 |  1
    6 | 0 1 1 0 |  1
    7 | 0 1 1 1 |  0
    8 | 1 0 0 0 |  0
    9 | 1 0 0 1 |  1
   10 | 1 0 1 0 |  1
   11 | 1 0 1 1 |  0
   12 | 1 1 0 0 |  1
   13 | 1 1 0 1 |  0
   14 | 1 1 1 0 |  0
   15 | 1 1 1 1 |  1
 -----+---------+-----

  由真值表,可列出逻辑表达式: Y = m0 + m3 + m5 + m6 + m9 + m10 + m12 + m15。
  非两次,再应用摩根定律,得: Y = / ( /m0 . /m3 . /m5 . /m6 . /m9 . /m10 . /m12 . /m15 )。

  根据这个逻辑表达式,可以设计出逻辑电路图,如下所示。

  该电路用 PROTEUS 软件仿真运行,其效果,完全符合题目要求。

  在电路图中,由两片 74LS138 (三-八译码器芯片),组成了一个四-十六译码电路。 该电路的设计,可见做而论道编写的用3-8译码器设计4-16译码电路

  如果是要求用五个开关控制一盏灯呢? 如果能理解上述思路,也就不难了。
  做而论道把
五控一的卡诺图,在下面写出来,看看哪位网友能完成电路设计!

   \DE   Y 的卡诺图
 ABC\  00  01  11  10
    +---+---+---+---+
 000 | 1 | 0 | 1 | 0 |
    +---+---+---+---+
 001 | 0 | 1 | 0 | 1 |
    +---+---+---+---+
 011 | 1 | 0 | 1 | 0 |
    +---+---+---+---+
 010 | 0 | 1 | 0 | 1 |
    +---+---+---+---+
 110 | 1 | 0 | 1 | 0 |
    +---+---+---+---+
 111 | 0 | 1 | 0 | 1 |
    +---+---+---+---+
 101 | 1 | 0 | 1 | 0 |
    +---+---+---+---+
 100 | 0 | 1 | 0 | 1 |
    +---+---+---+---+

--本文完--

  • 9
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值