两种接法,都共享同一根 CLK:并联时 8 个 FF 各有独立 D 输入,一个 ↑ 沿就同时锁存 8 位(真·并行寄存器);
级联时右邻的 Q
i+1 接到 D
i(从右端 FF0 串入、每沿向左移一位,与 SPI 的高位先送一致),一位串行输入要 8 个 ↑ 沿才凑满一帧(SIPO 移位寄存器),
所以必须由
帧同步决定什么时候读总线 —— 这就是两种模式「1 沿 / 字节」与「8 沿 / 字节」的差别。
怎么玩:并联模式点每个 FF 上方的 D 徽章设 8 位,再给 ↑ 沿;级联模式点左侧 SIN 徽章(或按
0 1 连发)。
输入框可粘 8 位二进制或一段文字,
空格 给一个 ↑ 沿,
D 翻转串行输入,
R 复位。
想换句话?左上角输入框改成你要的 ASCII 句子(最多 16 个字符),按「设为目标」或回车——
目标行与输出行逐格对照:上面是目标、下面是总线已经输出的字符,对上变绿、对不上变红。8 位并行总线一帧传 1 字节,
所以同样只收 ASCII 可打印字符(32–126);中文是 UTF-8 多字节,另一套机制。
展开:为什么「同时更新」是这一关最容易错的地方
| 写法 | Q[7:0] 结果(初始全 0,移入 1) | 对不对 |
| 先快照旧 Q,再统一写入 Q⁺ = [Q₆ … Q₀, SIN] | 00000001 | ✓ 边沿触发 |
| 顺序赋值(用刚写过的新值继续传) | 11111111 | ✗ 一位穿透 8 级,退化成组合逻辑 |
真实芯片靠主从结构保证所有 FF 在同一个沿只看到「沿之前」的旧值。本页仿真严格按快照实现,可以在级联模式按一次「发送 1」亲自验证。