5

最初的问题是这样开始的。有6个州。在每个状态,当 w=1 时移动到下一个状态,当 w=0 时,则停留在当前状态。在每个状态显示一个使用标准 7 LED 显示屏 (BCD) 的数字。这些数字是 8 -> 1 -> 9 -> 4 -> 2 -> 2。

所以这是我对这个问题的尝试。我从一个状态表开始:从左到右 y2,y1,y0

    w=0  w=1  a  b  c  d  e  f  g
000|000  001  1  1  1  1  1  1  1
001|001  010  0  1  1  0  0  0  0
010|010  011  1  1  1  1  0  1  1
011|011  100  0  1  1  0  0  1  1
100|100  101  1  1  0  1  1  0  1
101|101  000  1  1  0  1  1  0  1

然后使用卡诺图制作 Yo Y1 和 Y2 方程

    y1.y0               _        _
w.y2 00 01 11 10   Y0 = w.y0 + w.y0
  00 0  1  1  0    
  01 0  1  d  d
  11 1  0  d  d
  10 1  0  0  1

    y1.y0               _        _  _            _
w.y2 00 01 11 10   Y1 = w.y1 + w.y2.y1.y0 + w.y1.y0
  00 0  0  1  1
  01 0  0  d  d
  11 0  0  d  d
  10 0  1  0  1

    y1.y0               _      _  _  _
w.y2 00 01 11 10   Y2 = w.y2 + y2.y1.y0 + w.y1.y0
  00 0  0  0  0
  01 1  1  d  d
  11 1  0  d  d 
  10 0  0  1  0

然后输出需要创建附加映射。

    Y1.Y0                     _  _ 
  Y2    00 01 11 10  a = Y2 + Y0.Y2
      0 1  0  0  1
      1 1  1  d  d


    Y1.Y0              
  Y2    00 01 11 10  b = 1
      0 1  1  1  1
      1 1  1  d  d


    Y1.Y0                _
  Y2    00 01 11 10  c = Y2
      0 1  1  1  1
      1 0  0  d  d


    Y1.Y0                     _  _  
  Y2    00 01 11 10  d = Y2 + Y0.Y2 
      0 1  0  0  1
      1 1  1  d  d


    Y1.Y0                     _  _  _
  Y2    00 01 11 10  e = Y2 + Y0.Y1.Y2
      0 1  0  0  0
      1 1  1  d  d


    Y1.Y0                _  _
  Y2    00 01 11 10  f = Y2.Y0 + Y1
      0 1  0  1  1
      1 0  0  d  d


    Y1.Y0                          _  _
  Y2    00 01 11 10  g = Y1 + Y2 + Y1.Y0
      0 1  0  1  1
      1 1  1  d  d

目前我正在使用 3 位 D 触发器计数器来创建 6 个输入。

显示屏显示。

 _        _        _
|_|   |  |_|  |_|   |
|_| |     _|    | |_   _

逻辑是否有错误,或者计数器是否可能会造成此问题?

4

2 回答 2

1

再次输入整个问题有助于自己找出做错的部分。

问题出在 Y2 卡诺图上。

通过查看输出,我能够看到哪些引脚不工作并将它们追溯到错误源。

于 2011-12-12T08:37:00.757 回答
0

据我了解,您的状态机有 6 个状态?在最后两种状态下需要显示相同的数字吗?

我认为用 T 型人字拖可以做到这一点。

1)将T触发器的每个输出连接到next的输入,三个触发器需要保持6个状态。

2) 当输出组合等于 110 (6) 时,您需要重置所有触发器的“重置电路”。因此,T 个触发器的 w=1 上的输出将是下一个:000 w 001 w 010 w 011 w 100 w 101 w 110->000* w 001 等(*reset 将触发器移动到初始化状态)。这是第一个函数:RST。

3)您需要创建一个编码器将代码从0到5到7信号转换为LED显示屏。

所以,biuilt ruth 表如下所示:

#TABLE: t3,t2,t1 => a,b,c,d,e,f,g,RST
 000 => 11111110
 001 => 01100000
 010 => 11110110
 011 => 01100110
 100 => 11011010
 101 => 11011010
 110 => 00000001
 111 => 00000000

创建 8 个 K-Map 并最小化它们,或使用任何其他最小化方法。我得到了这个结果:

a = t3 !t2 | !t3 !t1;
b = !t3 | t3 !t2;
c = !t3;
d = t3 !t2 | !t3 !t1;
e = !t2 !t1 | t3 !t2;
f = !t3 t2 | !t3 !t1;
g = !t3 t2 | t3 !t2 | !t3 !t1;
RST = t3 t2 !t1;
于 2012-05-15T22:30:46.930 回答