6-95
CDP68HC68S1
spi 模式, 软件
这 spl 模式 是 类似的 至 scl 模式 在 那 这 用户 微观的-
计算机 发送/receives 数据 至/从 这 sbl 碎片 1 字节 在
一个 时间. 在 这 spi 模式, 不管怎样, 这 用户 microcomputer
必须 反转 这 位 顺序 的 transmitted 和 received 字节.
当 transmitting 一个 message, 各自 位 的 一个 transmitted 字节
是 同时发生地 transmitted 面向 这 总线 和 一个 reflected 位
是 同时发生地 received 从 这 总线.
监控 和 控制 的 这 控制 线条
在 这 spl 模式, 这 用户 microcomputer monitors 这 con-
trol 管脚 在 这 sbl 碎片 在 顺序 至 决定 如果 这 sblc 是
准备好 至 接受 一个 transmit 要求. 的确, 一个 数据 collision
将 安静的 出现 和 这 用户 microcomputer 必须 总是 是
准备好 至 handle 它.
这 控制 信号 是 正常情况下 高 和 变得 低 当
数据 是 在 这 总线 或者 当 牵引的 低 用 这 用户 microcom-
puter. 之后 正在 牵引的 低 用 这 用户 microcomputer, 这个
信号 一个 要求 至 begin 这 传递 数据, 这 con-
trol 信号 将 获得 低 和 停留 低 直到 这 middle 的 这
last 数据 位 有 被 transmitted 和 呈现 在 这 总线.
这 控制 信号 将 也 go 低 在 这 beginning 的 这
first 数据 位, 当 received 从 这 总线. 它 将 然后 go 高
在 这 middle 的 这 last 数据 位.
当 这 sbl 碎片 begins 至 receive 一个 字节 的 数据 从 这
总线 和 这 用户 microcomputer 有 不 牵引的 这 sblc’s
控制 线条 低, 这 sbl 碎片 将 拉 控制 低 和
开始 generating 这 sck 时钟 信号. 作 各自 数据 位 是
received 它 是 clocked 输出 的 这 sbl 碎片 和 在 这 用户
microcomputer. 任何 数据 在 这 用户 microcomputer’s spl
数据 寄存器 将 是 transferred 输出 和 在 这 sbl 碎片.
这 控制 信号 将 go 高 在 这 中点 的 这
eighth 数据 位. 这个 将 准许 这 用户 microcomputer 至
有 足够的 时间 至 review 这 just received spl 数据 和
再装填 它, 如果 更远 数据 是 需要 至 是 transmitted. 如何-
总是, 它 必须 又一次 拉 这 控制 管脚 低 至 信号 he
sbl 碎片 那 它 应当 begin transmitting. 作 一个 从动装置 至 he
sbl 碎片, 这 用户 microcomputer 必须 是 能 至 和 le 这
新当选的 数据 在 这 spl 端口 没有 影响 它的 其它 软-
ware routine 功能.
Detecting
空闲 通过 一个 用户 microcomputer 外部
中断
这 用户 微处理器’s 外部 中断 应当 是 设置
至 边缘 发现
空闲 为 下落 transitions, i.e. eom detec-
tion. 如果 可能, 发现 控制 为 rising transitions, 为
字节 传递/reception 完全 发现.
使用 的 内部的 用户 microcomputer flags 和 中断
这 正常情况下 有 spl finished flag (splf) 和 optionally
它的 有关联的 中断 将 是 使用 用 这 用户 microcomputer
至 know 当 一个 字节 传递/reception 的 是 完全.
这 用户 microcomputer 应当 是 准备好 至 handle 这 写
collision, wcol, 错误 flag. 这 wcol flag 是 设置 当 一个
collision 是 发现 在 这 spl 端口. 这个 将 出现 当 这
用户 microcomputer tries 至 加载 一个 字节 在 这 spi 数据
寄存器 之后 这 sbl 碎片 有 already begun 至 加载 数据
在 这 spl 端口.
sending messages 至 其它 microcomputers 在 这 总线
ln 顺序 至 send 一个 message 至 其它 microcomputers 在 这
总线 当 在 这 spi 模式 这 用户 microcomputer 应当:
1. 监控 这
空闲 管脚 和 决定 如果 这 总线 是 目前
busy 或者 如果 一个 传递 将 是 立即 started.
2. 监控 控制 至 决定 如果 它 是 ok 至 加载 这 字节
至 是 transmitted 在 这 用户 microcomputer’s spl 数据
寄存器.
3. 加载 这 字节 至 是 transmitted 在 这 spl 数据 寄存器.
4. 拉 这 控制 管脚 低 至 信号 这 sbl 碎片 至 开始
一个 字节 transmit 循环.
5. wait 直到 这 字节 transmit 循环 是 完成 作 signaled
用 这 spl finished, splf, 标记/中断 在 这 spl 端口 或者
用 这 控制 信号 going 高.
6. 对比 这 received 字节 和 这 last transmitted 字节.
7. 如果 这 received 字节 相等 这 last transmitted 字节, 和
更多 字节 仍然是 至 是 transmitted, 然后 continue 这
循环 和 步伐 #3. 如果 那里 是 更多 messages 至 trans-
mit, 然后 go 至 步伐 #1. 如果 那里 是 非 更多 字节 至 是
transmitted, 然后 考虑 这 message 作 having 被
transmitted, 和 发生 一个 终止 的 message (eom)
(i.e. 延迟 为 10 相接的 位 时间). go 至 步伐 #1.
8. 如果 这 received 字节 做 不 equal 这 last transmitted
字节 和 这个 是 这 第一 字节 的 一个 message, 然后 treat 这
received 字节 作 这 第一 字节 的 一个 received message (i.e.
这 id 字节). attempt 至 retransmit 这 previous message
之后 这
空闲 信号 有 gone 低 又一次. 如果 这个 发生
在 这 传递 的 一个 后来的 message 字节, 其它
比 这 id 字节, 然后 考虑 它 预定的 至 也 一个 errone-
ous 数据 collision 在 这 总线 或者 预定的 至 噪音 collisions 在
这 总线 造成 这 message 至 有 至 是 re-transmit-
ted. go 至 步伐 #1.
framing errors
当 在 这 spl 模式, 这 sbl 碎片 是 有能力 的 detecting
新当选的 framing errors. 如果 一个 是 发现, 一代 的 这
sck 脉冲 至 这 用户 microcomputer 是 terminated. 这
sbl 碎片 essentially quits 接到 数据 和 开始 looking
为 一个 终止 的 message. resetting 的 这 sck 发生器 将
出现 在之上 接到 一个 eom. meanwhile, 软件 必须 是
准备好 至 resynchronize 这 微观的’s spl 端口; 这个 能 是
完毕 用 disabling 和 然后 reinitializing 它.
甚至 though 这 sbl 碎片 能 发现 framing errors, 它 能
不 flag 这 用户 microcomputer 那 一个 有 occurred.
自从 这 先前 received 字节 有 already 被 trans-
ferred 至 这 用户 microcomputer, 这 sbi 碎片 将 simply
refuse 至 接受 任何 更远 新当选的 数据 直到 一个 eom
occurs. 因此, 一个 方法 那 这 用户 microcomputer 将
发现 那 这 received 数据 是 有效的, 是 通过 使用 一个 审查
总 字节 imbedded 在里面 各自 message. 另一 方法
将 是 至 对比 这 号码 的 字节 received fora par-
ticular id 至 这 号码 预期的 为 那 id.
缓冲 spi 模式, 硬件
这 mosl 和 mlso 管脚 在 这 用户 microcomputer 应当
是 连接 至 这 xmlt 和 rec 管脚 的 这 sbl 碎片
各自. 这 sck 管脚 在 这 用户 microcomputer 和