6
AT90S1200
0838H
–
AVR
–
03/02
在 中断 和 子例程 calls, 这 返回 地址 程序 计数器 (pc) 是
贮存 在 这 堆栈. 这 堆栈 是 一个 3-水平的-深的 硬件 堆栈 专心致志的 为 subrou-
tines 和 中断.
这 i/o 记忆 空间 包含 64 地址 为 cpu 附带的 功能 此类 作
控制 寄存器, 计时器/counters, 一个/d 转换器 和 其它 i/o functions. 这 mem-
ory spaces 在 这 avr architecture 是 所有 直线的 和 regular 记忆 maps.
一个 有伸缩性的 中断 单元 有 它的 控制 寄存器 在 这 i/o 空间 和 一个 额外的
global 中断 使能 位 在 这 状态 寄存器. 所有 这 不同的 中断 有 一个 sepa-
比率 中断 vector 在 这 中断 vector 表格 在 这 beginning 的 这
程序 记忆. 这 不同的 中断 有 priority 在 一致 和 它们的 中断
vector 位置. 这 更小的 这 中断 vector 地址, 这 高等级的 这 priority.
一般 目的
寄存器 文件
图示 5 显示 这 结构 的 这 32 一般 目的 寄存器 在 这 cpu.
图示 5.
AVR
cpu 一般 目的 working 寄存器
所有 这 寄存器 运行 说明 在 这 操作指南 设置 有 直接 和 单独的 循环
进入 至 所有 寄存器. 这 仅有的 例外 是 这 five 常量 arithmetic 和 逻辑
说明 sbci, subi, cpi, andi, ori 在 一个 常量 和 一个 寄存器 和 这 ldi
操作指南 为 加载 立即的 常量 数据. 这些 说明 应用 至 这 第二 half
的 这 寄存器 在 这 寄存器 文件 (r16..r31). 这 一般 sbc, sub, cp, and, 或者
和 所有 其它 行动 在 二 寄存器 或者 在 一个 单独的 寄存器 应用 至 这 全部
寄存器 文件.
寄存器 30 也 serves 作 一个 8-位 pointer 为 间接的 地址 的 这 寄存器 文件.
ALU
–
arithmetic 逻辑
单位
这 高-效能 avr alu 运作 在 直接 连接 和 所有 这 32 一般
目的 working 寄存器. 在里面 一个 单独的 时钟 循环, alu 行动 在 regis-
ters 在 这 寄存器 文件 是 executed. 这 alu 行动 是 分隔 在 三 主要的
categories
–
arithmetic, 逻辑 和 位-功能.
在-系统
可编程序的 flash
程序 记忆
这 at90s1200 包含 1k 字节 在-碎片 在-系统 可编程序的 flash 记忆 为
程序 存储. 自从 所有 说明 是 单独的 16-位 words, 这 flash 是 有组织的 作
512 x 16. 这 flash 记忆 有 一个 忍耐力 的 在 least 1000 写/擦掉 循环.
这 at90s1200 程序 计数器 是 9 位 宽, 因此 寻址 这 512 words flash
程序 记忆.
看 页 37 为 一个 详细地 描述 在 flash 数据 downloading.
70
R0
R1
R2
一般
…
目的
…
Working R28
寄存器 R29
r30 (z-寄存器)
R31