AT89S8252
4-120
中断
这 at89s8252 有 一个 总的 的 六 中断 vectors: 二
外部 中断 (int0
和 int1), 三 计时器 中断
(计时器 0, 1, 和 2), 和 这 串行 端口 interrupt. 这些
中断 是 所有 显示 在 图示 10.
各自 的 这些 中断 来源 能 是 individually 使能
或者 无能 用 设置 或者 clearing 一个 位 在 特定的 函数
寄存器 ie. ie 也 包含 一个 global 使不能运转 位, ea, 这个
使不能运转 所有 中断 在 once.
便条 那 表格 10 显示 那 位 位置 ie.6 是 unimple-
mented. 在 这 at89c51, 位 位置 ie.5 是 也 unimple-
mented. 用户 软件 应当 不 写 1s 至 这些 位 posi-
tions, 自从 它们 将 是 使用 在 future at89 产品.
计时器 2 中断 是 发生 用 这 logical 或者 的 位 tf2
和 exf2 在 寄存器 t2con. neither 的 这些 flags 是
cleared 用 硬件 当 这 维护 routine 是 vectored
至. 在 事实, 这 维护 routine 将 有 至 决定
whether 它 是 tf2 或者 exf2 那 发生 这 中断,
和 那 位 将 有 至 是 cleared 在 软件.
这 计时器 0 和 计时器 1 flags, tf0 和 tf1, 是 设置 在
s5p2 的 这 循环 在 这个 这 计时器 overflow. 这 值
是 然后 polled 用 这 电路系统 在 这 next 循环. 不管怎样,
这 计时器 2 标记, tf2, 是 设置 在 s2p2 和 是 polled 在 这
一样 循环 在 这个 这 计时器 overflows.
图示 9.
spi 转移 format 和 cpha = 1
*not 定义 但是 正常情况下 lsb 的 先前 transmitted character
MSB 6 5 4 3 2
1 LSB
1 2 3 4 5 6 7 8
MSB
*
65432
1 LSB
sck 循环 #
(为 涉及)
sck (cpol=0)
sck (cpol=1)
MOSI
(从 主控)
MISO
(从 从动装置)
ss (至 从动装置)
图示 10.
中断 来源
表格 10.
中断 使能 (ie) 寄存器
(msb) (lsb)
EA — ET2 ES ET1 EX1 ET0 EX0
使能 位 = 1 使能 这 中断.
使能 位 = 0 使不能运转 这 中断.
标识 位置 函数
EA ie.7
使不能运转 所有 中断. 如果 ea = 0, 非 中断
是 acknowledged. 如果 ea = 1, 各自 中断
源 是 individually 使能 或者 无能 用
设置 或者 clearing 它的 使能 位.
— ie.6 保留.
ET2 ie.5 计时器 2 中断 使能 位.
ES ie.4 spi 和 uart 中断 使能 位.
ET1 ie.3 计时器 1 中断 使能 位.
EX1 ie.2 外部 中断 1 使能 位.
ET0 ie.1 计时器 0 中断 使能 位.
EX0 ie.0 外部 中断 0 使能 位.
用户 软件 应当 从不 写 1s 至 unimplemented 位, 因为
它们 将 是 使用 在 future at89 产品.