12
AT90S1200
0838H
–
AVR
–
03/02
重置 和 中断
处理
这 at90s1200 提供 三 不同的 中断 来源. 这些 中断 和 这
独立的 重置 vector, 各自 有 一个 独立的 程序 vector 在 这 程序 记忆
空间. 所有 这 中断 是 assigned 单独的 使能 位 那 必须 是 设置 (一个)
一起 和 这 i-位 在 这 状态 寄存器 在 顺序 至 使能 这 中断.
这 最低 地址 在 这 程序 记忆 空间 是 automatically 定义 作 这
重置 和 中断 vectors. 这 完全 列表 的 vectors 是 显示 在 表格 2. 这 列表
也 确定 这 priority 水平 的 这 不同的 中断. 这 更小的 这 地址 这
高等级的 是 这 priority 水平的. 重置 有 这 最高的 priority, 和 next 是 int0 (这 外部
中断 要求 0), 等
这 大多数 典型 和 一般 程序 建制 为 这 重置 和 中断 vector
地址 是:
地址 Labels 代号 Comments
$000 rjmp 重置 ; 重置 handler
$001 rjmp ext_int0 ; irq0 handler
$002 rjmp tim0_ovf ; timer0 overflow handler
$003 rjmp ana_竞赛 ; 相似物 比较器 handler
;
$004 主要的: <instr> xxx ; 主要的 程序 开始
… … … …
重置 来源
这 at90s1200 有 三 来源 的 重置:
•
电源-在 重置. 这 mcu 是 重置 当 这 供应 电压 是 在下 这 电源-在
重置 门槛 (v
POT
).
•
外部 重置. 这 mcu 是 重置 当 一个 低 水平的 是 呈现 在 这 重置
管脚 为
更多 比 50 ns.
•
看门狗 重置. 这 mcu 是 重置 当 这 看门狗 计时器 时期 expires 和
这 看门狗 是 使能.
在 重置, 所有 i/o 寄存器 是 然后 设置 至 它们的 最初的 值, 和 这 程序 开始
执行 从 地址 $000. 这 操作指南 放置 在 地址 $000 必须 是 一个 rjmp
(相关的 jump) 操作指南 至 这 重置 处理 routine. 如果 这 程序 从不 使能 一个
中断 源, 这 中断 vectors 是 不 使用, 和 regular 程序 代号 能 是
放置 在 这些 locations. 这 电路 图解 在 图示 13 显示 这 重置 逻辑. 表格 3
定义 这 定时 和 电的 参数 的 这 重置 电路系统. 便条 那 电源-在
重置 定时 是 clocked 用 这 内部的 rc 振荡器. 谈及 至 描绘 数据 为
rc 振荡器 频率 在 其它 v
CC
电压.
表格 2.
重置 和 中断 vectors
vector 非. 程序 地址 源 中断 定义
1 $000 重置
硬件 管脚, 电源-在 重置 和
看门狗 重置
2 $001 INT0 外部 中断 要求 0
4 $002 timer0, ovf0 计时器/counter0 overflow
5 $003 ana_竞赛 相似物 比较器