Rev. 0.0, Jan.2009 S3F94C8/S3F94C4 8-BIT CMOS MICROCONTROLLERS Revision 1.00 May 2010 用 户 手 册 YYYY Samsung Electronics Co., Ltd. All rights reserved.
Rev. 0.0, Jan.2009 Important Notice The information in this publication has been carefully checked and is believed to be entirely accurate at the time of publication. Samsung assumes no responsibility, however, for possible errors or omissions, or for any consequences resulting from the use of the information contained herein. Samsung reserves the right to make changes in its products or product specifications with the intent to improve function or design at any time and without notice and is not required to update this documentation to reflect such changes. This publication does not convey to a purchaser of semiconductor devices described herein any license under the patent rights of Samsung or others. Samsung makes no warranty, representation, or guarantee regarding the suitability of its products for any particular purpose, nor does Samsung assume any liability arising out of the application or use of any product or circuit and specifically disclaims any and all liability, including without limitation any consequential or incidental damages. "Typical" parameters can and do vary in different applications. All operating parameters, including "Typicals" must be validated for each customer application by the customer's technical experts. Samsung products are not designed, intended, or authorized for use as components in systems intended for surgical implant into the body, for other applications intended to support or sustain life, or for any other application in which the failure of the Samsung product could create a situation where personal injury or death may occur. Should the Buyer purchase or use a Samsung product for any such unintended or unauthorized application, the Buyer shall indemnify and hold Samsung and its officers, employees, subsidiaries, affiliates, and distributors harmless against all claims, costs, damages, expenses, and reasonable attorney fees arising out of, either directly or indirectly, any claim of personal injury or death that may be associated with such unintended or unauthorized use, even if such claim alleges that Samsung was negligent regarding the design or manufacture of said product. S3F94C8/S3F94C4 8-BIT CMOS MICROCONTROLLERS 用 户 手 册, Revision 1.00 Copyright 2010 Samsung Electronics Co., Ltd. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electric or mechanical, by photocopying, recording, or otherwise, without the prior written consent of Samsung Electronics. Samsung Electronics Co., Ltd. San #24 Nongseo-Dong, Giheung-Gu Yongin-City, Gyeonggi-Do, Korea 446-711 TEL : (82)-(31)-209-5238 FAX : (82)-(31)-209-6494 Home Page: http://www.samsungsemi.com Printed in the Republic of Korea
Rev. 0.0, Jan.2009 修 订 版 历 史 纪 录 修 订 版 本 号 修 订 日 期 修 订 内 容 作 者 1.00 2009 年 4 月 5 号 - 版 本 V1.0 李 宝 科
Rev. 0.0, Jan.2009 Table of Contents 1 产 品 概 述...1-1 1.1 SAM88RCRI MCU... 1-1 1.2 S3F94C8/F94C4 MCU... 1-1 1.3 特 性... 1-2 1.3.1 CPU... 1-2 1.3.2 存 储 器... 1-2 1.3.3 指 令 集... 1-2 1.3.4 指 令 执 行 周 期... 1-2 1.3.5 中 断... 1-2 1.3.6 I/O 口... 1-2 1.3.7 具 有 三 种 可 选 精 度 的 1 通 道 高 速 PWM... 1-3 1.3.8 Timer/Counters... 1-3 1.3.9 A/D 转 换 器... 1-3 1.3.10 晶 振 频 率... 1-3 1.3.11 内 置 低 电 压 复 位 电 路 (LVR)... 1-3 1.3.12 Smart Option... 1-3 1.3.13 温 度 工 作 范 围... 1-3 1.3.14 电 压 工 作 范 围... 1-4 1.3.15 现 有 封 装 形 式... 1-4 1.4 内 部 模 块 框 图... 1-5 1.5 管 脚 分 布 图... 1-6 1.6 管 脚 特 性 描 述... 1-8 1.7 管 脚 电 路... 1-9 2 地 址 空 间...2-1 2.1 概 述... 2-1 2.1.1 程 序 存 储 空 间 (ROM)... 2-2 2.1.1.1 普 通 工 作 模 式... 2-2 2.1.1.2 Smart Option... 2-3 2.1.2 寄 存 器 结 构 (RAM)... 2-5 2.2 通 用 工 作 寄 存 器 区 (C0H CFH)... 2-7 2.3 系 统 堆 栈... 2-8 2.3.1 堆 栈 操 作... 2-8 2.3.2 堆 栈 指 针 (SP)... 2-8 3 寻 址 方 式...3-1 3.1 概 述... 3-1 3.1.1 寄 存 器 访 问 模 式 (R)... 3-2 3.1.2 间 接 寄 存 器 访 问 模 式 (IR)... 3-3 3.1.2.1 间 接 寄 存 器 访 问 模 式... 3-4 3.1.2.2 间 接 寄 存 器 访 问 模 式... 3-5 3.1.2.3 间 接 寄 存 器 访 问 模 式... 3-6
Rev. 0.0, Jan.2009 3.1.3 偏 址 访 问 模 式 (X)... 3-7 3.1.3.1 偏 址 访 问 模 式... 3-8 3.1.3.2 偏 址 访 问 模 式... 3-9 3.1.4 直 接 访 问 模 式 (DA)... 3-10 3.1.4.1 直 接 访 问 模 式... 3-11 3.1.5 相 对 地 址 访 问 模 式 (RA)... 3-12 3.1.6 立 即 数 访 问 模 式 (IM)... 3-12 4 控 制 寄 存 器...4-1 4.1 概 述... 4-1 4.1.1 ADCON A/D 转 换 控 制 寄 存 器 : F7H... 4-5 4.1.2 BTCON Basic Timer 控 制 寄 存 器 : DCH... 4-6 4.1.3 CLKCON 时 钟 控 制 寄 存 器 : D4H... 4-7 4.1.4 FLAGS 系 统 标 志 寄 存 器 : D5H... 4-8 4.1.5 FMCON 闪 存 控 制 寄 存 器 : ECH... 4-9 4.1.6 FMSECH 闪 存 扇 区 地 址 寄 存 器 ( 高 字 节 ): EEH... 4-10 4.1.7 FMSECL 闪 存 扇 区 地 址 寄 存 器 ( 低 字 节 ): EFH... 4-10 4.1.8 FMUSR 闪 存 用 户 可 编 程 使 能 寄 存 器 : EDH... 4-10 4.1.9 P0CONH P0 口 控 制 寄 存 器 ( 高 字 节 ): E6H... 4-11 4.1.10 P0CONL P0 口 控 制 寄 存 器 ( 低 字 节 ): E7H... 4-12 4.1.11 P0PND P0 口 中 断 响 应 寄 存 器 : E8H... 4-13 4.1.12 P1CON P1 口 控 制 寄 存 器 : E9H... 4-14 4.1.13 P2CONH P2 口 控 制 寄 存 器 ( 高 字 节 ): EAH... 4-15 4.1.14 P2CONL P2 口 控 制 寄 存 器 ( 低 字 节 ): EBH... 4-16 4.1.15 PWMCON PWM 控 制 寄 存 器 : F3H... 4-17 4.1.16 PWMEX PWM 扩 展 寄 存 器 : F1H... 4-18 4.1.17 STOPCON STOP 控 制 寄 存 器 : E4H... 4-18 4.1.18 SYM 系 统 模 式 控 制 寄 存 器 : DFH... 4-19 4.1.19 T0CON TIMER 0 控 制 寄 存 器 (T0): D2H... 4-20 5 中 断...5-1 5.1 概 述... 5-1 5.2 中 断 控 制... 5-1 5.3 使 能 / 禁 止 中 断 指 令 (EI, DI)... 5-2 5.3.1 中 断 挂 起 标 志 位... 5-2 5.3.2 中 断 优 先 级... 5-2 5.3.3 中 断 源 服 务 顺 序... 5-3 5.3.4 中 断 服 务 程 序... 5-3 5.3.5 中 断 向 量 地 址 的 生 成... 5-3 5.3.6 S3F94C8/F94C4 中 断 源... 5-4 5.3.7 外 围 中 断 控 制 寄 存 器... 5-5 6 SAM88RCRI 指 令 集...6-1 6.1 概 述... 6-1 6.1.1 寄 存 器 访 问... 6-1 6.1.2 寻 址 模 式... 6-1
Rev. 0.0, Jan.2009 6.2 标 志 寄 存 器 (FLAGS)... 6-4 6.2.1 标 志 寄 存 器 描 述... 6-5 6.2.2 指 令 集 符 号... 6-6 6.3 条 件 转 移 代 码... 6-10 6.3.1 指 令 集 描 述... 6-11 6.3.1.1 ADC 带 进 位 加 法... 6-12 6.3.1.2 ADD 加 法... 6-13 6.3.1.3 AND 逻 辑 与... 6-14 6.3.1.4 CALL 调 用 子 程 序... 6-15 6.3.1.5 CCF C 取 反... 6-16 6.3.1.6 CLR 清 零... 6-17 6.3.1.7 COM 取 反... 6-18 6.3.1.8 CP 比 较... 6-19 6.3.1.9 DEC 减 1... 6-20 6.3.1.10 DI 禁 止 中 断... 6-21 6.3.1.11 EI 允 许 中 断... 6-22 6.3.1.12 IDLE IDLE 操 作... 6-23 6.3.1.13 INC 加 1... 6-24 6.3.1.14 IRET 中 断 返 回... 6-25 6.3.1.15 JP 跳 转... 6-26 6.3.1.16 JR 相 对 跳 转 指 令... 6-27 6.3.1.17 LD 数 据 传 送... 6-28 6.3.1.18 LD 数 据 传 送... 6-29 6.3.1.19 LDC/LDE 传 送 数 据... 6-30 6.3.1.20 LDC/LDE 传 送 数 据... 6-31 6.3.1.21 LDCD/LDED 传 送 数 据 之 后 地 址 自 动 减 1... 6-32 6.3.1.22 LDCI/LDEI 传 送 数 据 之 后 自 动 加 1... 6-33 6.3.1.23 NOP 空 操 作... 6-34 6.3.1.24 OR 逻 辑 或... 6-35 6.3.1.25 POP 出 栈... 6-36 6.3.1.26 PUSH 压 栈... 6-37 6.3.1.27 RCF C 清 0... 6-38 6.3.1.28 RET 子 程 序 返 回... 6-39 6.3.1.29 RL 左 移... 6-40 6.3.1.30 RLC 带 进 位 左 移... 6-41 6.3.1.31 RR 右 移... 6-42 6.3.1.32 RRC 带 进 位 右 移... 6-43 6.3.1.33 SBC 带 进 位 减 法... 6-44 6.3.1.34 SCF C 置 1... 6-45 6.3.1.35 SRA 算 数 右 移... 6-46 6.3.1.36 STOP STOP 指 令... 6-47 6.3.1.37 SUB 减 法... 6-48 6.3.1.38 TCM 取 反 位 测 试... 6-49 6.3.1.39 TM 位 测 试... 6-50 6.3.1.40 XOR 异 或... 6-51
Rev. 0.0, Jan.2009 7 时 钟 电 路...7-1 7.1 概 述... 7-1 7.1.1 省 电 模 式 下 时 钟 电 路 的 状 态... 7-2 7.1.2 系 统 时 钟 控 制 寄 存 器 (CLKCON)... 7-2 8 复 位 和 省 电 模 式...8-1 8.1 系 统 复 位... 8-1 8.1.1 概 述... 8-1 8.1.1.1 外 部 复 位 管 脚... 8-3 8.1.1.2 MCU 初 始 化 顺 序... 8-4 8.2 省 电 模 式... 8-5 8.2.1 STOP 模 式... 8-5 8.2.1.1 执 行 复 位 操 作 退 出 STOP 模 式... 8-5 8.2.1.2 使 用 外 部 中 断 退 出 STOP 模 式... 8-5 8.2.1.3 IDLE 模 式... 8-5 8.3 控 制 寄 存 器 复 位 值... 8-6 9 I/O 口...9-1 9.1 概 述... 9-1 9.1.1 各 口 数 据 寄 存 器... 9-2 9.1.2 P0 口... 9-3 9.1.3 P1 口... 9-7 9.1.4 P2 口... 9-9 10 Basic Timer 和 Timer 0...10-1 10.1 模 块 概 述... 10-1 10.1.1 Basic Timer... 10-1 10.1.2 Timer 0... 10-1 10.2 Basic Timer... 10-2 10.2.1 Basic Timer 控 制 寄 存 器 (BTCON)... 10-2 10.2.2 Basic Timer 功 能 描 述... 10-3 10.2.2.1 看 门 狗 功 能... 10-3 10.2.2.2 振 荡 稳 定 功 能... 10-3 10.3 Timer 0... 10-7 10.3.1 Timer 0 控 制 寄 存 器 (T0CON)... 10-7 10.3.2 Timer 0 功 能 描 述... 10-8 10.3.2.1 定 时 模 式... 10-8 11 PWM...11-1 11.1 概 述... 11-1 11.2 PWM 功 能 描 述... 11-2 11.2.1 PWM... 11-2 11.2.1.1 PWM 计 数 器... 11-2 11.2.1.2 PWM 数 据 比 较 寄 存 器 和 脉 冲 延 伸 控 制 寄 存 器... 11-2 11.2.1.3 PWM 时 钟 频 率... 11-4
Rev. 0.0, Jan.2009 11.2.1.4 PWM 功 能 描 述... 11-4 11.2.1.5 PWM 输 出 波 形... 11-5 11.2.1.6 PWM 控 制 寄 存 器 (PWMCON)... 11-11 11.2.1.7 PWM 扩 展 寄 存 器 (PWMEX)... 11-12 12 A/D 转 换 器...12-1 12.1 概 述... 12-1 12.2 使 用 A/D 输 入 管 脚 用 于 标 准 数 字 输 入... 12-2 12.2.1 A/D 转 换 控 制 寄 存 器 (ADCON)... 12-2 12.2.1.1 内 部 参 考 电 压... 12-3 12.2.1.2 转 换 时 间... 12-4 12.2.2 内 部 A/D 转 换 过 程... 12-5 13 嵌 入 式 闪 存 接 口...13-1 13.1 概 述... 13-1 13.1.1 Flash ROM 结 构... 13-1 13.1.2 工 具 编 程 模 式... 13-2 13.1.3 用 户 编 程 模 式... 13-2 13.2 闪 存 控 制 寄 存 器 ( 用 户 编 程 模 式 )... 13-3 13.2.1 闪 存 控 制 寄 存 器 (FMCON)... 13-3 13.2.2 闪 存 用 户 编 程 使 能 寄 存 器 (FMUSR)... 13-3 13.2.3 闪 存 扇 区 地 址 寄 存 器... 13-4 13.3 扇 区 擦 除... 13-5 13.3.1 用 户 编 程 模 式 下 扇 区 擦 除 流 程... 13-6 13.4 编 程... 13-8 13.4.1 用 户 编 程 模 式 下 编 程 流 程... 13-8 13.5 读... 13-13 13.5.1 用 户 编 程 模 式 下 编 程 流 程... 13-13 13.6 Hard Lock 保 护... 13-14 13.6.1 用 户 编 程 模 式 下 的 编 程 流 程... 13-14 14 电 气 参 数...14-1 14.1 概 述... 14-1 15 机 械 尺 寸...15-1 15.1 概 述... 15-1 16 S3F94C8/F94C4 Flash MCU...16-1 16.1 概 述... 16-1 16.2 在 板 编 程 (On Board Writing)... 16-4 16.2.1 电 路 设 计 指 导... 16-4 16.3 信 息 模 块 (Information Block)... 16-6
Rev. 0.0, Jan.2009 17 开 发 工 具...17-1 17.1 概 述... 17-1 17.1.1 目 标 板... 17-1 17.1.2 编 程 插 座 适 配 器... 17-1 17.1.2.1 [ 开 发 系 统 配 置 ]... 17-2 17.1.3 TB94C8/94C4 目 标 板... 17-3 17.1.4 SMDS2+ 选 择 (SAM8)... 17-5 17.1.4.1 IDLE LED... 17-7 17.1.4.2 STOP LED... 17-7 17.2 第 三 方 开 发 工 具... 17-9 17.2.1 SAM8 系 列 在 电 路 仿 真 器... 17-9 17.2.2 OTP/MTP 编 程 器... 17-9 17.2.3 开 发 工 具 供 应 商... 17-9 17.2.4 8 位 在 电 路 仿 真 器... 17-9 17.2.5 OTP/MTP 编 程 器 (Writer)... 17-10 17.2.6 OTP/MTP 编 程 器 (Writer)... 17-11
Rev. 0.0, Jan.2009 List of Figures Figure Title Page Number Number 图 1-1 系 统 框 图... 1-5 图 1-2 管 脚 分 布 图 (20- DIP/SOP/SSOP 封 装 )... 1-6 图 1-3 管 脚 分 布 图 (16- SOP/TSSOP 封 装 )... 1-7 图 1-4 管 脚 电 路 类 型 A... 1-9 图 1-5 管 脚 电 路 类 型 B (P1.2)... 1-9 图 1-6 管 脚 电 路 类 型 C... 1-10 图 1-7 管 脚 电 路 类 型 D... 1-10 图 1-8 管 脚 电 路 类 型 E (P2 口 )... 1-11 图 1-9 管 脚 电 路 类 型 E-1 (P0 口 )... 1-12 图 1-10 管 脚 电 路 类 型 E-2 (P1.0-P1.1)... 1-13 图 2-1 程 序 存 储 地 址 空 间... 2-2 图 2-2 Smart Option... 2-3 图 2-3 内 部 寄 存 器 卷 的 地 址 空 间... 2-6 图 2-4 16 位 寄 存 器 结 构... 2-7 图 2-5 堆 栈 操 作... 2-8 图 3-1 寄 存 器 访 问 模 式... 3-2 图 3-2 工 作 寄 存 器 访 问 模 式... 3-2 图 3-3 寄 存 器 卷 中 的 间 接 地 址 访 问... 3-3 图 3-4 程 序 存 储 空 间 的 间 接 地 址 访 问... 3-4 图 3-5 寄 存 器 卷 中 的 间 接 地 址 访 问... 3-5 图 3-6 工 作 寄 存 器 间 接 访 问 程 存 存 储 器 和 数 据 存 储 器... 3-6 图 3-7 寄 存 器 卷 的 偏 址 访 问... 3-7 图 3-8 短 偏 移 访 问 程 序 存 储 空 间 或 数 据 存 储 空 间... 3-8 图 3-9 长 偏 移 访 问 程 序 存 储 空 间 或 数 据 存 储 空 间... 3-9 图 3-10 LD 指 令 的 直 接 地 址 访 问 模 式... 3-10 图 3-11 CALL, JP 的 直 接 地 址 访 问... 3-11 图 3-12 相 对 地 址 访 问... 3-12 图 3-13 立 即 数 访 问 模 式... 3-12 图 4-1 寄 存 器 描 述 格 式... 4-4 图 5-1 S3F9 系 列 的 中 断 类 型... 5-1 图 5-2 中 断 功 能 框 图... 5-2 图 5-3 S3F94C8/F94C4 中 断 源... 5-4 图 6-1 系 统 标 志 寄 存 器 (FLAGS)... 6-4 图 7-1 主 振 荡 器 电 路 ( 内 部 RC 振 荡 )... 7-1 图 7-2 主 振 荡 器 电 路 ( 石 英 / 陶 瓷 晶 振 )... 7-1 图 7-3 系 统 时 钟 控 制 寄 存 器 (CLKCON)... 7-2 图 7-4 系 统 时 钟 电 路 原 理 图... 7-3
Rev. 0.0, Jan.2009 图 8-1 低 压 复 位 电 路... 8-2 图 8-2 推 荐 外 部 复 位 电 路... 8-3 图 8-3 复 位 电 路 原 理 图... 8-4 图 8-4 复 位 时 序 图... 8-4 图 9-1 各 口 数 据 寄 存 器 格 式... 9-2 图 9-2 P0 口 电 路 图... 9-3 图 9-3 P0 口 控 制 寄 存 器 (P0CONH, 高 字 节 )... 9-4 图 9-4 P0 口 控 制 寄 存 器 (P0CONL, 低 字 节 )... 9-5 图 9-5 P0 中 断 标 志 位 寄 存 器 (P0PND)... 9-6 图 9-6 P1 口 电 路 图... 9-7 图 9-7 P1 口 控 制 寄 存 器 (P1CON)... 9-8 图 9-8 P2 口 电 路 图... 9-9 图 9-9 P2 口 控 制 寄 存 器 (P2CONH, 高 字 节 )... 9-10 图 9-10 P2 口 控 制 寄 存 器 (P2CONL, 低 字 节 )... 9-11 图 10-1 Basic Timer 控 制 寄 存 器 (BTCON)... 10-2 图 10-2 复 位 后 的 振 荡 稳 定 时 间... 10-4 图 10-3 从 STOP 模 式 退 出 后 的 振 荡 稳 定 时 间... 10-5 图 10-4 Timer 0 控 制 寄 存 器 (T0CON)... 10-7 图 10-5 Timer 0 功 能 简 化 图 ( 定 时 模 式 )... 10-8 图 10-6 Timer 0 定 时 原 理 图... 10-9 图 10-7 Basic Timer 和 Timer 0 原 理 图... 10-10 图 11-1 PWM 数 据 寄 存 器 和 扩 展 寄 存 器... 11-3 图 11-2 PWM 输 出 波 形 (6 位 数 据 比 较 位 )... 11-5 图 11-3 PWM 延 伸 波 形 (6 位 数 据 比 较 位 2 位 脉 冲 延 伸 控 制 位 )... 11-6 图 11-4 PWM 输 出 波 形 (6 位 数 据 比 较 位 )... 11-7 图 11-5 PWM 延 伸 波 形 (6 位 数 据 比 较 位 +6 位 脉 冲 延 伸 控 制 位 )... 11-8 图 11-6 PWM 输 出 波 形 (8 位 数 据 比 较 位 )... 11-9 图 11-7 PWM 延 伸 波 形 (8 位 数 据 比 较 位 +6 位 脉 冲 延 伸 控 制 位 )... 11-10 图 11-8 PWM 控 制 寄 存 器 (PWMCON)... 11-11 图 11-9 PWM 扩 展 寄 存 器 (PWMEX)... 11-12 图 11-10 PWM 数 据 寄 存 器 (PWMEX)... 11-12 图 11-11 PWM 功 能 原 理 图... 11-13 图 12-1 A/D 转 换 控 制 寄 存 器 (ADCON)... 12-2 图 12-2 A/D 转 换 电 路 原 理 图... 12-3 图 12-3 A/D 转 换 数 据 寄 存 器 (ADDATAH/L)... 12-3 图 12-4 A/D 转 换 时 序 图... 12-4 图 12-5 高 精 度 A/D 转 换 推 荐 电 路... 12-5 图 13-1 闪 存 控 制 寄 存 器 (FMCON)... 13-3 图 13-2 闪 存 用 户 编 程 使 能 寄 存 器 (FMUSR)... 13-3 图 13-3 高 字 节 闪 存 扇 区 地 址 寄 存 器 (FMSECH)... 13-4 图 13-4 低 字 节 闪 存 扇 区 地 址 寄 存 器 (FMSECL)... 13-4 图 13-5 用 户 编 程 模 式 下 的 扇 区... 13-5 图 13-6 用 户 编 程 模 式 下 的 扇 区 擦 除 流 程 图... 13-6 图 13-7 用 户 编 程 模 式 下 单 字 节 编 程 流 程 图... 13-9 图 13-8 用 户 编 程 模 式 下 多 字 节 编 程 流 程 图... 13-10
Rev. 0.0, Jan.2009 图 14-1 中 断 输 入 脉 宽 测 量 点... 14-5 图 14-2 工 作 电 压 范 围 图... 14-8 图 14-3 施 密 特 触 发 器 输 入 特 性 图... 14-8 图 14-4 外 部 复 位 使 系 统 退 出 STOP 模 式 时 序 图... 14-9 图 14-5 LVR 复 位 时 间... 14-11 图 14-6 改 进 EFT 特 性 的 电 路 图... 14-12 图 15-1 20-DIP-300A 封 装 尺 寸... 15-1 图 15-2 20-SOP-375 封 装 尺 寸... 15-2 图 15-3 20-SSOP-225 封 装 尺 寸... 15-3 图 15-4 16-SOP-225 封 装 尺 寸... 15-4 图 15-5 16-TSSOP-0044 封 装 尺 寸... 15-5 图 16-1 S3F94C8/F94C4 管 脚 分 布 (20-DIP/20SOP)... 16-2 图 16-2 S3F94C8/F94C4 管 脚 分 布 (16SOP)... 16-2 图 16-3 编 程 接 口 ( 在 板 编 程 ) PCB 设 计 指 导... 16-4 图 16-4 S3F94C8/C4 Flash 结 构... 16-6 图 17-1 开 发 系 统 配 置... 17-2 图 17-2 TB94C8/94C4 目 标 板 配 置... 17-3 图 17-3 用 于 Smart Option 的 DIP 开 关... 17-7 图 17-4 TB94C8/94C4 上 的 20- 脚 连 接 口 插 座... 17-8 图 17-5 20-DIP 封 装 的 S3F94C8/F94C4 适 配 器 数 据 线... 17-8
Rev. 0.0, Jan.2009 List of Tables Table Title Page Number Number 表 1-1 S3F94C8/F94C4 管 脚 特 性... 1-8 表 1-2 Flash ROM 读 / 写 管 脚 特 性 描 述... 1-8 表 2-1 寄 存 器 类 型 总 结... 2-5 表 4-1 系 统 和 外 围 接 口 控 制 寄 存 器... 4-2 表 4-2 系 统 和 外 围 接 口 控 制 寄 存 器... 4-3 表 5-1 中 断 源 控 制 寄 存 器 和 数 据 寄 存 器... 5-5 表 6-1 指 令 集 简 介... 6-2 表 6-2 标 志 位 符 号... 6-6 表 6-3 指 令 集 标 号... 6-6 表 6-4 指 令 符 号 定 义... 6-7 表 6-5 操 作 代 码 快 速 参 考 表... 6-8 表 6-6 操 作 代 码 快 速 参 考 表... 6-9 表 6-7 条 件 转 移 代 码... 6-10 表 8-1 寄 存 器 复 位 值... 8-6 表 8-2 寄 存 器 复 位 值... 8-7 表 9-1 S3F94C8/F94C4 I/O 口 功 能 概 述... 9-1 表 9-2 各 口 数 据 寄 存 器 概 述... 9-2 表 11-1 PWM 控 制 寄 存 器 和 数 据 寄 存 器... 11-4 表 11-2 PWM 延 伸 控 制... 11-5 表 11-3 PWM 延 伸 控 制... 11-7 表 11-4 PWM 延 伸 控 制... 11-9 表 13-1 在 工 具 编 程 模 式 中 用 来 读 / 写 Flash 的 管 脚 描 述... 13-2 表 14-1 芯 片 极 限 物 理 特 性... 14-2 表 14-2 直 流 电 气 特 性... 14-3 表 14-3 交 流 电 气 特 性... 14-5 表 14-4 晶 体 振 荡 器 / 陶 瓷 振 荡 器 特 性... 14-6 表 14-5 振 荡 稳 定 时 间... 14-6 表 14-6 RC 振 荡 器 特 性 ( S3F94C8EZZ / F94C4EZZ )... 14-7 表 14-7 RC 振 荡 器 特 性 ( S3F94C8XZZ / F94C4XZZ )... 14-7 表 14-8 在 STOP 模 式 下 RAM 数 据 保 持 电 压... 14-9 表 14-9 A/D 转 换 电 气 特 性... 14-10 表 14-10 LVR 电 路 特 性... 14-11 表 14-11 闪 存 交 流 电 气 特 性... 14-11 表 14-12 ESD 特 性... 14-12
Rev. 0.0, Jan.2009 表 16-1 闪 存 读 / 写 管 脚 描 述... 16-3 表 16-2 S3F94C8/F94C4 的 特 性... 16-3 表 16-3 连 接 参 照 表... 16-5 表 16-4 主 ROM 和 信 息 模 块 的 操 作 结 果 比 较... 16-6 表 17-1 TB94C8/94C4 的 构 件... 17-4 表 17-2 TB94C8/94C4 的 电 源 选 择 设 置... 17-4 表 17-3 SMDS2+ 工 具 选 择 设 置... 17-5 表 17-4 用 单 头 管 脚 来 选 择 时 钟 源 和 使 能 / 禁 止 PWM... 17-6 表 17-5 用 单 头 管 脚 作 为 外 部 触 发 源 的 输 入... 17-7
List of Examples Example Title Page Number Number 编 程 实 例 2-1 Smart Option 设 置... 2-4 编 程 实 例 2-2 访 问 通 用 工 作 寄 存 器 区... 2-7 编 程 实 例 2-3 用 PUSH 和 POP 指 令 的 标 准 堆 栈 操 作... 2-9 编 程 实 例 8-1 S3F94C8/F94C4 初 始 化 程 序... 8-8 编 程 实 例 8-2 S3F94C8/F94C4 初 始 化 程 序... 8-9 编 程 实 例 8-3 S3F94C8/F94C4 初 始 化 程 序... 8-10 编 程 实 例 8-4 S3F94C8/F94C4 初 始 化 程 序... 8-11 编 程 实 例 10-1 设 置 Basic Timer... 10-6 编 程 实 例 10-2 设 置 Timer 0 ( 定 时 模 式 )... 10-11 编 程 实 例 10-3 设 置 Timer 0 ( 周 期 模 式 )... 10-12 编 程 实 例 11-1 PWM 编 程 详 例... 11-14 编 程 实 例 12-1 设 置 A/D 转 换 器... 12-6 编 程 实 例 12-2 设 置 A/D 转 换 器... 12-7 编 程 实 例 13-1 扇 区 擦 除... 13-7 编 程 实 例 13-2 编 程... 13-11 编 程 实 例 13-3 读... 13-13 编 程 实 例 13-4 Hard Lock 保 护... 13-14 1-15
1 产 品 概 述 1 产 品 概 述 1.1 SAM88RCRI MCU 三 星 的 SAM8 RCRI 系 列 8 位 单 片 机 向 用 户 提 供 了 高 效 快 速 的 CPU, 丰 富 的 外 围 接 口, 以 及 各 种 大 小 的 可 编 程 ROM 其 中 重 要 的 CPU 特 性 包 括 : 高 效 的 寄 存 器 结 构 可 选 的 CPU 时 钟 源 可 由 中 断 唤 醒 的 IDLE 和 STOP 低 功 耗 模 式 内 置 有 看 门 狗 功 能 的 Basic Timer 它 的 地 址 / 数 据 总 线 结 构 和 位 可 编 程 I/O 口 为 用 户 提 供 了 一 个 灵 活 的 编 程 环 境, 能 够 满 足 不 同 用 户 对 存 储 器 和 I/O 口 的 不 同 要 求 同 时, 具 有 可 选 工 作 模 式 的 Timer/Counters 可 支 持 实 时 操 作 1.2 S3F94C8/F94C4 MCU S3F94C8/F94C4 是 一 款 单 芯 片 8 位 MCU S3F94C8/F94C4 单 芯 片 CMOS MCU 由 先 进 的 CMOS 工 艺 制 造, 并 基 于 三 星 强 大 的 SAM88RCRI CPU 架 构 芯 片 具 有 STOP 和 IDLE 等 ( 低 功 耗 ) 模 式 S3F94C8 是 一 款 嵌 入 8-K 字 节 可 多 次 编 程 Full Flash ROM 的 微 控 制 器 S3F94C4 是 一 款 嵌 入 4-K 字 节 可 多 次 编 程 Full Flash ROM 的 微 控 制 器 S3C94C8/F94C4 是 一 款 多 功 能 的 通 用 MCU, 它 是 Timer/Counter,PWM,AD 转 换 等 电 子 应 用 领 域 的 理 想 选 择 此 外,S3F94C8/F94C4 先 进 的 CMOS 技 术 使 芯 片 具 有 低 功 耗 特 性 和 很 宽 电 压 工 作 范 围 S3F94C8/F94C4 在 SAM88RCRI 强 大 内 核 上 集 成 了 以 下 外 围 接 口 : 3 个 可 编 程 I/O 口 (18 个 管 脚 ) 4 个 中 断 源, 一 个 中 断 向 量, 同 一 中 断 优 先 级 1 个 具 有 interval 模 式 的 8 位 Timer/Counter 9 路 模 数 转 换 通 道 ( 最 多 ),10 位 转 换 结 果 1 个 具 有 三 种 模 式 的 PWM 输 出 :8 位 (6+2); 12 位 (6+6); 14 位 (8+6); S3F94C8/F94C4 微 控 制 器 目 前 可 提 供 的 封 装 类 型 有 20-DIP,20/16- SOP,20 SSOP 和 16 TSSOP 1-1
1 产 品 概 述 1.3 特 性 1.3.1 CPU SAM88RCRI CPU 内 核 1.3.2 存 储 器 内 部 可 多 次 编 程 Full-Flash 存 储 器 : 8K8 位 程 序 存 储 (S3F94C8) 4K8 位 程 序 存 储 (S3F94C4) o 扇 区 (Sector):128 字 节 o LDC 指 令 o 扇 区 可 擦 除 o 快 速 编 程 o 支 持 外 部 串 行 编 程 o 寿 命 :10,000 次 可 擦 除 / 编 程 o 10 年 数 据 保 留 208 个 字 节 的 通 用 数 据 寄 存 器 1.3.3 指 令 集 41 条 指 令 用 于 低 功 耗 模 式 的 IDLE 和 STOP 指 令 1.3.4 指 令 执 行 周 期 最 小 400ns (10MHz 晶 振 时 ) 1.3.5 中 断 同 一 中 断 优 先 级, 四 个 中 断 源 (2 个 外 部 中 断,2 个 内 部 中 断 ) 1.3.6 I/O 口 3 个 I/O 口 ( 最 多 18 管 脚 ) 所 有 管 脚 都 可 位 编 程 1-2
1 产 品 概 述 1.3.7 具 有 三 种 可 选 精 度 的 1 通 道 高 速 PWM 8 位 PWM: 6 位 数 据 比 较 (base),2 位 PWM 脉 冲 延 伸 控 制 位 (extension) 12 位 PWM: 6 位 数 据 比 较 (base),6 位 PWM 脉 冲 延 伸 控 制 位 (extension) 14 位 PWM: 8 位 数 据 比 较 (base),6 位 PWM 脉 冲 延 伸 控 制 位 (extension) 1.3.8 TIMER/COUNTERS 一 个 可 用 作 看 门 狗 的 8 位 Basic Timer 一 个 具 有 interval 模 式 的 8 位 Timer/Counter 1.3.9 A/D 转 换 器 9 路 模 拟 输 入 通 道 ( 最 多 ) 10 位 A/D 转 换 结 果 1.3.10 晶 振 频 率 0.4MHz ~ 10MHz 外 部 晶 振 典 型 4MHz 外 部 RC 振 荡 在 5V 工 作 电 压 下, 内 部 RC 振 荡 频 率 : 3.2MHz,0.5MHz 1.3.11 内 置 低 电 压 复 位 电 路 (LVR) 低 压 检 测 系 统 复 位 V LVR = 1.9/2.3/3.0/3.6/3.9V ( 通 过 Smart Option 设 置 ) 1.3.12 SMART OPTION LVR 使 能 / 禁 止 振 荡 器 选 择 1.3.13 温 度 工 作 范 围 40C ~ + 85C 1-3
1 产 品 概 述 1.3.14 电 压 工 作 范 围 1.8V ~ 5.5V @ 0.4-4MHz(LVR 禁 止 ) LVR ~ 5.5V @ 0.4-4MHz(LVR 使 能 ) 2.7V ~ 5.5V @ 0.4-10MHz 1.3.15 现 有 封 装 形 式 S3F94C8/F94C4: 20-DIP-300A 20-SOP-375 20-SSOP-225 16-SOP-225 16-TSSOP-0044 产 品 工 作 温 度 范 围 内 部 RC 振 荡 器 工 作 温 度 范 围 内 部 RC 振 荡 器 精 度 S3F94C8EZZ / F94C4EZZ 40C to + 85C 25C to + 85C 3%@5V, 25C S3F94C8XZZ / F94C4XZZ 40C to + 85C 40C to + 85C 1%@5V, 25C 1-4
1 产 品 概 述 1.4 内 部 模 块 框 图 XIN XOUT OSC Basic Timer Port I/O and Interrupt Control Port 0 P0.0/ADC0/INT0 P0.1/ADC1/INT1 P0.2/ADC2 P0.3/ADC3... P0.7/ADC7 Timer 0 Port 1 P1.0 P1.1 SAM88RCRI CPU P1.2 ADC0-ADC8 ADC P2.0/T0 4/8 KB ROM 208 Byte Register File Port 2 P2.1... P2.6/ADC8/CLO P0.6/PWM PWM IVC LVR 注 释 : 1. P1.2 只 能 用 做 输 入 口 2. IVC ( 内 部 电 压 转 换 模 块 ) 用 户 不 可 以 设 置 图 1-1 系 统 框 图 1-5
1 产 品 概 述 1.5 管 脚 分 布 图 VSS 1 20 VDD XIN/P1.0 2 19 P0.0/ADC0/INT0 (SCLK) XOUT/P1.1 3 18 P0.1/ADC1/INT1 (SDAT) (VPP) nreset/p1.2 T0/P2.0 4 5 S3F94C8/F94C4 17 16 P0.2/ADC2 P0.3/ADC3 P2.1 P2.2 6 7 (20-DIP -300A/ 20-SOP-375 / 20-SSOP-225) 15 14 P0.4/ADC4 P0.5/ADC5 P2.3 8 13 P0.6/ADC6/PWM P2.4 9 12 P0.7/ADC7 P2.5 10 11 P2.6/ADC8/CLO 图 1-2 管 脚 分 布 图 (20- DIP/SOP/SSOP 封 装 ) 1-6
1 产 品 概 述 VSS 1 16 VDD XIN/P1.0 2 15 P0.0/ADC0/INT0 (SCLK) XOUT/P1.1 (VPP) nreset/p1.2 T0/P2.0 3 4 5 S3F94C8/F94C4 (16-SOP-225 / 16-TSSOP-0044) 14 13 12 P0.1/ADC1/INT1 (SDAT) P0.2/ADC2 P0.3/ADC3 P2.1 6 11 P0.4/ADC4 P2.2 7 10 P0.5/ADC5 P2.3 8 9 P0.6/ADC6/PWM 图 1-3 管 脚 分 布 图 (16- SOP/TSSOP 封 装 ) 1-7
1 产 品 概 述 1.6 管 脚 特 性 描 述 表 1-1 S3F94C8/F94C4 管 脚 特 性 管 脚 名 称 输 入 / 输 出 管 脚 特 性 描 述 P0.0 P0.7 I/O 可 对 该 口 的 每 一 位 进 行 功 能 设 定, 可 以 设 定 为 施 密 特 触 发 器 输 入 或 推 挽 式 输 出 通 过 软 件 设 定 上 拉 电 阻 P0 口 也 可 用 作 A/D 转 换 输 入,PWM 输 出 或 外 部 中 断 输 入 P1.0 P1.1 I/O 可 对 该 口 的 每 一 位 进 行 功 能 设 定, 可 以 设 定 为 施 密 特 触 发 器 输 入, 推 挽 式 输 出 或 开 漏 输 出 通 过 软 件 设 定 上 拉 或 下 拉 电 阻 管 脚 类 型 共 用 管 脚 E-1 ADC0 ADC7 INT0/INT1/ PWM E-2 X IN,X OUT P1.2 I 施 密 特 触 发 器 输 入 B nreset P2.0 P2.6 I/O 可 对 该 口 的 每 一 位 进 行 功 能 设 定, 可 以 设 定 为 施 密 特 触 发 器 输 入, 推 挽 式 输 出 或 开 漏 输 出 通 过 软 件 设 定 上 拉 电 阻 E ADC8/CLO T0 X IN,X OUT 石 英 / 陶 瓷 晶 体, 或 RC 振 荡 作 为 系 统 时 钟 P1.0 P1.1 nreset I 内 部 LVR 或 外 部 复 位 管 脚 B P1.2 V DD,V SS 电 源 和 地 输 入 管 脚 CLO O 系 统 时 钟 输 出 口 E P2.6 INT0 INT1 I 外 部 中 断 输 入 管 脚 E-1 P0.0,P0.1 PWM O 14 位 高 速 PWM 输 出 口 E-1 P0.6 T0 O Timer 0 定 时 输 出 口 E-1 P2.0 ADC0 ADC8 I A/D 转 换 输 入 口 E-1 E P0.0 P0.7 P2.6 注 释 : P1.2 同 时 也 用 作 flash 编 程 的 VPP 引 脚, 因 此 其 内 部 有 固 有 的 下 拉 电 阻, 阻 值 约 300k 表 1-2 Flash ROM 读 / 写 管 脚 特 性 描 述 主 芯 片 编 程 时 管 脚 名 称 管 脚 名 称 管 脚 No. I/O 功 能 P0.1 SDAT 18 (20- 管 脚 ) 14 (16- 管 脚 ) P0.0 SCLK 19 (20- 管 脚 ) 15 (16- 管 脚 ) I/O 串 行 数 据 管 脚 ( 读 出 时 为 输 出 脚, 写 入 时 为 输 入 脚 ), 管 脚 可 设 置 为 输 入 或 推 挽 式 输 出 模 式 I 串 行 时 钟 管 脚 ( 仅 为 输 入 管 脚 ) nreset/p1.2 V PP 4 I 用 于 Tool 模 式 的 供 电 管 脚 ( 指 示 MTP 进 入 Tool 模 式 ) 在 11V 电 压 下,MTP 处 于 Tool 模 式 V DD /V SS V DD /V SS 20 (20- 管 脚 ),16 (16- 管 脚 ) 1 (20- 管 脚 ),1 (16- 管 脚 ) I 逻 辑 供 电 管 脚 1-8
1 产 品 概 述 1.7 管 脚 电 路 VDD P-channel IN N-channel 图 1-4 管 脚 电 路 类 型 A IN 图 1-5 管 脚 电 路 类 型 B (P1.2) 1-9
1 产 品 概 述 VDD Data Out Output DIsable 图 1-6 管 脚 电 路 类 型 C VDD Pull-up Enable Data Output Disable Circuit Type C I/O Digital Input 图 1-7 管 脚 电 路 类 型 D 1-10
1 产 品 概 述 VDD P2CONH P2CONL Open-drain Enable VDD Pull-up enable Alternative Output P2.x M U X Output Disable (Input Mode) Data P-CH N-CH I/O Digital Input Analog Input Enable ADC 图 1-8 管 脚 电 路 类 型 E (P2 口 ) 1-11
1 产 品 概 述 VDD P0CONH VDD Pull-up enable Alternative Output P0.x M U X Output Disable (Input Mode) Data P-CH N-CH I/O Digital Input Interrupt Input Analog Input Enable ADC 图 1-9 管 脚 电 路 类 型 E-1 (P0 口 ) 1-12
1 产 品 概 述 VDD Open-drain Enable VDD Pull-up enable P1.x I/O Output Disable (Input Mode) Digital Input Pull-down enable XIN XOUT 图 1-10 管 脚 电 路 类 型 E-2 (P1.0-P1.1) 1-13
2 地 址 空 间 2 地 址 空 间 2.1 概 述 S3F94C8/F94C4 MCU 有 两 类 地 址 空 间 : 内 部 full flash 程 序 存 储 空 间 (ROM) 内 部 寄 存 器 卷 (RAM) MCU 通 过 16 位 的 地 址 总 线 访 问 程 序 存 储 空 间, 通 过 独 立 的 8 位 地 址 线 和 数 据 线 访 问 内 部 寄 存 器 卷 S3F94C8/F94C4 内 集 成 了 可 多 次 编 程 的 8K/4K 字 节 的 full flash 程 序 存 储 器 S3F94C8/F94C4 MCU 在 其 内 部 寄 存 器 卷 中 有 208 个 字 节 的 通 用 寄 存 器,32 个 字 节 的 系 统 控 制 寄 存 器 和 外 围 接 口 控 制 寄 存 器 2-1
2 地 址 空 间 2.1.1 程 序 存 储 空 间 (ROM) 2.1.1.1 普 通 工 作 模 式 S3F94C8/F94C4 有 8K/4K 字 节 的 内 部 可 多 次 编 程 full flash 程 序 存 储 空 间 程 序 存 储 地 址 范 围 分 别 是 0H 1FFFH 和 0H 0FFFH ROM 地 址 的 起 始 2 个 字 节 (0000H 0001H) 是 中 断 入 口 地 址 除 去 3CH, 3DH, 3EH 和 3FH 等 存 储 空 间, 从 0002H 00FFH 都 可 用 作 普 通 的 程 序 存 储 空 间 3CH, 3DH, 3EH, 3FH 是 Smart Option 区 域, 用 于 控 制 外 围 端 口 及 芯 片 初 始 化 状 态 芯 片 复 位 后, 系 统 从 0100H 开 始 执 行 程 序 (Decimal) 8.191 (HEX) 1FFFH (S3F94C8) 8-Kbyte Program Memory (Flash) 4.095 0FFFH (S3F94C4) 4-Kbyte Program Memory (Flash) 256 64 60 2 1 0 Program Start Smart option ROM cell Interrupt Vector 0100H 0040H 003CH 0002H 0001H 0000H 图 2-1 程 序 存 储 地 址 空 间 2-2
2 地 址 空 间 2.1.1.2 Smart Option Smart Option 是 用 来 初 始 化 芯 片 的 ROM 选 项, 决 定 了 芯 片 的 启 动 状 态 ROM 中 用 于 Smart Option 的 地 址 范 围 为 003CH ~ 003FH S3F94C8/F94C4 只 用 了 003EH, 003FH 没 有 用 到 的 地 址 003CH, 003DH 必 须 初 始 化 为 00H 003EH, 003FH 的 默 认 值 为 FFH ( 使 能 LVR, 使 用 内 部 RC 振 荡 ) ROM Address: 003CH MSB.7.6.5.4.3.2.1.0 LSB MSB Must be initialized to 00H. ROM Address: 003DH.7.6.5.4.3.2.1.0 LSB Must be initialized to 00H. MSB ROM Address: 003EH.7.6.5.4.3.2.1.0 LSB LVR enable/disable bit: 0 = Disable 1 = Enable LVR level selection bits: 10100 = 1.9V 11001 = 2.3V 10010 = 3.0V 00111 = 3.6V 01100 = 3.9V Not used ROM Address : 003FH MSB.7.6.5.4.3.2.1.0 LSB Not used. Oscillator selection bits : 00 = External crystal / ceramic oscillator 01 = External RC 10 = Internal RC (0.5 MHz in VDD =5V) 11 = Internal RC (3.2 MHz in VDD =5V) 图 2-2 Smart Option 2-3
2 地 址 空 间 编 程 实 例 2-1 Smart Option 设 置 ; << 中 断 向 量 地 址 >> ORG 0000H Vector 00H, INT_94C8 ; S3F94C8/F94C4 只 有 一 个 中 断 向 量 ; << Smart Option 设 置 >> ORG 003CH DB 00H ; 003CH 必 须 初 始 化 为 0 DB 00H ; 003DH 必 须 初 始 化 为 0 DB 0E4H ; 003EH, 使 能 低 电 压 复 位 LVR (2.3V) DB 03H ; 003FH, 内 部 RC 振 荡 (3.2MHz,VDD = 5V) ; << 复 位 >> ORG 0100H RESET:DI 2-4
2 地 址 空 间 2.1.2 寄 存 器 结 构 (RAM) S3F94C8/F94C4 内 部 寄 存 器 卷 中 的 高 64 位 用 作 工 作 寄 存 器, 系 统 控 制 寄 存 器 和 外 围 接 口 控 制 寄 存 器 从 00H ~ BFH 的 低 192 个 字 节 用 作 通 用 寄 存 器 S3F94C8/F94C4 有 240 个 可 寻 址 的 8 位 寄 存 器, 其 中 208 个 寄 存 器 可 以 供 用 户 使 用 在 240 个 寄 存 器 中,32 个 字 节 用 于 CPU, 系 统 控 制 寄 存 器 外 围 控 制 寄 存 器 和 数 据 寄 存 器 ;16 个 字 节 用 于 通 用 工 作 寄 存 器,192 个 字 节 是 通 用 寄 存 器 区 对 于 SAM88RCRI MCU, 在 内 部 寄 存 器 卷 中, 都 已 扩 展 了 寄 存 器 页 以 方 便 使 用 但 在 S3F94C8/F94C4 中 没 有 扩 展 页, 只 有 一 个 页 (00H ~ BFH:page0) 可 以 使 用 表 2-1 中 总 结 了 内 部 寄 存 器 卷 中 特 殊 功 能 寄 存 器 类 型 和 所 占 字 节 数 表 2-1 寄 存 器 类 型 总 结 寄 存 器 类 型 所 占 字 节 数 CPU, 系 统 控 制 寄 存 器 11 外 围 接 口,I/O 口, 时 钟 控 制 器, 数 据 寄 存 器 21 通 用 寄 存 器 ( 包 括 16 个 工 作 寄 存 器 ) 208 所 有 可 寻 址 的 字 节 数 240 2-5
2 地 址 空 间 FFH 64 Bytes of Common Area E0H DFH D0H CFH C0H BFH Peripheral Control Registers System Control Registers Working Registers 192 Bytes ~ General Purpose Register File and Stack Area 00H 图 2-3 内 部 寄 存 器 卷 的 地 址 空 间 2-6
2 地 址 空 间 2.2 通 用 工 作 寄 存 器 区 (C0H CFH) 为 充 分 利 用 短 指 令 格 式 的 优 点, 减 少 指 令 执 行 时 间,SAM88RCRI 寄 存 器 结 构 提 供 了 一 个 有 效 的 工 作 寄 存 器 访 问 模 式 0C0H ~ 0CFH 这 16 个 地 址 范 围 称 为 通 用 寄 存 器 区, 这 个 地 址 范 围 的 寄 存 器 可 以 用 作 工 作 寄 存 器, 工 作 寄 存 器 可 以 访 问 寄 存 器 卷 任 意 页 中 的 任 何 地 址 空 间 一 般 的, 这 些 工 作 寄 存 器 可 以 用 作 不 同 页 之 间 数 据 操 作 的 数 据 暂 存 器 但 S3F94C8/F94C4 只 有 第 0 页, 可 以 用 工 作 寄 存 器 进 行 任 意 的 内 部 数 据 操 作 工 作 寄 存 器 访 问 模 式 和 间 接 寄 存 器 访 问 模 式 可 以 访 问 这 个 存 储 区 间 工 作 寄 存 器 既 可 以 用 作 8 位 寄 存 器 也 可 以 用 作 16 位 寄 存 器 当 用 作 16 位 时, 开 始 的 8 位 寄 存 器 地 址 必 须 为 偶 数, 下 一 个 寄 存 器 地 址 则 为 奇 数 在 读 写 数 据 时, 高 字 节 数 据 存 在 偶 数 地 址 寄 存 器, 而 低 字 节 数 据 存 在 下 一 个 奇 数 ( 偶 数 加 一 ) 地 址 寄 存 器 MSB Rn LSB Rn+1 n = Even address 图 2-4 16 位 寄 存 器 结 构 编 程 实 例 2-2 访 问 通 用 工 作 寄 存 器 区 下 面 的 例 子, 通 过 工 作 寄 存 器 访 问 模 式 和 间 接 寄 存 器 访 问 模 式 来 访 问 位 于 C0H ~ CFH 地 址 的 通 用 工 作 寄 存 器 区 例 : 1. LD 0C2H,40H ; 非 法 访 问 模 式 用 工 作 寄 存 器 访 问 模 式 替 代 : LD R2,40H ; R2 (C2H) 地 址 40H 单 元 中 的 数 据 2. ADD 0C3H,#45H ; 非 法 访 问 模 式 用 工 作 寄 存 器 访 问 模 式 替 代 : ADD R3, #45H ; R3 (C3H) R3 + 45H 2-7
2 地 址 空 间 2.3 系 统 堆 栈 S3F9- 系 列 MCU 利 用 系 统 堆 栈 实 现 子 程 序 调 用, 返 回, 及 数 据 存 放 PUSH 和 POP 指 令 可 以 用 来 实 现 堆 栈 的 操 作 S3F94C8/F94C4 内 部 结 构 支 持 内 部 寄 存 器 卷 的 堆 栈 操 作 2.3.1 堆 栈 操 作 子 程 序 调 用 返 回 地 址, 中 断 返 回 地 址 和 压 栈 数 据 都 存 放 在 堆 栈 区 内 当 有 CALL 指 令 时,PC 值 被 压 入 堆 栈, 当 有 RET 指 令 时,PC 值 弹 出 堆 栈 当 有 中 断 时,PC 值 和 FLAGS 值 被 压 入 堆 栈,IRET 指 令 时, 把 进 入 中 断 前 的 PC 值 和 FLAGS 值 送 回 原 来 的 寄 存 器 压 栈 时, 堆 栈 地 址 自 动 减 一, 而 后 压 栈 ; 出 栈 时, 当 数 据 弹 出 后, 堆 栈 地 址 自 动 加 一 图 2-5 所 示, 堆 栈 指 针 始 终 指 向 栈 顶 的 位 置 High Address Top of stack PCL PCH Top of stack PCL PCH Flags Stack contents after a call instruction Low Address Stack contents after an interrupt 图 2-5 堆 栈 操 作 2.3.2 堆 栈 指 针 (SP) 8 位 堆 栈 指 针 (SP) 用 于 系 统 堆 栈 操 作, 地 址 为 D9H 系 统 复 位 后, 堆 栈 指 针 的 值 不 确 定 所 以 必 须 在 任 何 子 程 序 调 用 和 中 断 服 务 程 序 返 回 前 初 始 化 堆 栈 指 针 SP 由 于 S3F94C8/F94C4 仅 使 用 内 部 存 储 192 字 节 的 空 间, 在 程 序 初 始 化 中,SP 必 须 初 始 化 为 00H ~ 0CH 中 间 的 某 个 8 位 数 据 提 示 假 如 堆 栈 指 针 (SP) 初 始 化 为 00H, 当 堆 栈 开 始 操 作 时,SP 的 值 变 为 FFH 这 意 味 着 系 统 访 问 了 非 法 的 堆 栈 区 所 以, 在 程 序 初 始 化 时, 我 们 建 议 把 堆 栈 指 针 初 始 化 为 C0H, 将 SP 指 向 栈 顶 BFH 2-8
2 地 址 空 间 编 程 实 例 2-3 用 PUSH 和 POP 指 令 的 标 准 堆 栈 操 作 下 面 的 例 子, 告 诉 你 如 何 用 PUSH 和 POP 指 令 对 寄 存 器 卷 中 的 堆 栈 区 进 行 操 作 LD SP,#0C0H ; SP C0H ( 通 常 情 况 下,SP 初 始 化 为 C0H) ; PUSH SYM ; 堆 栈 地 址 0BFH SYM PUSH R15 ; 堆 栈 地 址 0BEH R15 PUSH 20H ; 堆 栈 地 址 0BDH 20H PUSH R3 ; 堆 栈 地 址 0BCH R3 POP R3 ; R3 堆 栈 地 址 0BCH POP 20H ; 20H 堆 栈 地 址 0BDH POP R15 ; R15 堆 栈 地 址 0BEH POP SYM ; SYM 堆 栈 地 址 0BFH 2-9
3 寻 址 方 式 3 寻 址 方 式 3.1 概 述 S3F94C8/F94C4 通 过 PC 来 访 问 程 序 存 储 空 间 内 的 指 令, 指 令 隐 含 着 要 执 行 的 操 作 和 要 处 理 的 数 据 寻 址 方 式 是 用 于 决 定 操 作 数 地 址 的 一 种 方 法 SAM88RCRI 指 令 确 定 的 操 作 数 可 能 是 条 件 转 移 指 令, 立 即 数 或 者 是 寄 存 器 卷, 程 序 存 储 区, 数 据 存 储 区 中 的 地 址 SAM88RCRI 指 令 集 支 持 六 种 寻 址 方 式, 但 并 不 是 所 有 的 指 令 都 支 持 所 有 的 地 址 访 问 下 面 给 出 具 体 的 寻 址 方 式 和 它 们 的 符 号 表 示 : 寄 存 器 访 问 模 式 (R) 间 接 寄 存 器 访 问 模 式 (IR) 偏 址 访 问 模 式 (X) 直 接 访 问 模 式 (DA) 相 对 地 址 访 问 模 式 (RA) 立 即 数 访 问 模 式 (IM) 3-1
3 寻 址 方 式 3.1.1 寄 存 器 访 问 模 式 (R) 在 寄 存 器 访 问 模 式 中, 操 作 数 是 指 定 寄 存 器 中 的 值 ( 图 3-1) 工 作 寄 存 器 访 问 模 式 与 寄 存 器 访 问 模 式 是 不 同 的, 这 是 因 为 工 作 寄 存 器 用 到 寄 存 器 卷 中 的 16 位 工 作 空 间 和 其 中 的 一 个 4 位 寄 存 器 ( 图 3-2) 8-Bit Register File Address One-Operand Instruction (Example) Program Memory dst OPCODE Point to one register in register file Value used in Instruction Execution Register File OPERAND Sample Instruction: DEC CNTR ; Where CNTR is the label of an 8-bit register address 图 3-1 寄 存 器 访 问 模 式 Register File CFH 4-Bit Working Register Two-Operand Instruction (Example) Program Memory dst src OPCODE 4LSBs Point to the working register (1 of 16).... OPERAND C0H Sample Instruction: ADD R1, R2 ; Where R1 and R2 are registers in the currently selected working register area. 图 3-2 工 作 寄 存 器 访 问 模 式 3-2
3 寻 址 方 式 3.1.2 间 接 寄 存 器 访 问 模 式 (IR) 在 间 接 寄 存 器 访 问 模 式 (IR) 中, 指 定 寄 存 器 或 寄 存 器 对 中 存 放 的 是 操 作 数 的 地 址 根 据 所 用 的 指 令, 物 理 地 址 有 可 能 为 寄 存 器 卷 中 的 寄 存 器, 程 序 存 储 器 (ROM), 或 者 外 部 数 据 存 储 器 ( 图 3-3 到 图 3-6) 可 以 用 任 意 的 8 位 寄 存 器 访 问 其 它 的 寄 存 器, 也 可 以 用 任 意 的 16 位 寄 存 器 组 访 问 其 它 的 存 储 器 空 间 Program Memory Register File 8-Bit Register File Address One-Operand Instruction (Example) dst OPCODE Point to one register in register file Address of operand used by instruction ADDRESS Value used in instruction execution OPERAND Sample Instruction: RL @SHIFT ; Where SHIFT is the label of an 8-bit register ddress 图 3-3 寄 存 器 卷 中 的 间 接 地 址 访 问 3-3
3 寻 址 方 式 3.1.2.1 间 接 寄 存 器 访 问 模 式 Register File Program Memory Example Instruction References Program Memory dst OPCODE Point to register pair REGISTER PAIR Program Memory 16-bit address points to program memory Value used in instruction OPERAND Sample Instructions: CALL JP @RR2 @RR2 图 3-4 程 序 存 储 空 间 的 间 接 地 址 访 问 3-4
3 寻 址 方 式 3.1.2.2 间 接 寄 存 器 访 问 模 式 Register File CFH 4-Bit Working Register Address Program Memory dst src OPCODE 4LSBs Point to the working register (1 of 16).... OPERAND C0H Sample Instruction: OR R6, @R2 Value used in instruction OPERAND 图 3-5 寄 存 器 卷 中 的 间 接 地 址 访 问 3-5
3 寻 址 方 式 3.1.2.3 间 接 寄 存 器 访 问 模 式 Register File CFH 4-Bit Working Register Address Example instruction references either program memory or data memory Program Memory dst src OPCODE Next 3 Bits Point to working register pair (1 of 8) LSB Selects Value used in instruction.... Register Pair Program Memory or Data Memory OPERAND C0H 16-Bit address points to program memory or data memory Sample Instructions: LCD R5,@RR6 ; Program memory access LDE R3,@RR14 ; External data memory access LDE @RR4, R8 ; External data memory access 图 3-6 工 作 寄 存 器 间 接 访 问 程 存 存 储 器 和 数 据 存 储 器 3-6
3 寻 址 方 式 3.1.3 偏 址 访 问 模 式 (X) 在 执 行 指 令 时, 偏 址 访 问 模 式 (X) 在 基 地 址 的 基 础 上 加 上 偏 移 地 址 计 算 出 有 效 的 操 作 数 地 址 ( 图 3-7) 编 程 时, 可 以 利 用 偏 址 访 问 模 式 访 问 内 部 寄 存 器 卷 或 者 外 部 数 据 存 储 器 在 短 偏 移 访 问 模 式 下,8 位 偏 移 量 被 认 为 是 范 围 在 128 ~ +127 的 一 个 有 符 号 偏 移 量 这 只 用 于 外 部 存 储 器 访 问 ( 图 3-8) 寄 存 器 卷 访 问 是 根 据 指 令 中 提 供 的 8 位 基 地 址 加 上 工 作 寄 存 器 中 的 8 位 偏 移 地 址, 进 行 偏 址 访 问 的 访 问 外 部 存 储 器 时, 基 地 址 存 放 在 指 令 指 示 的 16 位 工 作 寄 存 器 中, 指 令 中 给 出 的 8 位 或 16 位 偏 移 地 址 就 加 在 这 个 基 地 址 上, 实 现 操 作 数 的 访 问 ( 图 3-9) 对 内 部 寄 存 器 卷 进 行 偏 址 访 问 的 唯 一 指 令 是 载 入 指 令 (LD) 对 内 部 程 序 存 储 器, 外 部 程 序 存 储 器, 及 外 部 数 据 存 储 器 进 行 偏 址 访 问 的 指 令 可 以 用 LDC 和 LDE Register File ~ ~ Value used in instruction OPERAND Program Memory + ~ ~ Two-Operand Instruction Example X (OFFSET) dst src OPCODE 4 LSBs Point to one of the working register (1 of 16) INDEX Sample Instruction: LD R0, #BASE[R1] ; Where BASE is an 8-bit immediate value 图 3-7 寄 存 器 卷 的 偏 址 访 问 3-7
3 寻 址 方 式 3.1.3.1 偏 址 访 问 模 式 Program Memory Register File 4-Bit Working Register Address XS (OFFSET) dst src OPCODE Point to working register pair (1 of 8) LSB Selects 8-Bit NEXT 3 Bits + 16-Bit Register Pair Program Memory or Data memory 16-Bit address added to offset 16-Bit OPERAND Value used in instruction Sample Instructions: LDC R4, #04H[RR2] ; The values in the program address (RR2 + #04H) are loaded into register R4. LDE R4,#04H[RR2] ; Identical operation to LDC example, except that external program memory is accessed. 图 3-8 短 偏 移 访 问 程 序 存 储 空 间 或 数 据 存 储 空 间 3-8
3 寻 址 方 式 3.1.3.2 偏 址 访 问 模 式 Program Memory Register File 4-Bit Working Register Address XLH (OFFSET) XLL (OFFSET) dst src OPCODE 16-Bit NEXT 3 Bits Point to working register pair (1 of 8) LSB Selects + 16-Bit Register Pair Program Memory or Datamemory 16-Bit address added to offset 16-Bit OPERAND Value used in instruction Sample Instructions: LDC R4, #1000H[RR2] ; The values in the program address (RR2 + #1000H) are loaded into register R4. LDE R4, #1000H[RR2] ; Identical operation to LDC example, except that external program memory is accessed. 图 3-9 长 偏 移 访 问 程 序 存 储 空 间 或 数 据 存 储 空 间 3-9
3 寻 址 方 式 3.1.4 直 接 访 问 模 式 (DA) 在 直 接 访 问 模 式 (DA) 下, 指 令 提 供 操 作 数 的 16 位 存 储 器 地 址 执 行 Jump (JP),Call (CALL) 指 令 时, 就 是 采 用 这 种 寻 址 方 式 指 定 装 入 PC 当 中 的 16 位 地 址 LDC,LDE 指 令 也 是 运 用 直 接 访 问 模 式 为 数 据 转 移 操 作 提 供 原 操 作 数 和 目 的 操 作 数 的 地 址 LDC 访 问 程 序 存 储 空 间,LDE 访 问 外 部 数 据 存 储 空 间 Program or Data Memory Program Memory Memory Address Used Upper Address Byte Lower Address Byte dst/src "0" or "1" OPCODE LSB Selects Program Memory or Data Memory: "0" = Program Memory "1" = Data Memory Sample Instructions: LDC R5,1234H ; The values in the program address (1234H)are loaded into register R5. LDE R5,1234H ; Identical operation to LDC example, except that external program memory is accessed. 图 3-10 LD 指 令 的 直 接 地 址 访 问 模 式 3-10
3 寻 址 方 式 3.1.4.1 直 接 访 问 模 式 Program Memory Next OPCODE Program Memory Address Used Lower Address Byte Upper Address Byte OPCODE Sample Instructions: JP C,JOB1 ; Where JOB1 is a 16-bit immediate address CALL DISPLAY ; Where DISPLAY is a 16-bit immediate address 图 3-11 CALL, JP 的 直 接 地 址 访 问 3-11
3 寻 址 方 式 3.1.5 相 对 地 址 访 问 模 式 (RA) 在 相 对 地 址 访 问 模 式 中, 指 令 的 跳 转 范 围 只 能 在 有 符 号 数 128 ~ +127 之 间 偏 移 量 加 上 当 前 的 PC 值, 即 为 下 一 条 要 执 行 指 令 的 地 址 在 加 上 偏 移 量 之 前,PC 中 存 储 的 是 当 前 指 令 的 下 一 条 指 令 的 地 址 支 持 相 对 地 址 访 问 的 指 令 有 JR Program Memory Next OPCODE Program Memory Address Used Current Instruction Displacement OPCODE Current PC Value Signed Displacement Value + Sample Instructions: JR ULT,$ + OFFSET ; Where OFFSET is a value in the range + 127 to - 128 图 3-12 相 对 地 址 访 问 3.1.6 立 即 数 访 问 模 式 (IM) 在 立 即 数 访 问 模 式 中, 指 令 本 身 就 已 经 提 供 了 操 作 数 的 值 立 即 数 访 问 模 式 在 向 寄 存 器 中 装 入 常 数 时 是 很 有 用 的 Program Memory OPERAND OPCODE (The Operand value is in the instruction) Sample Instruction: LD R0,#0AAH 图 3-13 立 即 数 访 问 模 式 3-12
4 控 制 寄 存 器 4 控 制 寄 存 器 4.1 概 述 在 这 一 章, 我 们 用 易 读 的 表 格 形 式 详 细 描 述 S3F94C8/F94C4 的 控 制 寄 存 器 这 些 信 息 将 会 帮 助 设 计 人 员 熟 悉 控 制 寄 存 器 在 寄 存 器 卷 中 的 位 置, 也 可 以 用 作 编 程 人 员 的 快 速 参 考 资 源 表 4-1 总 结 了 系 统 控 制 寄 存 器 和 外 围 接 口 控 制 寄 存 器, 图 4-1 图 解 了 标 准 ( 的 ) 寄 存 器 描 述 控 制 寄 存 器 描 述 按 照 寄 存 器 代 表 符 号 的 字 母 顺 序 排 列 更 多 有 关 控 制 寄 存 器 的 信 息 在 本 手 册 第 二 部 分 的 硬 件 资 源 描 述 中 4-1
4 控 制 寄 存 器 表 4-1 系 统 和 外 围 接 口 控 制 寄 存 器 寄 存 器 名 称 标 号 地 址 复 位 值 Address R/W 7 6 5 4 3 2 1 0 Timer 0 计 数 器 寄 存 器 T0CNT D0H R 0 0 0 0 0 0 0 0 Timer 0 数 据 寄 存 器 T0DATA D1H R/W 1 1 1 1 1 1 1 1 Timer 0 控 制 寄 存 器 T0CON D2H R/W 0 0 0 0 0 D3H 保 留 时 钟 控 制 寄 存 器 CLKCON D4H R/W 0 0 0 系 统 标 志 寄 存 器 FLAGS D5H R/W x x x x D6H D8H 保 留 堆 栈 指 针 寄 存 器 SP D9H R/W x x x x x x x x DAH 保 留 MDS 特 殊 功 能 寄 存 器 MDSREG DBH R/W 0 0 0 0 0 0 0 0 Basic Timer 控 制 寄 存 器 BTCON DCH R/W 0 0 0 0 0 0 0 0 Basic Timer 计 数 器 BTCNT DDH R 0 0 0 0 0 0 0 0 测 试 控 制 寄 存 器 FTSTCON DEH W 0 0 0 0 0 0 系 统 模 式 控 制 寄 存 器 SYM DFH R/W 0 0 0 0 注 释 : 1. : 没 有 用 到,X 值 不 确 定 2. FTSTCON 是 生 产 厂 家 测 试 寄 存 器, 只 有 生 产 厂 家 可 以 使 用 在 正 常 操 作 中, 该 寄 存 器 的 值 应 始 终 为 00H 4-2
4 控 制 寄 存 器 表 4-2 系 统 和 外 围 接 口 控 制 寄 存 器 寄 存 器 名 称 标 号 地 址 Hex R/W 复 位 值 7 6 5 4 3 2 1 0 P0 口 数 据 寄 存 器 P0 E0H R/W 0 0 0 0 0 0 0 0 P1 口 数 据 寄 存 器 P1 E1H R/W 0 0 0 P2 口 数 据 寄 存 器 P2 E2H R/W 0 0 0 0 0 0 0 E3H E5H 保 留 P0 口 控 制 寄 存 器 ( 高 字 节 ) P0CONH E6H R/W 0 0 0 0 0 0 0 0 P0 口 控 制 寄 存 器 ( 低 字 节 ) P0CONL E7H R/W 0 0 0 0 0 0 0 0 P0 中 断 标 志 位 寄 存 器 P0PND E8H R/W 0 0 0 0 P1 口 控 制 寄 存 器 P1CON E9H R/W 0 0 0 0 0 0 P2 口 控 制 寄 存 器 ( 高 字 节 ) P2CONH EAH R/W 0 0 0 0 0 0 0 P2 口 控 制 寄 存 器 ( 低 字 节 ) P2CONL EBH R/W 0 0 0 0 0 0 0 0 闪 存 控 制 寄 存 器 FMCON ECH R/W 0 0 0 0 0 闪 存 用 户 可 编 程 使 能 寄 存 器 FMUSR EDH R/W 0 0 0 0 0 0 0 0 闪 存 扇 区 地 址 寄 存 器 ( 高 字 节 ) FMSECH EEH R/W 0 0 0 0 0 0 0 0 闪 存 扇 区 地 址 寄 存 器 ( 低 字 节 ) FMSECL EFH R/W 0 0 0 0 0 0 0 0 PWM 数 据 寄 存 器 1 PWMDATA1 F0H R/W 0 0 0 0 0 0 0 0 PWM 扩 展 寄 存 器 PWMEX F1H R/W 0 0 0 0 0 0 0 0 PWM 数 据 寄 存 器 PWMDATA F2H R/W 0 0 0 0 0 0 0 0 PWM 控 制 寄 存 器 PWMCON F3H R/W 0 0 0 0 0 0 0 STOP 控 制 寄 存 器 STOPCON F4H R/W 0 0 0 0 0 0 0 0 F5H F6H 保 留 A/D 转 换 控 制 寄 存 器 ADCON F7H R/W 0 0 0 0 0 0 0 0 A/D 转 换 数 据 寄 存 器 ( 高 ) ADDATAH F8H R x x x x x x x x A/D 转 换 数 据 寄 存 器 ( 低 ) ADDATAL F9H R 0 0 0 0 0 0 x x FAH FFH 保 留 注 释 : : 没 有 用 到, x: 不 确 定 4-3
4 控 制 寄 存 器 Bit number(s) that is/are appended to the register name for bit addressing Name of individual Register bit or related bits ID Register name Register address (hexadecimal) FLAGS- System Flags Register D5H Bit Identifier RESET Value Read/Write.7.6.5.4.3.2.1.0 x R/W x R/W x R/W x R/W x R/W x R/W 0 R/W 0 R/W.7.6 Carry Flag (C) 0 Operation dose not generate a carry or borrow condition 1 Operation generates carry-out or borrow into high-order bit7 Zero Flag 0 Operation result is a non-zero value 1 Operation result is zero.5 Sign Flag 0 Operation generates positive number (MSB = "0") 1 Operation generates negative number (MSB = "1") R = Read-only W = Write-only R/W = Read/write ' - ' = Not used Description of the effect of specific bit settings RESET value notation: '-' = Not used 'x' = Undetermind value '0' = Logic zero '1' = Logic one Bit number: MSB = Bit 7 LSB = Bit 0 图 4-1 寄 存 器 描 述 格 式 4-4
4 控 制 寄 存 器 4.1.1 ADCON A/D 转 换 控 制 寄 存 器 : F7H 位.7.6.5.4.3.2.1.0 复 位 值 0 0 0 0 0 0 0 0 读 / 写 R/W R/W R/W R/W R/W R/W R/W R/W.7.4 A/D 转 换 输 入 管 脚 选 择 位 0 0 0 0 ADC0 (P0.0) 0 0 0 1 ADC1 (P0.1) 0 0 1 0 ADC2 (P0.2) 0 0 1 1 ADC3 (P0.3) 0 1 0 0 ADC4 (P0.4) 0 1 0 1 ADC5 (P0.5) 0 1 1 0 ADC6 (P0.6) 0 1 1 1 ADC7 (P0.7) 1 0 0 0 ADC8 (P2.6) 1 0 0 1 内 部 接 地 1 0 1 0 内 部 接 地 1 0 1 1 内 部 接 地 1 1 0 0 内 部 接 地 1 1 0 1 内 部 接 地 1 1 1 0 内 部 接 地 1 1 1 1 内 部 接 地.3 转 换 结 束 状 态 位 0 A/D 转 换 正 在 进 行 1 A/D 转 换 结 束.2.1 时 钟 输 入 选 择 位 0 0 f OSC /16 (f OSC 10MHz) 0 1 f OSC /8 (f OSC 10MHz) 1 0 f OSC /4 (f OSC 10MHz) 1 1 f OSC /1 (f OSC 4MHz).0 启 动 转 换 位 0 没 有 意 义 1 启 动 A/D 转 换 注 释 : 最 大 ADC 时 钟 输 入 = 4MHz. 4-5
4 控 制 寄 存 器 4.1.2 BTCON BASIC TIMER 控 制 寄 存 器 : DCH 位.7.6.5.4.3.2.1.0 复 位 值 0 0 0 0 0 0 0 0 读 / 写 R/W R/W R/W R/W R/W R/W R/W R/W.7.4 看 门 狗 功 能 使 能 位 1 0 1 0 禁 止 看 门 狗 功 能 其 它 值 使 能 看 门 狗 功 能.3.2 Basic Timer 输 入 时 钟 选 择 位 0 0 f OSC /4096 0 1 f OSC /1024 1 0 f OSC /128 1 1 非 法 设 置.1 Basic Timer 8 位 计 数 器 清 0 控 制 位 0 没 有 作 用 1 清 除 Basic Timer 的 计 数 值.0 Basic Timer 和 Timer0 分 频 器 清 除 位 0 没 有 作 用 1 清 除 分 频 器 注 释 : 当 写 1 到 BTCON.0 ( 或 BTCON.1) 时, Basic Timer 和 timer 0 的 分 频 器 ( 或 basic timer 计 数 器 ) 立 即 同 时 清 除, 之 后 该 位 也 被 自 动 清 为 零 4-6
4 控 制 寄 存 器 4.1.3 CLKCON 时 钟 控 制 寄 存 器 : D4H 位.7.6.5.4.3.2.1.0 复 位 值 0 0 0 读 / 写 R/W R/W R/W.7 振 荡 器 IRQ 唤 醒 功 能 使 能 位 0 使 能 IRQ 唤 醒 系 统 主 振 荡 器 1 禁 止 IRQ 唤 醒 系 统 主 振 荡 器.6.5 S3F94C8/F94C4 不 使 用.4.3 CPU 时 钟 分 频 选 择 位 0 0 16 分 频 (f OSC /16) 0 1 8 分 频 (f OSC /8) 1 0 2 分 频 (f OSC /2) 1 1 1 分 频 (f OSC ).2.0 S3F94C8/F94C4 不 使 用 4-7
4 控 制 寄 存 器 4.1.4 FLAGS 系 统 标 志 寄 存 器 : D5H 位.7.6.5.4.3.2.1.0 复 位 值 x x x x 读 / 写 R/W R/W R/W R/W.7 Carry Flag (C) 0 操 作 没 有 产 生 进 位 或 借 位 1 操 作 产 生 进 位 或 借 位.6 Zero Flag (Z) 0 操 作 结 果 不 是 0 1 操 作 结 果 是 0.5 Sign Flag (S) 0 操 作 产 生 正 数 (MSB = "0") 1 操 作 产 生 负 数 (MSB = "1").4 Overflow Flag (V) 0 操 作 结 果 在 128 ~ + 127 之 间 1 操 作 结 果 不 在 128 ~ + 127 之 间, 即 溢 出.3.0 S3F94C8/F94C4 不 使 用 注 释 : 未 使 用 的 位.3-.0 在 正 常 运 行 时 应 一 直 保 持 为 0 否 则 可 能 引 起 错 误 的 操 作 4-8
4 控 制 寄 存 器 4.1.5 FMCON 闪 存 控 制 寄 存 器 : ECH 位.7.6.5.4.3.2.1.0 复 位 值 0 0 0 0 0 读 / 写 R/W R/W R/W R/W R/W.7.4 闪 存 模 式 选 择 位 0 1 0 1 ( 字 节 ) 编 程 模 式 1 0 1 0 扇 区 擦 除 模 式 0 1 1 0 Hard lock 模 式 其 它 值 不 可 用.3.1 S3F94C8/F94C4 不 使 用.0 Flash 启 动 操 作 位 0 操 作 停 止 1 操 作 启 动 ( 操 作 完 成 后, 此 位 自 动 清 为 零 ) 4-9
4 控 制 寄 存 器 4.1.6 FMSECH 闪 存 扇 区 地 址 寄 存 器 ( 高 字 节 ): EEH 位.7.6.5.4.3.2.1.0 复 位 值 0 0 0 0 0 0 0 0 读 / 写 R/W R/W R/W R/W R/W R/W R/W R/W.7.0 闪 存 扇 区 地 址 位 ( 高 字 节 ) Flash 扇 区 选 择 高 8 位 ( 第 15 ~ 8 位 ) 注 释 : 高 字 节 闪 存 扇 区 地 址 指 针 指 向 16 位 指 针 地 址 的 高 8 位 4.1.7 FMSECL 闪 存 扇 区 地 址 寄 存 器 ( 低 字 节 ): EFH 位.7.6.5.4.3.2.1.0 复 位 值 0 0 0 0 0 0 0 0 读 / 写 R/W R/W R/W R/W R/W R/W R/W R/W.7 闪 存 扇 区 地 址 位 ( 低 字 节 ) Flash 扇 区 选 择 第 7 位.6.0 位 6 0 任 意 值 注 释 : 低 字 节 闪 存 扇 区 地 址 指 针 指 向 16 位 指 针 地 址 的 低 8 位 4.1.8 FMUSR 闪 存 用 户 可 编 程 使 能 寄 存 器 : EDH 位.7.6.5.4.3.2.1.0 复 位 值 0 0 0 0 0 0 0 0 读 / 写 R/W R/W R/W R/W R/W R/W R/W R/W.7.0 闪 存 用 户 可 编 程 使 能 位 1 0 1 0 0 1 0 1 使 能 用 户 编 程 模 式 其 它 值 禁 止 用 户 编 程 模 式 4-10
4 控 制 寄 存 器 4.1.9 P0CONH P0 口 控 制 寄 存 器 ( 高 字 节 ): E6H 位.7.6.5.4.3.2.1.0 复 位 值 0 0 0 0 0 0 0 0 读 / 写 R/W R/W R/W R/W R/W R/W R/W R/W.7.6 Port 0, P0.7/ADC7 功 能 位 0 0 施 密 特 触 发 器 输 入, 带 上 拉 电 阻 0 1 施 密 特 触 发 器 输 入, 不 带 上 拉 电 阻 1 0 推 挽 式 输 出 1 1 A/D 转 换 输 入 (ADC7), 施 密 特 触 发 器 输 入 关 闭.5.4 Port 0, P0.6/ADC6/PWM 功 能 位 0 0 施 密 特 触 发 器 输 入, 带 上 拉 电 阻 0 1 功 能 复 用 (PWM 输 出 ) 1 0 推 挽 式 输 出 1 1 A/D 转 换 输 入 (ADC6), 施 密 特 触 发 器 输 入 关 闭.3.2 Port 0, P0.5/ADC5 功 能 位 0 0 施 密 特 触 发 器 输 入, 带 上 拉 电 阻 0 1 施 密 特 触 发 器 输 入 1 0 推 挽 式 输 出 1 1 A/D 转 换 输 入 (ADC5), 施 密 特 触 发 器 输 入 关 闭.1.0 Port 0, P0.4/ADC4 功 能 位 0 0 施 密 特 触 发 器 输 入, 带 上 拉 电 阻 0 1 施 密 特 触 发 器 输 入 1 0 推 挽 式 输 出 1 1 A/D 转 换 输 入 (ADC4), 施 密 特 触 发 器 输 入 关 闭 4-11
4 控 制 寄 存 器 4.1.10 P0CONL P0 口 控 制 寄 存 器 ( 低 字 节 ): E7H 位.7.6.5.4.3.2.1.0 复 位 值 0 0 0 0 0 0 0 0 读 / 写 R/W R/W R/W R/W R/W R/W R/W R/W.7.6 Port 0, P0.3/ADC3 功 能 位 0 0 施 密 特 触 发 器 输 入 0 1 施 密 特 触 发 器 输 入, 带 上 拉 电 阻 1 0 推 挽 式 输 出 1 1 A/D 转 换 输 入 (ADC3), 施 密 特 触 发 器 输 入 关 闭.5.4 Port 0, P0.2/ADC2 功 能 位 0 0 施 密 特 触 发 器 输 入 0 1 施 密 特 触 发 器 输 入, 带 上 拉 电 阻 1 0 推 挽 式 输 出 1 1 A/D 转 换 输 入 (ADC2), 施 密 特 触 发 器 输 入 关 闭.3.2 Port 0, P0.1/ADC1/INT1 功 能 位 0 0 施 密 特 触 发 器 输 入 / 下 降 沿 产 生 中 断 0 1 施 密 特 触 发 器 输 入, 带 上 拉 电 阻 / 下 降 沿 产 生 中 断 1 0 推 挽 式 输 出 1 1 A/D 转 换 输 入 (ADC1), 施 密 特 触 发 器 输 入 关 闭.1.0 Port 0, P0.0/ADC0/INT0 功 能 位 0 0 施 密 特 触 发 器 输 入 / 下 降 沿 产 生 中 断 0 1 施 密 特 触 发 器 输 入, 带 上 拉 电 阻 / 下 降 沿 产 生 中 断 1 0 推 挽 式 输 出 1 1 A/D 转 换 输 入 (ADC0), 施 密 特 触 发 器 输 入 关 闭 4-12
4 控 制 寄 存 器 4.1.11 P0PND P0 口 中 断 响 应 寄 存 器 : E8H 位.7.6.5.4.3.2.1.0 复 位 值 0 0 0 0 读 / 写 R/W R/W R/W R/W.7.4 S3F94C8/F94C4 不 使 用.3 Port 0.1/ADC1/INT1 中 断 使 能 位 0 INT1 禁 止 下 降 沿 中 断 1 INT1 使 能 下 降 沿 中 断.2 Port 0.1/ADC1/INT1 中 断 标 志 位 0 没 有 中 断 ( 读 此 位 时, 如 果 是 0 则 没 有 中 断 ) 0 中 断 标 志 清 除 ( 写 0 时 清 除 中 断 标 志 ) 1 中 断 标 志 位 置 起 ( 读 此 位 时, 如 果 是 1 则 有 中 断 ) 1 没 有 作 用 ( 写 1 时 ).1 Port 0.0/ADC0/INT0 中 断 使 能 位 0 INT0 禁 止 下 降 沿 中 断 1 INT0 使 能 下 降 沿 中 断.0 Port 0.0/ADC0/INT0 中 断 标 志 位 0 没 有 中 断 ( 读 此 位 时, 如 果 是 0 则 没 有 中 断 ) 0 中 断 标 志 清 除 ( 写 0 时, 则 清 除 中 断 标 志 ) 1 中 断 标 志 位 置 起 ( 读 此 位 时, 如 果 是 1 则 有 中 断 ) 1 没 有 作 用 ( 写 1 时 ) 4-13
4 控 制 寄 存 器 4.1.12 P1CON P1 口 控 制 寄 存 器 : E9H 位.7.6.5.4.3.2.1.0 复 位 值 0 0 0 0 0 0 读 / 写 R/W R/W R/W R/W R/W R/W.7 Part 1.1 N- 沟 道 开 漏 输 出 使 能 位 0 P1.1 用 作 推 挽 式 输 出 1 P1.1 用 作 N 沟 道 开 漏 输 出.6 Port 1.0 N- 沟 道 开 漏 输 出 使 能 位 0 P1.0 用 作 推 挽 式 输 出 1 P1.0 用 作 N 沟 道 开 漏 输 出.5.4 S3F94C8/F94C4 不 使 用.3.2 Port 1, P1.1 功 能 位 0 0 施 密 特 触 发 器 输 入 0 1 施 密 特 触 发 器 输 入, 带 上 拉 电 阻 1 0 输 出 1 1 施 密 特 触 发 器 输 入, 带 下 拉 电 阻.1.0 Port 1, P1.0 功 能 位 0 0 施 密 特 触 发 器 输 入 0 1 施 密 特 触 发 器 输 入, 带 上 拉 电 阻 1 0 输 出 1 1 施 密 特 触 发 器 输 入, 带 下 拉 电 阻 注 释 : 当 使 用 外 部 晶 振 时, P1.0, P1.1 必 须 设 置 为 输 出 模 式, 以 减 少 电 流 消 耗 4-14
4 控 制 寄 存 器 4.1.13 P2CONH P2 口 控 制 寄 存 器 ( 高 字 节 ): EAH 位.7.6.5.4.3.2.1.0 复 位 值 0 0 0 0 0 0 0 读 / 写 R/W R/W R/W R/W R/W R/W R/W.7 S3F94C8/F94C4 不 使 用.6.4 Port 2, P2.6/ADC8/CLO 功 能 位 0 0 0 施 密 特 触 发 器 输 入, 带 上 拉 电 阻 0 0 1 施 密 特 触 发 器 输 入 0 1 x ADC 输 入 1 0 0 推 挽 式 输 出 1 0 1 开 漏 输 出, 带 上 拉 电 阻 1 1 0 开 漏 输 出 1 1 1 CLO 输 出.3.2 Port 2, 2.5 功 能 位 0 0 施 密 特 触 发 器 输 入, 带 上 拉 电 阻 0 1 施 密 特 触 发 器 输 入 1 0 推 挽 式 输 出 1 1 开 漏 输 出.1.0 Port 2, 2.4 功 能 位 0 0 施 密 特 触 发 器 输 入, 带 上 拉 电 阻 0 1 施 密 特 触 发 器 输 入 1 0 推 挽 式 输 出 1 1 开 漏 输 出 注 释 : 在 对 噪 声 要 求 比 较 高 的 场 合, 不 建 议 使 用 CLO 输 出 4-15
4 控 制 寄 存 器 4.1.14 P2CONL P2 口 控 制 寄 存 器 ( 低 字 节 ): EBH 位.7.6.5.4.3.2.1.0 复 位 值 0 0 0 0 0 0 0 0 读 / 写 R/W R/W R/W R/W R/W R/W R/W R/W.7.6 Part 2, P2.3 功 能 位 0 0 施 密 特 触 发 器 输 入, 带 上 拉 电 阻 0 1 施 密 特 触 发 器 输 入 1 0 推 挽 式 输 出 1 1 开 漏 输 出.5.4 Port 2, P2.2 功 能 位 0 0 施 密 特 触 发 器 输 入, 带 上 拉 电 阻 0 1 施 密 特 触 发 器 输 入 1 0 推 挽 式 输 出 1 1 开 漏 输 出.3.2 Port 2, P2.1 功 能 位 0 0 施 密 特 触 发 器 输 入, 带 上 拉 电 阻 0 1 施 密 特 触 发 器 输 入 1 0 推 挽 式 输 出 1 1 开 漏 输 出.1.0 Port 2, P2.0 功 能 位 0 0 施 密 特 触 发 器 输 入, 带 上 拉 电 阻 0 1 施 密 特 触 发 器 输 入 1 0 推 挽 式 输 出 1 1 T0 匹 配 输 出 4-16
4 控 制 寄 存 器 4.1.15 PWMCON PWM 控 制 寄 存 器 : F3H 位.7.6.5.4.3.2.1.0 复 位 值 0 0 0 0 0 0 0 读 / 写 R/W R/W R/W R/W R/W R/W R/W.7.6 PWM 时 钟 输 入 选 择 位 0 0 f OSC /64 0 1 f OSC /8 1 0 f OSC /2 1 1 f OSC /1.5 S3F94C8/F94C4 不 使 用.4 PWMDATA 重 装 周 期 选 择 位 0 高 位 扩 展 计 数 器 溢 出 之 后 重 装 1 低 位 数 据 比 较 计 数 器 溢 出 之 后 重 装.3 PWM 计 数 器 清 零 位 0 没 有 作 用 1 清 除 PWM 计 数 器, ( 写 的 时 候 ).2 PWM 计 数 器 使 能 位 0 停 止 计 数 1 开 始 计 数.1 PWM 溢 出 中 断 使 能 位 (8 位 溢 出 ) 0 禁 止 中 断 1 使 能 中 断.0 PWM 溢 出 中 断 标 志 位 注 释 : 0 没 有 中 断 ( 当 读 此 位 时, 如 果 为 0, 则 表 示 没 有 PWM 中 断 ) 0 清 除 中 断 标 志 位 ( 写 0 时 清 除 中 断 标 志 ) 1 产 生 中 断 标 志 ( 读 此 位 时, 如 果 为 1, 则 表 示 有 PWM 中 断 ) 1 没 有 作 用 ( 位 写 1 时 没 有 作 用 ) 1. PWMCON.3 不 会 自 动 清 零, 在 清 除 PWM 中 断 标 志 位 时, 必 须 注 意 避 免 计 数 器 意 外 被 清 零 ( 参 考 11 12 页 ) 2. PWMCON.5 应 始 终 保 持 为 0 4-17
4 控 制 寄 存 器 4.1.16 PWMEX PWM 扩 展 寄 存 器 : F1H 位.7.6.5.4.3.2.1.0 复 位 值 0 0 0 0 0 0 0 0 读 / 写 R/W R/W R/W R/W R/W R/W R/W R/W.7.2 PWM 延 伸 位 PWM 延 伸 位 用 于 6 + 6 精 度 模 式 和 8 + 6 精 度 模 式, 不 用 于 6 + 2 精 度 模 式.1.0 PWM 分 辨 率 控 制 位 : 0 0 1 0 6 位 数 据 比 较 (PWM DATA.7.2) + 2 位 PWM 脉 冲 延 伸 控 制 位 (PWMDATA.1.0) 0 1 6 位 数 据 比 较 (PWM DATA1.5.0) + 6 位 PWM 脉 冲 延 伸 控 制 位 (PWMEX.7.2) 1 1 8 位 数 据 比 较 (PWM DATA1.7.0) + 6 位 PWM 脉 冲 延 伸 控 制 位 (PWMEX.7.2) 4.1.17 STOPCON STOP 控 制 寄 存 器 : E4H 位.7.6.5.4.3.2.1.0 复 位 值 0 0 0 0 0 0 0 0 读 / 写 R/W R/W R/W R/W R/W R/W R/W R/W.7.0 看 门 狗 Timer 功 能 使 能 位 10100101 使 能 使 用 STOP 指 令 其 它 值 禁 止 使 用 STOP 指 令 注 释 : 如 果 STOPCON 寄 存 器 不 是 0A5H, 当 指 令 为 STOP 指 令 时, PC 值 将 会 跳 转 到 复 位 地 址 (0100H) 4-18
4 控 制 寄 存 器 4.1.18 SYM 系 统 模 式 控 制 寄 存 器 : DFH 位.7.6.5.4.3.2.1.0 复 位 值 0 0 0 0 读 / 写 R/W R/W R/W R/W.7.4 S3F94C8/F94C4 不 使 用.3 全 局 中 断 使 能 位 0 禁 止 所 有 中 断 1 使 能 所 有 中 断.2.0 页 选 择 位 0 0 0 第 0 页 0 0 1 第 1 页 (S3F94C8/F94C4 不 使 用 ) 0 1 0 第 2 页 (S3F94C8/F94C4 不 使 用 ) 0 1 1 第 3 页 (S3F94C8/F94C4 不 使 用 ) 4-19
4 控 制 寄 存 器 4.1.19 T0CON TIMER 0 控 制 寄 存 器 (T0): D2H 位.7.6.5.4.3.2.1.0 复 位 值 0 0 0 0 0 读 / 写 R/W R/W R/W R/W R/W.7.6 Timer 0 时 钟 输 入 选 择 位 0 0 f OSC /4096 0 1 f OSC /256 1 0 f OSC /8 1 1 f OSC /1.5.4 S3F94C8/F94C4 不 使 用.3 Timer 0 计 数 器 清 零 位 0 没 有 作 用 1 清 除 Timer 0 的 计 数 器 ( 写 1 时 清 除 计 数 值 ).2 S3F94C8/F94C4 不 使 用.1 Timer 0 中 断 使 能 位 0 禁 止 Timer 0 中 断 1 使 能 Timer 0 中 断.0 Timer 0 中 断 标 志 位 ( 匹 配 中 断 ) 注 释 : 0 没 有 中 断 ( 读 此 位 时, 如 果 为 0, 则 表 示 没 有 Timer 0 中 断 ) 0 清 除 中 断 标 志 位 ( 写 0 时 清 除 中 断 标 志 ) 1 产 生 中 断 标 志 ( 读 此 位 时, 如 果 为 1, 则 表 示 有 Timer 0 中 断 ) 1 没 有 作 用 ( 写 1 时, 没 有 作 用 ) 1. 当 清 除 中 断 标 志 位 时, 要 注 意 T0CON.3, 因 为 该 位 不 会 自 动 清 零, 必 须 注 意 避 免 计 数 器 意 外 被 清 零 ( 参 考 第 10 12 页 ) 2. 当 使 用 T0 的 匹 配 输 出 时, 必 须 把 T0CON.3 设 为 1 ( 参 考 第 10 7 页 ) 4-20
5 中 断 5 中 断 5.1 概 述 SAM88RCRI 的 中 断 结 构 包 括 两 个 组 成 部 分 : 中 断 向 量 和 中 断 源 CPU 通 过 ROM 地 址 为 0000H 的 中 断 向 量 响 应 中 断 源 VECTOR SOURCES S1 0000H 0001H S2 S3 Sn 注 释 : 1. SAM88RCRI 的 中 断 系 统 只 有 一 个 中 断 入 口 向 量 地 址 (0000H-0001H). 2. Sn 中 的 n 是 可 扩 展 的. 图 5-1 S3F9 系 列 的 中 断 类 型 5.2 中 断 控 制 中 断 控 制 可 以 通 过 两 种 方 法 处 理 : 全 局 中 断 控 制 和 具 体 中 断, 中 断 源 的 控 制 所 以 可 以 通 过 以 下 两 种 方 式 控 制 中 断 : 全 局 中 断 的 使 能 与 禁 止 EI 指 令 使 能 全 局 中 断,DI 指 令 禁 止 全 局 中 断 中 断 源 的 使 能 与 禁 止 通 过 设 置 相 应 的 外 围 接 口 控 制 寄 存 器 可 以 使 能 或 禁 止 相 应 的 中 断 5-1
5 中 断 5.3 使 能 / 禁 止 中 断 指 令 (EI, DI) 可 以 通 过 设 置 系 统 模 式 寄 存 器 (SYM.3) 使 能 或 禁 止 中 断 处 理 注 释 : 在 复 位 操 作 之 后, 为 了 使 能 中 断 处 理, 应 该 在 初 始 化 程 序 中 打 开 中 断 尽 管 可 以 通 过 直 接 向 SYM.3 位 写 1 或 0 来 使 能 或 禁 止 中 断, 但 我 们 还 是 建 议 用 EI 指 令 或 DI 指 令 5.3.1 中 断 挂 起 标 志 位 处 理 中 断 服 务 程 序 时, 中 断 服 务 程 序 必 须 在 中 断 返 回 之 前 清 除 相 应 的 中 断 标 志 位 5.3.2 中 断 优 先 级 SAM88RCRI 没 有 中 断 优 先 级 寄 存 器, 中 断 优 先 级 是 由 响 应 中 断 后, 中 断 服 务 程 序 处 理 中 断 的 顺 序 决 定 的 "EI" Instruction Execution RESET S R Q Interrupt Pending Register Source Interrupts Source Interrupts Enable Interrpt priority is determind by software polling method Vector Interrupt Cycle Global Interrupt Control (EI, DI instruction) 图 5-2 中 断 功 能 框 图 5-2
5 中 断 5.3.3 中 断 源 服 务 顺 序 中 断 响 应 检 测 与 服 务 顺 序 如 下 : 1. 产 生 中 断 请 求, 相 应 中 断 标 志 位 被 置 1 2. CPU 响 应 中 断 请 求 3. 执 行 中 断 服 务 程 序, 软 件 清 除 相 应 中 断 标 志 位 4. 中 断 优 先 级 由 软 件 查 询 中 断 标 志 位 的 顺 序 决 定 5.3.4 中 断 服 务 程 序 中 断 响 应, 必 须 满 足 下 列 条 件 : 必 须 使 能 中 断 处 理 (EI) 设 置 相 应 中 断 控 制 寄 存 器 有 关 位 以 使 能 具 体 中 断 源 如 果 上 述 条 件 都 满 足,CPU 会 在 最 后 一 个 指 令 周 期 响 应 中 断 请 求, 开 始 中 断 处 理 并 完 成 下 面 操 作 : 1. 清 除 SYM 寄 存 器 中 的 中 断 使 能 位 (DI, SYM.3 = "0"), 禁 止 所 有 后 来 的 中 断 2. 把 PC 值 和 系 统 标 志 寄 存 器 (FLAGS) 压 入 堆 栈 3. 转 到 中 断 向 量 地 址, 把 预 写 入 其 中 的 中 断 服 务 程 序 地 址 压 入 PC 4. 处 理 中 断 服 务 程 序 当 处 理 完 中 断 服 务 程 序 之 后, 中 断 返 回 指 令 (IRET) 会 将 之 前 进 栈 的 PC 值 和 系 统 标 志 寄 存 器 FLAGS 的 值 弹 出 至 当 前 PC,FLAGS 中, 同 时 设 置 SYM.3 为 1 ( EI ), 使 能 CPU 响 应 之 后 的 中 断 请 求 5.3.5 中 断 向 量 地 址 的 生 成 ROM 中 的 中 断 向 量 地 址 中 存 放 着 中 断 服 务 程 序 的 地 址 向 量 化 中 断 的 处 理 过 程 如 下 : 1. 把 PC 低 字 节 压 入 堆 栈 2. 把 PC 高 字 节 压 入 堆 栈 3. 把 FLAGS 寄 存 器 的 值 压 入 堆 栈 4. 从 中 断 向 量 地 址 0000H 中 取 出 中 断 服 务 程 序 高 字 节 地 址 5. 从 中 断 向 量 地 址 0001H 中 取 出 中 断 服 务 程 序 低 字 节 地 址 6. 跳 转 执 行 16 位 中 断 向 量 地 址 所 确 定 的 中 断 服 务 程 序 5-3
5 中 断 5.3.6 S3F94C8/F94C4 中 断 源 S3F94C8/F94C4 MCU 有 4 个 外 围 中 断 源 : PWM 溢 出 中 断 Timer 0 匹 配 中 断 P0.0 外 部 中 断 P0.1 外 部 中 断 Vector Enable/Disable Pending Bits Source T0CON.1 T0CON.0 Timer 0 Match PWMCON.0 PWM Overflow 0000H 0001H PWMCON.1 P0PND.0 P0.0 External Interrupt SYM.3 (EI, DI) P0PND.1 P0PND.3 P0PND.2 P0.1 External Interrupt 图 5-3 S3F94C8/F94C4 中 断 源 5-4
5 中 断 5.3.7 外 围 中 断 控 制 寄 存 器 每 个 中 断 源 有 一 个 或 多 个 相 应 的 外 围 控 制 寄 存 器, 控 制 外 围 设 备 产 生 的 中 断 ( 表 5-1) 表 5-1 中 断 源 控 制 寄 存 器 和 数 据 寄 存 器 P0.0 外 部 中 断 P0.1 外 部 中 断 Timer 0 匹 配 中 断 PWM 溢 出 中 断 中 断 源 寄 存 器 寄 存 器 地 址 P0CONL P0PND T0CON T0DATA PWMCON PWMDATA PWMDATA1 E7H E8H D2H D1H F3H F2H F0H 5-5
6 SAM88RCRI 指 令 集 6 SAM88RCRI 指 令 集 6.1 概 述 SAM88RCRI 指 令 集 支 持 寄 存 器 卷 操 作, 它 可 以 完 成 8 位 算 术 操 作 和 逻 辑 操 作, 共 有 41 条 指 令 集 由 于 I/O 控 制 和 IO 数 据 寄 存 器 已 经 直 接 映 射 到 寄 存 器 卷 中, 所 以 没 有 具 体 的 I/O 口 操 作 指 令 SAM88RCRI 指 令 集 提 供 强 大 的 数 据 处 理 能 力, 支 持 位 寻 址, 循 环, 移 位 等 数 据 操 作 6.1.1 寄 存 器 访 问 为 访 问 寄 存 器, 应 指 定 寄 存 器 卷 中 地 址 为 0 255 之 间 的 8 位 地 址 或 工 作 寄 存 器 的 4 位 地 址 工 作 寄 存 器 中, 寄 存 器 对 可 以 访 问 16 位 程 序 存 储 空 间 和 数 据 存 储 空 间 关 于 寄 存 器 访 问 的 详 细 信 息, 请 参 考 第 2 章 地 址 空 间 6.1.2 寻 址 模 式 SAM88RCRI 支 持 6 种 寻 址 模 式 : 寄 存 器 寻 址 (R), 间 接 寄 存 器 寻 址 (IR), 偏 址 寻 址 (X), 直 接 寻 址 (DA), 相 对 寻 址 (RA), 和 立 即 数 寻 址 (IM) 关 于 寻 址 模 式 的 详 细 描 述, 请 参 考 第 3 章 寻 址 模 式 6-1