飞利浦 半导体 产品 规格
80c32/87c52cmos 单独的-碎片 8-位 微控制器
1996 8月 16
8
differences 从 这 80c51
特定的 函数 寄存器
这 特定的 函数 寄存器 空间 是 这 一样 作 这 80c51 除了
那 这 80c32/87c52 包含 这 额外的 特定的 函数
寄存器 t2con, rcap2l, rcap2h, tl2, 和 th2. 自从 这
标准 80c51 在-碎片 功能 是 完全同样的 在 这 8xc52, 这
sfr locations, 位 locations, 和 运作 是 likewise 完全同样的.
这 仅有的 exceptions 是 在 这 中断 模式 和 中断 priority
sfrs (看 表格 1).
计时器/counters
在 增加 至 计时器/counters 0 和 1 的 这 80c51, 这 80c32/87c52
包含 计时器/计数器 2. 像 计时器 0 和 1, 计时器 2 能 运作 作
也 一个 事件 计时器 或者 作 一个 事件 计数器. 这个 是 选择 用 位
c/t2 在 这 特定的 函数 寄存器 t2con (看 图示 1). 它 有
三 运行 模式: 俘获, 自动-加载, 和 波特 比率 发生器,
这个 是 选择 用 位 在 这 t2con 作 显示 在 表格 2.
在 这 俘获 模式 那里 是 二 选项 这个 是 选择 用 位
exen2 在 t2con. 如果 exen2 = 0, 然后 计时器 2 是 一个 16-位 计时器 或者
计数器 这个 在之上 overflowing sets 位 tf2, 这 计时器 2 overflow
位, 这个 能 是 使用 至 发生 一个 中断. 如果 exen2 = 1, 然后
计时器 2 安静的 做 这 在之上, 但是 和 这 增加 特性 那 一个 1-至-0
转变 在 外部 输入 t2ex 导致 这 电流 值 在 这
计时器 2 寄存器, tl2 和 th2, 至 是 captured 在 寄存器
rcap2l 和 rcap2h, 各自. (rcap2l 和 rcap2h 是
新 特定的 函数 寄存器 在 这 80c52.) 在 增加, 这
转变 在 t2ex 导致 位 exf2 在 t2con 至 是 设置, 和 exf2
像 tf2 能 发生 一个 中断. 这 俘获 模式 是 illustrated
在 图示 2.
在 这 自动-再装填 模式, 那里 是 又一次 二 选项, 这个 是
选择 用 位 exen2 在 t2con. 如果 exen2 = 0, 然后 当 计时器 2
rolls 在 它 不 仅有的 sets tf2 但是 也 导致 这 计时器 2 寄存器
至 是 reloaded 和 这 16-位 值 在 寄存器 rcap2l 和
rcap2h, 这个 是 preset 用 软件. 如果 exen2 = 1, 然后 计时器 2
安静的 做 这 在之上, 但是 和 这 增加 特性 那 一个 1-至-0
转变 在 外部 输入 t2ex 将 也 触发 这 16-位 再装填
和 设置 exf2. 这 自动-再装填 模式 是 illustrated 在 图示 3.
这 波特 比率 一代 模式 是 选择 用 rclk = 1 和/或者
tclk = 1. 它 将 是 描述 在 conjunction 和 这 串行 端口.
串行 端口
这 串行 端口 的 这 8xc52 是 完全同样的 至 那 的 这 80c51 除了
那 计数器/计时器 2 能 是 使用 至 发生 波特 比率.
在 这 8xc52, 计时器 2 是 选择 作 这 波特 比率 发生器 用
设置 tclk 和/或者 rclk 在 t2con (看 图示 1). 便条 那 这
波特 比率 为 transmit 和 receive 能 是 同时发生地 不同的.
设置 rclk 和/或者 tclk puts 计时器 在 它的 波特 比率 发生器
模式, 作 显示 在 图示 4.
这 波特 比率 发生器 模式 是 类似的 至 这 自动-再装填 模式, 在
那 一个 rollover 在 th2 导致 这 计时器 2 寄存器 至 是 reloaded
和 这 16-位 值 在 寄存器 rcap2h 和 rcap2l, 这个 是
preset 用 软件.
now, 这 波特 比率 在 模式 1 和 3 是 决定 用 计时器 2’s
overflow 比率 作 跟随:
模式 1, 3 波特 比率
计时器 2 Overflow 比率
16
这 计时器 能 是 配置 为 也 “timer” 或者 “counter” 运作.
在 这 大多数 典型 产品, 它 是 配置 为 “timer” 运作
(c/t2 = 0). “timer” 运作 是 一个 little 不同的 为 计时器 2 当 它’s
正在 使用 作 一个 波特 比率 发生器. 正常情况下, 作 一个 计时器 它 将
increment 每 机器 循环 (因此 在 1/12 这 振荡器
频率). 作 一个 波特 比率 发生器, 不管怎样, 它 increments 每
状态 时间 (因此 在 1/2 这 振荡器 频率). 在 那 情况 这
波特 比率 是 给 用 这 formula:
模式 1, 3 波特 比率
振荡器 频率
32
[65536
(rcap2h, rcap2l)]
在哪里 (rcap2h, rcap2l) 是 这 内容 的 rcap2h 和 rcap2l
带去 作 一个 16-位 unsigned integer.
(msb) (lsb)
标识 位置 名字 和 significance
TF2 t2con.7 计时器 2 overflow 标记 设置 用 一个 计时器 2 overflow 和 必须 是 cleared 用 软件. tf2 将 不 是 设置 当 也 rclk 或者 tclk = 1.
TF2
EXF2 RCLK TCLK EXEN2 TR2 c/t2 cp/rl2
EXF2 t2con.6 计时器 2 外部 标记 设置 当 也 一个 俘获 或者 再装填 是 造成 用 一个 负的 转变 在 t2ex 和 exen2 = 1. 当 计时器 2
中断 是 使能, exf2 = 1 将 导致 这 cpu 至 vector 至 这 计时器 2 中断 routine. exf2 必须 是 cleared 用 软件.
RCLK t2con.5 receive 时钟 标记. 当 设置, 导致 这 串行 端口 至 使用 计时器 2 overflow 脉冲 为 它的 receive 时钟 在 模式 1 和 3. rclk = 0
导致 计时器 1 overflow 至 是 使用 为 这 receive 时钟.
TCLK t2con.4 transmit 时钟 标记. 当 设置, 导致 这 串行 端口 至 使用 计时器 2 overflow 脉冲 为 它的 transmit 时钟 在 模式 1 和 3. tclk = 0
导致 计时器 1 overflows 至 是 使用 为 这 transmit 时钟.
EXEN2 t2con.3 计时器 2 外部 使能 标记. 当 设置, 准许 一个 俘获 或者 再装填 至 出现 作 一个 结果 的 一个 负的 转变 在 t2ex 如果 计时器 2 是 不
正在 使用 至 时钟 这 串行 端口. exen2 = 0 导致 计时器 2 至 ignore events 在 t2ex.
TR2 t2con.2 开始/停止 控制 为 计时器 2. 一个 逻辑 1 开始 这 计时器.
c/t2 t2con.1 计时器 或者 计数器 选择. (计时器 2)
0 = 内部的 计时器 (osc/12)
1 = 外部 事件 计数器 (下落 边缘 triggered).
cp/rl2
t2con.0 俘获/再装填 标记. 当 设置, 俘获 将 出现 在 负的 transitions 在 t2ex 如果 exen2 = 1. 当 cleared, auto-reloads 将
出现 也 和 计时器 2 overflows 或者 负的 transitions 在 t2ex 当 exen2 = 1. 当 也 rclk = 1 或者 tclk = 1, 这个 位 是
ignored 和 这 计时器 是 强迫 至 自动-再装填 在 计时器 2 overflow.
SU00065
图示 1. 计时器/计数器 2 (t2con) 控制 寄存器