飞利浦 半导体
SC16C550
uart 和 16-字节 先进先出 和 irda encoder/解码器
产品 数据 rev. 05 — 19 六月 2003 11 的 52
9397 750 11619
© koninklijke 飞利浦 electronics n.v. 2003. 所有 权利 保留.
6.3 autoflow 控制 (看 图示 5)
autoflow 控制 是 包括 的 自动-cts 和 自动-rts. 和 自动-cts, 这 CTS
输入 必须 是 起作用的 在之前 这 传输者 先进先出 能 发出 数据. 和 自动-rts, RTS
变为 起作用的 当 这 接受者 needs 更多 数据 和 notifies 这 sending 串行
设备. 当 RTS 是 连接 至 cts, 数据 传递 做 不 出现 除非 这
接受者 先进先出 有 空间 为 这 数据; 因此, overrun errors 是 eliminated 使用
UART 1 和 uart 2 从 一个 sc16c550 和 这 autoflow 控制 使能. 如果 不,
overrun errors 出现 当 这 transmit 数据 比率 超过 这 接受者 先进先出 读
latency.
6.3.1 自动-rts (看 图示 5)
自动-rts 数据 flow 控制 originates 在 这 接受者 定时 和 控制 块 (看
图示 1 “block 图解.”) 和 是 linked 至 这 编写程序 接受者 先进先出 触发
水平的. 当 这 接受者 先进先出 水平的 reaches 一个 触发 水平的 的 1, 4, 或者 8 (看 图示 7),
RTS 是 de-asserted. 和 触发 水平 的 1, 4, 和 8, 这 sending UART 将 send 一个
额外的 字节 之后 这 触发 水平的 是 reached (假设 这 sending uart 有
另一 字节 至 send) 因为 它 将 不 认识 这 de-assertion 的 rts 直到
之后 它 有 begun sending 这 额外的 字节. rts 是 automatically reasserted once
这 RX 先进先出 是 emptied 用 读 这 接受者 缓存区 寄存器. 当 这 触发 水平的
是 14 (看 图示 8), RTS 是 de-asserted 之后 这 first 数据 位 的 这 16th character 是
呈现 在 这 rx 线条. rts 是 reasserted 当 这 rx 先进先出 有 在 least 一个
有 字节 空间.
表格 4: 流动 控制 mechanism
选择 触发 水平的
(characters)
int 管脚 触发 Negate rts 或者
send xoff
Assert rts 或者
send xon
1141
4484
8 8 12 8
14 14 14 10
图 5. autoflow 控制 (自动-rts 和 自动-cts) 例子.
RCV
先进先出
串行 至
并行的
流动
控制
XMT
先进先出
并行的
至 串行
流动
控制
并行的
至 串行
流动
控制
串行 至
并行的
流动
XMT
先进先出
RCV
先进先出
ACE1 ACE2
D7 – D0
RX TX
RTS CTS
TX RX
D7 – D0
控制
002aaa048
CTS
RTS