DATASHEET SEARCH SITE ==

Similar documents
2 14 PORTC.1 PORTB.3 PORTA.2/T0 GND PORTB.2 PORTA.0 PORTC.3 PORB.0/OSCO PORTB.1/OSCI PORTC.0 PORTC.2 SH69P21 /SOP PORTA

RESET OSCO OSCI OSC CPU WDTEN RC RESET PRESCALER PORTA (4-BITS) WATCHDOG TIMER Power on PORTB (4-BITS) PORTA [0:3] PORTB [0:3] LPD PORTC (4-BITS) LPDO

SH69P481 4K 12 ADC 4 SH6610D 12 ADC 4 OTPROM: 4K X 16 RAM: 287 X : - fosc = 30kHz - 4MHz, VDD = 2.4V - 5.5V - fosc = 4MHz - 10MHz, VDD = 4.

SH69P848A 2K 一次性编程 10 位 ADC 型 4 位单片机 特性 基于 SH6610D 的 10 位 ADC 型 4 位单片机 OTPROM:2K X 16 位 RAM:253 X 4 位 - 61 个系统控制寄存器 个数据存储器 工作电压 : - f OSC = 30kH

SH69P26/K26 6K 一次性编程 / 掩膜, I/O 型 4 位单片机 特性 基于 SH6610D 的 4 位单片机 OTP ROM: 6K X 16 位 (SH69P26) MASK ROM: 6K X 16 位 (SH69K26) RAM: 389 X 4 位 - 69 个系统控制寄存器

DPJJX1.DOC

MDT90P01 4-Bit RISC MCU 使用及注意事项 1. MDT90P01 4-bit RISC MCU PIN MAP: SOT-26 PB0 1 6 PB3 VSS 2 5 VDD PB1 3 4 PB2/RTCC 2. IC 烧入注意事项 : A. 需制作转接座 : Writer

MICROCHIP EVM Board : APP APP001 PICmicro Microchip APP001 40pin PDIP PICmicro Design Tips Character LCM Temperature Sensor Application I/O Pi

2 Keil µ vision 2.1 1) Keil µ vision2 V2.34 µ vision3 2) Sino_Keil.exe Keil c:\keil\ 3) JET51 USB PC C:\Keil\ USB PC 4) S-L

1-1 SH79F6431 A. 2( ) 9~15V ( 12V) U2 U3 3.3V SH79F B. 1(VCC/GND) SH79F6431 C. VDDIO SH79F6431 P4 P5 P0.6 P0.7 VDDIO VDDIO=5V D. 2 V 1.0

untitled

Microsoft Word - S153B.doc

冲宽度调制器(Pulse Width Modulator)

Microsoft Word - Ö¸Á.doc

Microsoft Word - 蜂?器??模? CH.doc

Microsoft Word - 4位7段LED?示 CH.doc

HT46R47 f SYS =4MHz 3.3~5.5V f SYS =8MHz 4.5~5.5V 13 位双向输入 / 输出口 1 个与输入 / 输出共用引脚的外部中断输入 8 位带溢出中断的可编程定时 / 计数器 具有 7 级预分频器 石英晶体或 RC 振荡器 位的程序存储器 P

一次性可编程(One Time Programmable,OTP)产品的编程

DS_MM32P021_Ver1.9.0

<4D F736F F D20B5DAC8FDCBC4D5C2D7F7D2B5B4F0B0B82E646F63>

2 PIC PIC 1 / CPU PIC MCU PIC RC

控制器 EtherCAT EtherCAT EtherCAT 接下一个电机驱动模块 (X4) 接下一个电机驱动模块 (X5) X11 IN X4 IN X3 OUT X5 IN X6 OUT X2 X1 X4 IN X3 OUT X5 IN X6 OUT X2 X1 SYS STA DC BUS D

ARM Cortex-M3 (STM32F) STMicroelectronics ( ST) STM32F103 Core: ARM 32-bit Cortex -M3 CPU 72 MHz, 90 DMIPS with 1.25 DMIPS/MHz Single-cycle multiplica

XNS104 产品说明书 AD 型 2.4G 高速无线收发单片机概述 2.4GHz 高速无线收发单片机 XNS104 是一个带 12 位 ADC, 以 OTP 为程序存储基础, 带 2.4G 高速无线收发芯片的单片机 无线收发单元工作在 GHz 世界通用 ISM 频段, 它集

33023A.book(31005A_cn.fm)

General Description: Preliminary TTP916 Consumer IC VCD/DVD LCD Green mode Stand-by mode( 1W ) Features: 2.2V-5.5V LCD RAM read condition 2.6V-5.5V RC

R/W

GW2A 系列 FPGA 产品 GW2A-18 器件 Pinout Version History 日期 版本 2016/8/ /9/ /11/ /2/ /6/ /6/ /8

untitled

untitled

51 C 51 isp 10 C PCB C C C C KEIL

CH559指令周期.doc

额定规格 / 性能 单相 标准认证 UL CSA. NO. EN-- 额定规格输入 环境温度 项目电压电平额定电压使用电压范围输入电流型号动作电压复位电压 - B ma 以下 DC~V DC.~V DC.V 以下 DC.V 以上 - BL ma 以下 输出 项目 * 根据环境温度的不同而不同 详情请

33023A.book(31026A_cn.fm)

ICD ICD ICD ICD ICD

PIC16F F MPLAB 08 16F LED 15 LED

目录 1. 产品简介 功能特性 引脚图 引脚描述 中央处理器 (CPU) 程序存储器 (OTP ROM) 堆栈 数据存储器 (RAM) INDF 寄存器.

第十四章 STC单片机比较器原理及实现

XT1861

M8Rxxx 指令集说明 Version 年 11 月 上海磐芯电子有限公司 SHANGHAI MASSES ELECTRONIC Co., Ltd. 本公司保留对产品在可靠性, 功能和设计方面的改进作进一步说明的权利 说明文档的更改, 恕不另行通知

T stg -40 to 125 C V cc 3.8V V dc RH 0 to 100 %RH T a -40 to +125 C -0.3 to 3.6V V -0.3 to VDD+0.3 V -10 to +10 ma = 25 = 3V) VDD

ATMEL AT90S8515 AVR CPU AVR AVR AVR ATMEL RISC 32 8 r0 r X Y Z R0 R1 R2 R13 R14 R15 R16 R17 R26 R27 R28 R29 R30 R31 0x00 0x

(Load Project) (Save Project) (OffLine Mode) (Help) Intel Hex Motor

12232A LED LED LED EL EL CCFL EL CCF

版权声明 龙芯 免责声明 据 龙芯 2 Building No.2, Loongson Industrial Park, Zhongguancun Environmental Protection Park (Tel) (Fax)

Applications

1.1 ML_ONOFF = 1 Q 3 Q 8 C 0.3V M 2 L 1 ML_ONOFF = 0 Q 3 Q 8 C 1. + R31 VCC R21 10K ML_ONOFF R15 0:off 1:on 1K Green Light VCC=5V L1 Q VDD=12V C

SD3101 带 UART 和 I 2 C 的三差分通道计量 SOC 特点 高精度 ADC,24 位数据输出, 输入增益可选 和 16,3 个差分或 5 个伪差分通道, 可测量信号的真有效值 瞬时值和频率 8 位 RISC 低功耗 MCU,49 条指令,6 级堆栈, 在 2.097MHz

1 TPIS TPIS 2 2

6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C C C51 C51 ANSI C MCS-51 C51 ANSI C C C51 bit Byte bit sbit

Cerris IROS

<4D F736F F D203034CAB5D1E9CBC D20B5C4494F20BDD3BFDACAB5D1E92E646F63>

目 录

mdt1030

<4D F736F F D20C9EEDBDACAD0B6ABB3CFD0C5B5E7D7D3BFC6BCBCD3D0CFDEB9ABCBBEBDE9C9DCBCB0BFE2B4E6>

DL1621-1

单片机原理及应用实验指导书.doc

FM1935X智能非接触读写器芯片

MSP430X1XX 系列微控制器具有以下特征 结构框图 超低功耗结构体系 A 额定工作电流在 1MHz V 工作电压 C11X P11X 和 E11X 为 V 从备用模式唤醒为 6 S 丰富的中断能力减少了查询的需要灵活强大的处理能力源操作数有七种寻址模

LED 显示屏驱动 IC2011V1.1 SM16125 概述 SM16125 是专为 LED 显示屏设计的驱动芯片, 内建 CMOS 位移寄存器与锁存功能, 可以将串行的输入数据转换成并行输出数据格式 SM16125 提供 16 个电流源, 可以在每个输出端口提供 3 45mA 的恒定电流, 大小

HS2303-P

PowerPoint Presentation

untitled

FM1935X智能非接触读写器芯片

PowerPoint 演示文稿

深圳明和科技

1 CPU

Microsoft Word - sim6xF0xC-0225.doc

Ps22Pdf

1. 介绍 义隆 8 位单片机指令介绍 Application Notes 义隆 8 位单片机指令介绍 EM78/EM88 系列是基于 RISC 的精简指令微控制器, 每条指令是 13 位 15 位, 除 LCALL LJMP MOV R2,A ADD R2,A 改变 PC 指针的指令是 2 个指令

Microsoft Word - 端口 CH.doc

目录

Application Note Transient Voltage Suppressors (TVS) for 表 1 VISHAY 的 SM6T 系列的电特性 25 C 型号 击穿电压 器件标识码 V BR AT I T I T 测试电流 (ma) 关态电压 V RM 漏电流 I RM AT V

四位微控制器ML64168_ _.doc

PT8M2101A 规格书 目录 1. 产品概述 主要特性 系统框图 管脚配置 中央处理器 指令集 程序存储器 ROM 数据存储器 RAM CPU 核相关寄存器..

单片机应用编程技巧(专家:邓宏杰)

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File

技术文档

,Microchip Technology PIC LCD, PIC16F913/914/ 916/917/946 PIC18F6390/6490/8390/8490 PIC16F65J90/85J90 Microchip LCD LCD, Microchip 的优势 LCD PIC, LCD LC

adsd

DESCRIPTION

USB解决方案.ppt


Microsoft Word - BL5372_UMAN_V1.1.doc

ETA104 数据采集模块数据手册

第10章:CCP捕捉/比较/脉宽调制

CD4066中文资料:CD4066是四双向模拟开关,主要用作模拟或数字信号的多路传输。引出端排列与CC4016一致,但具有比较低的导通阻抗。另外,导通阻抗在整个输入信号范围内基本上变。CD4066由四个相互独立的双向开关组成,每个开关有一个控制信号,开关中的p和n器件在控制信号作用下同时开关。这种结

SM16126 LED 显示屏驱动 ICIGGS2011V1.2 SM16126 概述 封装信息 SM16126 是专为 LED 显示屏设计的驱动芯片, 内建 CMOS 位移寄存器与锁存功能, 可以将串行的输入数据 产品名称 封装形式 塑封体尺寸 (mm) 脚间距 (mm) 转换成并行输出数据格式

untitled

STC15W4K60S4系列增强型PWM波形发生器应用

目 录

内部结构框图 SDI LSB 16Bit 移位寄存器 (1 16Bit 通道 ) MSB 0 15 LSB MSB 输出开 / 关数据锁存 (1 16Bit 通道 ) 0 15 R-EXT 16 通道恒流输出驱动 OUT0 OUT1 OUT14 OUT15 图 2 管脚信息 SDI OUT0 OUT

Microsoft Word - DW01

发展党员材料填写参考(上网).doc

SD3102 带显示驱动 I 2 C 和按键的单差分通道计量 SOC 特点 高精度 ADC,24 位数据输出, 输入增益可选 和 16, 单差分通道, 可测量信号的真有效值和瞬时值 8 位 RISC 低功耗 MCU,49 条指令,6 级堆栈, 在 2.048MHz 工作时钟,MCU 部分

untitled

规格书

×××芯片用户手册

Transcription:

1K 一次性编程, 10 位 ADC 型 4 位单片机 特性 基于 SH6610C, 10 位 ADC 型 4 位单片机 OTP ROM: 1K X 16 位 RAM: 124 X 4 位 - 28 系统控制寄存器 - 96 数据存储器 工作电压 : - fosc = 16MHz, VDD = 3.3V - 5.5V 6 个双向 I/O 端口 4 层堆栈 ( 包括中断 ) 一个 8 位自动重载定时 / 计数器 预热计数器 中断源 : - 模 / 数中断 - 定时器 0 中断 - 外部中断 : PORTA.3 ( 下降沿 ) 振荡器 - 内建 RC 振荡器 : 16MHz 指令周期时间 (16/fOSC) 两种低功耗工作模式 : HALT 和 STOP 复位 - 内建上电复位 (POR) - 内建低电压复位 (LVR) ( 代码选项 ) - 内建看门狗定时器 (WDT) ( 代码选项 ) 4 通道 10 位模 / 数转换器 (ADC) 1 通道 9 位脉宽调制输出 (PWM) OTP 类型 / 代码保护 8 引脚 SOP 封装 概述 SH67P847 是一种先进的 CMOS 4 位单片机 该器件集成了 SH6610C CPU 内核, RAM, ROM, 定时器, ADC, 高速 PWM 输出, 看门狗定时器, 低电压复位 SH67P847 适应于电池包充电器应用 引脚配置 PORTB.1/PWM PORTA.3/VPP GND PORTA.0/VREF/AN0/SDA 1 2 3 4 SH67P847 8 7 6 5 PORTB.0/AN3 PORTA.2/AN2/SCK VDD PORTA.1/AN1 1 V1.0

方框图 Reset Circuit Oscillator Watchdog Timer RAM 28 X 4 Bits System Register RAM 96 X 4 Bits Data Memory ADC PORTA (4-Bit) PORTA.0/AN0/VREF PORTA.1/AN1 PORTA.2/AN2 PORTA.3/VPP OTP ROM 1024 X 16 Bits PORTB (4-Bit) PORTB.0/AN3 PORTB.1/PWM PWM CPU Timer VDD Power Circuit GND 2

引脚描述 引脚编号引脚命名引脚性质说明 1 PORTB.1 /PWM 2 PORTA.3 I/O O I/O I 可编程 I/O PWM 输出 3 GND P 接地引脚 4 5 PORTA.0 /AN0 /VREF PORTA.1 /AN1 I/O I I I/O I 可编程 I/O ( 开漏输出 ) 外部中断输入 ( 下降沿 ) 可编程 I/O ADC 输入通道 ADC 外部 VREF 输入端口 可编程 I/O ADC 输入通道 6 VDD P 电源引脚 7 8 PORTA.2 /AN2 PORTB.0 /AN3 I/O I I/O I 其中, I: 输入 ; O: 输出 ; P: 电源 ; Z: 高阻 OTP 编程引脚说明 (OTP 编程模式 ) 可编程 I/O ADC 输入通道 可编程 I/O ADC 输入通道 引脚编号引脚命名引脚性质共用引脚说明 6 VDD P VDD 编程电源 (+5.5V) 2 VPP P PORTA.3 编程高压电源 (+11V) 3 GND P GND 电源地 7 SCK I PORTA.2 编程时钟输入引脚 4 SDA I/O PORTA.0 编程数据引脚 其中, I: 输入 ; O: 输出 ; P: 电源 ; Z: 高阻 3

功能说明 1. CPU CPU 包含以下功能模块 : 程序计数器 (PC), 算术逻辑单元 (ALU), 进位标志 (CY), 累加器, 查表寄存器, 数据指针 (INX, DPH, DPM, 和 DPL) 和堆栈 1.1. PC 程序计数器用于寻址程序 ROM 该计数器有 12 位 : 页寄存器 (PC11), 和循环递增计数器 (PC10, PC9, PC8, PC7, PC6, PC5, PC4, PC3, PC2, PC1, PC0) 程序计数器装入与该条指令相关的数据 对于目标地址大于 2K 的 ROM 空间, 可通过无条件跳转指令 (JMP) 中设置页寄存器位的值实现跳转 程序计数器只能寻址 4K 程序 ROM 空间 ( 参考 ROM 说明 ) 1.2. ALU 和 CY ALU 执行算术运算和逻辑操作 ALU 具有下述功能 : 二进制加法 / 减法 (ADC, ADCM, ADD, ADDM, SBC, SBCM, SUB, SUBM, ADI, ADIM, SBI, SBIM) 加法 / 减法的十进制调整 (DAA, DAS) 逻辑操作 (AND, ANDM, EOR, EORM, OR, ORM, ANDIM, EORIM, ORIM) 条件跳转 (BA0, BA1, BA2, BA3, BAZ, BNZ, BC, BNC) 逻辑移位 (SHR) 进位标志 (CY) 记录 ALU 算术运算操作中的进位 / 借位状态 在中断或子程序调用过程中, 进位标志被压入堆栈中并于执行 RTNI 指令时由堆栈中弹出 它不受 RTNW 指令的影响 1.3. 累加器 (AC) 累加器是一个 4 位寄存器, 用于保存算术逻辑单元的运算结果 它和 ALU 一起, 完成与系统寄存器数据存储器之间的数据传送 1.4. 查表寄存器 (TBR) 通过查表指令 (TJMP) 和常数返回指令 (RTNW) 可以实现读取保存在程序存储器中的表格数据 查表指令执行时, 查表寄存器 TBR 和 AC 中存放的是待读取 ROM 的低 8 位地址 TJMP 指令指向的 ROM 地址为 ((PC11 - PC8) X (2 8 ) + (TBR, AC)) 由 RTNW 指令将查表所得值返回至 (TBR, AC) 中 表格数据的第 7 位至第 4 位存放在 TBR 中, 第 3 位至第 0 位存放在 AC 中 1.5. 数据指针数据指针能直接寻址数据存储器 指针地址储存在寄存器 DPH (3 位 ), DPM (3 位 ) 和 DPL (4 位 ) 最大寻址范围为 3FFH 通过索引寄存器 (INX), 可以读写由 DPH, DPM 和 DPL 指定的数据存储器 1.6. 堆栈堆栈是一组寄存器, 在每次子程序调用或中断时能顺序保存 CY 和 PC (11-0) 中的值, 最高位保存 CY 值 其结构为 13 位 X 4 层 当遇到返回指令 (RTNI/RTNW) 时, 堆栈中的内容将按顺序返回到 PC 中 堆栈中的数据按照先进后出的方式处理 注意 : 堆栈嵌套包括子程序调用和中断请求子程序调用, 其最大值为 4 层 如果程序调用和中断请求的数量超过 4 层, 堆栈底部将溢出, 程序将无法正常执行 2. RAM 内建 RAM 由通用数据存储器和系统寄存器组成 由于 RAM 的静态特性, 数据存储器能在 CPU 进入 STOP 或者 HALT 方式后保持其中的数据不变 2.1. RAM 寻址用一条指令能直接访问数据存储器和系统寄存器 下列为存储器空间分配 : 系统寄存器 : $000 - $01F 数据存储器 : $020 - $07F 4

2.2. 系统寄存器的配置 地址第 3 位第 2 位第 1 位第 0 位读 / 写说明 $00 IEAD IET0 - IEP 读 / 写中断允许标志寄存器 $01 IRQAD IRQT0 - IRQP 读 / 写中断请求标志寄存器 $02 - T0M.2 T0M.1 T0M.0 读 / 写第 2-0 位 : 定时器 0 模式寄存器 $03 T0L.3 T0L.2 T0L.1 T0L.0 读 / 写定时器 0 载入 / 计数器低位寄存器 $04 T0H.3 T0H.2 T0H.1 T0H.0 读 / 写定时器 0 载入 / 计数器高位寄存器 $05 PA.3 PA.2 PA.1 PA.0 读 / 写 PORTA 数据寄存器 $06 - - PB.1 PB.0 读 / 写 PORTB 数据寄存器 $07 VREFS CH1 CH0 ADCON 读 / 写 第 0 位 : ADC 转换允许选择寄存器第 2-1 位 : ADC 转换通道选择寄存器第 3 位 : 内部 / 外部参考电压选择寄存器 $08 ACR3 ACR2 ACR1 ACR0 读 / 写第 3-0 位 : ADC 端口配置控制寄存器 $09 GO/ DONE TADC1 TADC0 ADCS 读 / 写 第 0 位 : ADC 转换时间选择寄存器第 2-1 位 : ADC 时钟周期选择寄存器第 3 位 : ADC 转换控制 / 状态标志寄存器 $0A A2 A1 A0 - 只读 ADC 数据低位寄存器 $0B A6 A5 A4 A3 只读 ADC 数据中位寄存器 $0C - A9 A8 A7 只读 ADC 数据高位寄存器 $0D - - - - - 保留 $0E TBR.3 TBR.2 TBR.1 TBR.0 读 / 写查表寄存器 $0F INX.3 INX.2 INX.1 INX.0 读 / 写索引寄存器 $10 DPL.3 DPL.2 DPL.1 DPL.0 读 / 写索引地址低位寄存器 (4 位 ) $11 - DPM.2 DPM.1 DPM.0 读 / 写索引地址中位寄存器 (3 位 ) $12 - DPH.2 DPH.1 DPH.0 读 / 写索引地址高位寄存器 (3 位 ) $13 PACR.3 PACR.2 PACR.1 PACR.0 读 / 写 PORTA 输入 / 输出控制寄存器 $14 - - PBCR.1 PBCR.0 读 / 写 PORTB 输入 / 输出控制寄存器 $15 PWMS TCK1 TCK0 PWM_EN 读 / 写 第 0 位 : PWM 输出允许选择寄存器第 2-1 位 : PWM 时钟选择寄存器第 3 位 : PWM 占空比的输出模式选择寄存器 $16 PP.3 PP.2 PP.1 PP.0 读 / 写 PWM 周期低位寄存器 $17 PP.7 PP.6 PP.5 PP.4 读 / 写 PWM 周期高位寄存器 $18 - - - PDF.0 读 / 写 PWM 占空比微调寄存器 $19 PD.3 PD.2 PD.1 PD.0 读 / 写 PWM 占空比低位寄存器 $1A PD.7 PD.6 PD.5 PD.4 读 / 写 PWM 占空比高位寄存器 $1B - PPACR.2 PPACR.1 PPACR.0 读 / 写 PORTA 上拉控制寄存器 $1C - - PPBCR.1 PPBCR.0 读 / 写 PORTB 上拉控制寄存器 $1D - - - - - 保留 $1E - WDT WDT.2 - WDT.1 - WDT.0 - 读 / 写只读 $1F - - - - - 保留 第 2-0 位 : 看门狗定时器控制寄存器第 3 位 : 看门狗定时器溢出标志寄存器 5

3. ROM ROM 能寻址 1024 X 16 位程序空间, 地址由 $000 到 $3FF 3.1. 矢量地址区 ($000 到 $004) 程序顺序执行 从地址 $000 到 $004 的区域是为特殊中断服务程序保留的, 作为中断服务的入口地址 地址 指令 说明 $000 JMP* 跳转至 RESET 服务程序 $001 JMP* 跳转至 ADC 中断服务程序 $002 JMP* 跳转至 TIMER0 中断服务程序 $003 JMP* - $004 JMP* 跳转至端口中断服务程序 *JMP 指令能由任意指令代替 6

4. 初始状态 4.1. 系统寄存器初始状态 地址 第 3 位 第 2 位 第 1 位 第 0 位 上电复位 / 低电压复位 WDT 复位 $00 IEAD IET0 - IEP 00-0 00-0 $01 IRQAD IRQT0 - IRQP 00-0 00-0 $02 - T0M.2 T0M.1 T0M.0-000 -uuu $03 T0L.3 T0L.2 T0L.1 T0L.0 xxxx xxxx $04 T0H.3 T0H.2 T0H.1 T0H.0 xxxx xxxx $05 PA.3 PA.2 PA.1 PA.0 0000 0000 $06 - - PB.1 PB.0 --00 --00 $07 VREFS CH1 CH0 ADCON 0000 uuuu $08 ACR3 ACR2 ACR1 ACR0 0000 uuuu $09 GO/ DONE TADC1 TADC0 ADCS 0000 0uuu $0A A2 A1 A0 - xxxx uuuu $0B A6 A5 A4 A3 xxxx uuuu $0C - A9 A8 A7 -xxx -uuu $0D - - - - ---- ---- $0E TBR.3 TBR.2 TBR.1 TBR.0 xxxx uuuu $0F INX.3 INX.2 INX.1 INX.0 xxxx uuuu $10 DPL.3 DPL.2 DPL.1 DPL.0 xxxx uuuu $11 - DPM.2 DPM.1 DPM.0 -xxx -uuu $12 - DPH.2 DPH.1 DPH.0 -xxx -uuu $13 PACR.3 PACR.2 PACR.1 PACR.0 0000 0000 $14 - - PBCR.1 PBCR.0 --00 --00 $15 PWMS TCK1 TCK0 PWM_EN 0000 uuu0 $16 PP.3 PP.2 PP.1 PP.0 xxxx uuuu $17 PP.7 PP.6 PP.5 PP.4 xxxx uuuu $18 - - - PDF.0 ---x ---u $19 PD.3 PD.2 PD.1 PD.0 xxxx uuuu $1A PD.7 PD.6 PD.5 PD.4 xxxx uuuu $1B - PPACR.2 PPACR.1 PPACR.0-000 -000 $1C - - PPBCR.1 PPBCR.0 --00 --00 $1D - - - - ---- ---- $1E WDT WDT.2 WDT.1 WDT.0 0000 1000 $1F - - - - ---- ---- 说明 : x = 不定, u = 未更改, - = 未使用, 读出值为 0 4.2. 其它初始状态 其它 复位后 程序计数器 (PC) $000 CY 不定 累加器 (AC) 不定 数据存储器 不定 7

5. 系统时钟和振荡器振荡器振荡产生的脉冲为 CPU 和片上电路提供系统时钟 系统时钟 fsys = fosc/16 5.1. 指令周期对于 16MHz 振荡器, 为 1MHz (= 1µs) 8

6. I/O 端口 SH67P847 提供 6 个可编程双向 I/O 端口 端口数据为寄存器 $05 - $06 端口控制寄存器 ($13 - $14) 控制端口为输入或者输出 每个 I/O 端口 ( 除 PORTA.3) 包含上拉电阻, 通过各自端口上拉电阻控制寄存器 ($1B - $1C) 相应的值来控制 当端口被选择作为输入口, 写 1 到各自相对的上拉控制寄存器 ($1B - $1C) 可以打开上拉电阻, 写 0 可以关闭上拉电阻 不论各自端口上拉控制寄存器 ($1B - $1C) 相对应位的值是多少, 当端口作为输出端口时, 上拉电阻将会自动关闭 当 PORTA.3 被选择作为输入端口, 它们可以通过下降沿触发端口中断 ( 若端口中断已经允许 ) 系统寄存器 $05 - $06: 端口数据寄存器 地址第 3 位第 2 位第 1 位第 0 位读 / 写说明 $05 PA.3 PA.2 PA.1 PA.0 读 / 写 PORTA 数据寄存器 $06 - - PB.1 PB.0 读 / 写 PORTB 数据寄存器 系统寄存器 $13 - $14: 端口控制寄存器 地址第 3 位第 2 位第 1 位第 0 位读 / 写说明 $13 PACR.3 PACR.2 PACR.1 PACR.0 读 / 写 PORTA 输入 / 输出控制寄存器 $14 - - PBCR.1 PBCR.0 读 / 写 PORTB 输入 / 输出控制寄存器 PA (/B) CR.n, (n = 0, 1, 2, 3) 0: 设置为输入口 ( 初始值 ) 1: 设置为输出口 系统寄存器 $1B - $1C: 上拉电阻控制寄存器 地址第 3 位第 2 位第 1 位第 0 位读 / 写说明 $1B - PPACR.2 PPACR.1 PPACR.0 读 / 写 PORTA 输入 / 输出控制寄存器 $1C - - PPBCR.1 PPBCR.0 读 / 写 PORTB 输入 / 输出控制寄存器 PPA (/B) CR.n, (n = 0, 1, 2) 0: 禁止内部上拉电阻 ( 初始值 ) 1: 允许内部上拉电阻 9

I/O 引脚的等效电路 Pull high Register I/O Control Register VDD VDD Pull high DATA Register I/O Pin GND DATA READ DATA IN READ M2T1 0 1 s 在 SH67P847, 每个输出端口包含一个锁存器, 用来保存输出数据 在输出模式下写端口数据寄存器 (PDR) 可以直接传输数据到相应的端口 所有输入端口不包含锁存器, 所以外部输入电平要一直保持到端口读取动作完成 当某个端口被设置为输出口时, 对该端口位的读操作会读取锁存器内的数据, 而非端口外部电平 PORTA.0 - PORTA.2 共用为 ADC AN0-2 输入通道 (AN0-2) PORTA.0 共用为参考电压输入 (VREF) PORTB.0 共用为 ADC 输入通道 (AN3) PORTB.1 共用为 PWM 输出 (PWM) 端口中断 PORTA.3 用作端口中断源 由于 PORTA.3 是位可编程的 I/O, 因此只有 PORTA.3 用作数字输入端口时, 数字信号引脚上 VDD 到 GND 的跳变才能产生端口中断 端口中断可以用来将 CPU 从 HALT 或者 STOP 模式唤醒 IEP PORTA.3 Falling Edge Detector Port Interrupt PACR.3 IRQP 端口中断模块示意图 10

7. 定时器 8 位 Timer 有下述特性 : - 8 位递增计数 - 自动重载 - 8 级预分频 - 计数值由 $FF 到 $00 时, 产生溢出中断请求 Timer 框图 : System clock 4tOSC Prescaler SYNC 8-BIT COUNTER 当高 4 位载入寄存器被写入或 Timer 计数值由 $FF 到 $00 溢出时, Timer 将自动载入预设值 由于寄存器的高 4 位控制 Timer 的读写操作, 使用中请根据以下步骤操作 : - 写操作先写低 4 位, 再写高 4 位以更新计数器 - 读操作先读高 4 位, 再读低 4 位 TM.2 TM.1 TM.0 Timer 功能 : - 可编程定时功能 - 计数值可读 7.1. Timer0 结构和操作 Timer0 由一个 8 位只写载入寄存器 (TL0L, TL0H) 和一个 8 位只读计数器 (TC0L, TC0H) 构成 每个计数器由低四位和高四位组成 将数据写入载入寄存器 (TL0L, TL0H) 就可以初始化 Timer Load Reg. L Load Reg. H 8-bit timer counter Latch Reg. L 7.2. Timer0 模式寄存器 通过设置 Timer 模式寄存器 (T0M) 可以使 Timer 工作在不同的模式 系统时钟经过预分频器分频后, 进入计数器 Timer 模式寄存器中 T0M.2-0 用于设定分频比 表 1. Timer0 模式寄存器 ($02) T0M.2 T0M.1 T0M.0 预分频器分频比 时钟源 0 0 0 /2 11 系统时钟 0 0 1 /2 9 系统时钟 0 1 0 /2 7 系统时钟 0 1 1 /2 5 系统时钟 1 0 0 /2 3 系统时钟 1 0 1 /2 2 系统时钟 1 1 0 /2 1 系统时钟 1 1 1 /2 0 系统时钟 11

8. 中断 SH67P847 有三个中断源 : - ADC 中断 - Timer0 中断 - PORTA.3 中断 ( 下降沿 ) 中断控制标志位和中断服务中断控制标志为系统寄存器的 $00 和 $01 这两个寄存器能够由软件访问和设置 芯片上电复位后, 这些标志位被清 0 系统寄存器 地址第 3 位第 2 位第 1 位第 0 位读 / 写说明 $00 IEAD IET0 - IEP 读 / 写中断允许标志寄存器 $01 IRQAD IRQT0 - IRQP 读 / 写中断请求标志寄存器 当 IEx 设置为 1 且有中断请求时 (IRQx 为 1) 中断被激活并且根据中断优先级产生相应的中断矢量地址 当发生中断时, PC 和 CY 标志将被保存在堆栈存储器中, 同时程序跳转至中断服务矢量地址处执行 在中断发生后, 所有中断允许标志 (IEx) 自动复位为 0, 因此在 IRQx = 1 时 IEx 标志再次设置为 1 时, 将可能再次产生中断 Inst.cycle 1 2 3 4 5 Instruction Execution N Instruction Execution I1 Instruction Execution I2 Interrupt Generated Interrupt Accepted Vector Generated Stacking Fetch Vector address Reset IE.X Start at vector address 中断服务流程图 中断嵌套在 CPU 中断服务期间, 用户可以在中断返回前设置任何中断允许标志 中断服务流程图中标示下个中断和将要发生的下一个中断嵌套 如果中断请求已经产生且执行允许 IE 使能的指令 N, 那么在两个指令周期后将执行中断程序 但是, 如果指令 I1 或指令 I2 清除中断请求或允许标志, 那么中断服务将被取消 ADC 中断当系统寄存器 $00 (IEAD) 的第 3 位设置为 1, ADC 中断允许 当完成 A/D 转换后, 将产生一个中断请求 (IRQAD = 1), 如果 ADC 中断允许 (IEAD = 1), 将启动一次 ADC 中断服务程序 该 ADC 中断能用来将 CPU 从 HALT 方式中唤醒 定时器中断 Timer0 的计数时钟是以系统时钟为基准的 Timer 计数值由 $FF 到 $00 溢出时将产生一个内部中断请求 (IRQT0 = 1), 如果中断允许标志被允许 (IET0 = 1) 则进入定时器中断服务程序 定时器中断同样也能用于从 HALT 模式唤醒 CPU 端口下降沿中断只有数字输入端口可以产生端口中断 模拟输入不能产生中断请求 PORTA.3 输入引脚上的下降沿将产生中断请求 (IRQP = 1) 端口中断可以用来将 CPU 从 HALT 或者 STOP 模式唤醒 12

9. 模 / 数转换器 (ADC) SH67P847 内建有一个 4 通道的 10 位逐次逼近型模 / 数转换器 (ADC) ADC 控制寄存器 : 这些寄存器定义了模 / 数转换模拟通道数设置, 转换通道选择, 参考电压选择, 模 / 数转换时钟选择, 模 / 数转换启动控制位和结束标志 模 / 数转换结果寄存器为只读寄存器 模 / 数转换的步骤 : - 设置模拟通道数和选择参考电压 ( 如果使用外部参考电压, 切记任何模拟输入电压值不能大于 VREF) - 运行模 / 数转换器, 选择需转换的信号通道 - 设置模 / 数转换时钟源 - 置 GO/ DONE = 1, 启动模 / 数转换 系统寄存器 $07 地址第 3 位第 2 位第 1 位第 0 位读 / 写说明 $07 VREFS CH1 CH0 ADCON 读 / 写 X X X 0 读 / 写禁止 ADC 工作 X X X 1 读 / 写允许 ADC 工作 X 0 0 X 读 / 写 ADC 通道 AN0 X 0 1 X 读 / 写 ADC 通道 AN1 X 1 0 X 读 / 写 ADC 通道 AN2 X 1 1 X 读 / 写 ADC 通道 AN3 第 0 位 : ADC 转换允许选择寄存器第 2-1 位 : ADC 转换通道选择寄存器第 3 位 : 内部 / 外部参考电压选择寄存器 0 X X X 读 / 写内部参考电压 (VREF = VDD) 1 X X X 读 / 写外部参考电压 系统寄存器 $08: ( 模 / 数转换端口配置控制寄存器 ) 地址第 3 位第 2 位第 1 位第 0 位读 / 写说明 $08 ACR3 ACR2 ACR1 ACR0 读 / 写第 3-0 位 : 模 / 数转换端口配置控制寄存器 X X X 0 读 / 写 PORTA.0 作为 I/O X X X 1 读 / 写 PORTA.0 作为 ADC 通道 AN0 X X 0 X 读 / 写 PORTA.1 作为 I/O X X 1 X 读 / 写 PORTA.1 作为 ADC 通道 AN1 X 0 X X 读 / 写 PORTA.2 作为 I/O X 1 X X 读 / 写 PORTA.2 作为 ADC 通道 AN2 0 X X X 读 / 写 PORTB.0 作为 I/O 1 X X X 读 / 写 PORTB.0 作为 ADC 通道 AN3 13

系统寄存器 $09: ( 模 / 数转换控制寄存器 ) 地址第 3 位第 2 位第 1 位第 0 位读 / 写说明 $09 GO/ DONE TADC1 TADC0 ADCS 读 / 写 第 0 位 : ADC 转换时间控制寄存器第 2-1 位 : ADC 时钟周期选择寄存器第 3 位 : ADC 状态标志寄存器 X X X 0 读 / 写 A/D 转换时间 = 15 tad X X X 1 读 / 写 A/D 转换时间 = 114 tad X 0 0 X 读 / 写 ADC 转换时钟周期 tad = tsys (tsys=tosc*16) X 0 1 X 读 / 写 ADC 转换时钟周期 tad = 2 tsys (tsys=tosc*16) X 1 0 X 读 / 写 ADC 转换时钟周期 tad = 4 tsys (tsys=tosc*16) X 1 1 X 读 / 写 ADC 转换时钟周期 tad = 8 tsys (tsys=tosc*16) 0 X X X 读 / 写 ADC 转换完成 1 X X X 读 / 写 置 1 启动 A/D 转换, 转换过程中保持 GO/ DONE = 1 系统寄存器 $0A - $0C: ( 模 / 数转换结果寄存器 ) 地址 第 3 位 第 2 位 第 1 位 第 0 位 读 / 写 说明 $0A A2 A1 A0 - 只读 ADC 数据低位寄存器 $0B A6 A5 A4 A3 只读 ADC 数据中位寄存器 $0C - A9 A8 A7 只读 ADC 数据高位寄存器 VDD VREF CH1:CH0 ADC PORTA.0/VREF 00 PORTA.0/AN0 Select VREF 01 PORTA.1/AN1 Input voltage 10 PORTA.2/AN2 11 PORTB.0/AN3 模 / 数转换器示意图 注意 : - 正确选择 ADC 转换时钟周期 tad, 保证 1µs tad 33.4µs - 当完成 ADC 转换后, 将产生模 / 数转换中断 ( 如果模 / 数转换中断允许 ) - 模拟输入通道必须将其对应的 PXCR (X = A, B) 位作为输入 - 如果 I/O 端口已被选择为模拟输入端, 那么 I/O 功能和上拉电阻被禁止 - 当模 / 数转换转换完成后, GO/ DONE 位由硬件自动清零 - 在转换过程中将 GO/ DONE 位清零会中止当前的转换过程 - 尚未完成转换过程而将 GO/ DONE 位清零的模 / 数转换将不会更新 ADC 转换结果寄存器内容 - 在下一个 A/D 转换开始前需要等待 16-tOSC 的时间 - ADC 能在 HALT 方式下继续工作, 但在执行 STOP 指令后自动停止工作 - ADC 能将 CPU 从 HALT 方式下唤醒 ( 如果 ADC 中断允许 ) 14

10. 脉宽调制 (PWM) SH67P847 包含一个 9 位 PWM 模块 PWM 模块可以产生周期和占空比分别可以调整的脉宽调制波形 PWM 模块的工作模式由 PWMC 寄存器来设置 PWM 输出的周期由 PWMP 寄存器来设置 而 PWM 输出波形的占空比由 PWMD 寄存器来设置 系统寄存器 $15: PWM 控制寄存器 (PWMC) 地址第 3 位第 2 位第 1 位第 0 位读 / 写说明 $15 PWMS TCK1 TCK0 PWM_EN 读 / 写 第 0 位 : PWM 输出允许设置寄存器第 2-1 位 : PWM 时钟选择寄存器第 3 位 : PWM 占空比的输出模式设置寄存器 X X X 0 读 / 写 PWM 功能关闭 ( 初始值 ) X X X 1 读 / 写 PWM 功能打开 X 0 0 X 读 / 写 PWM 时钟 = tosc ( 初始值 ) X 0 1 X 读 / 写 PWM 时钟 = 2tOSC X 1 0 X 读 / 写 PWM 时钟 = 4tOSC X 1 1 X 读 / 写 PWM 时钟 = 8tOSC 0 X X X 读 / 写 PWM 占空比输出普通模式 ( 高电平有效 ) ( 初始值 ) 1 X X X 读 / 写 PWM 占空比输出反转模式 ( 低电平有效 ) PWM 输出引脚与 PORTB.1 共用 系统寄存器 $16 - $17: PWM 周期控制寄存器 (PWMP) 地址第 3 位第 2 位第 1 位第 0 位读 / 写说明 $16 PP.3 PP.2 PP.1 PP.0 读 / 写 PWM 周期低位寄存器 $17 PP.7 PP.6 PP.5 PP.4 读 / 写 PWM 周期高位寄存器 PWM 输出周期 = [PP.7, PP.0] X PWM 时钟 当 [PP.7, PP.0] = 00H, 如果 PWMS 位设置为 0, PWM 输出低电平 当 [PP.7, PP.0] = 00H, 如果 PWMS 位设置为 1, PWM 输出高电平 系统寄存器 $18 - $1A: PWM 占空比控制寄存器 (PWMD) 地址第 3 位第 2 位第 1 位第 0 位读 / 写说明 $18 - - - PDF.0 读 / 写 PWM 占空比微调寄存器 $19 PD.3 PD.2 PD.1 PD.0 读 / 写 PWM 占空比低位寄存器 $1A PD.7 PD.6 PD.5 PD.4 读 / 写 PWM 占空比高位寄存器 PWM 输出占空比 = [PD.7, PD.0] X PWM 时钟 如果 [PP.7, PP.0] [PD.7, PD.0], 当 PWMS 位设置为 0, PWM 输出高电平 如果 [PP.7, PP.0] [PD.7, PD.0], 当 PWMS 位设置为 1, PWM 输出低电平 15

编程注意事项 : 1. 选择 PWM 模块时钟源 2. 通过写适当的值到 PWM 周期控制寄存器 (PWMP) 设置 PWM 周期 : 首先设置低 4 位, 然后设置高 4 位 3. 通过写适当的值到 PWM 占空比控制寄存器 (PWMD) 设置 PWM 占空比 : 先设置微调位, 然后设置低 4 位, 最后设置高 4 位 4. 通过写 PWM 控制寄存器 (PWMC) 的 PWMS 位选择 PWM 占空比的输出模式 5. 为了输出适当的 PWM 波形, 通过写 PWM 控制寄存器 (PWMC) 中的 PWM_EN 位为 1 来允许 PWM 模块工作 6. 如果 PWM 周期或者占空比需要改变, 操作流程如同步骤 2 或者步骤 3 说明 修改后的重载入计数器的值在下一个周期开始有效 PWM clock tpwm 01 02 03 04 05 7D 7E 7F 80 EF F0 01 02 03 04 PWM output PWM output (PWMS = 1) [PP.7, PP.0] = F0H [PD.7, PD.0] = 7FH PWM output duty cycle = 7FH X tpwm PWM output period cycle = F0H X tpwm PWM 输出举例 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 01 02 03 04 05 06 07 08 PWM clock tpwm Write [PP.7, PP.0] = 0DH Write [PD.7, PD.0] = 07H PWM output Duty cycle = 06H X tpwm Duty cycle = 06H X tpwm Duty cycle = 07H X tpwm Period cycle = 0FH X tpwm Period cycle = 0DH X tpwm PWM 输出周期或者占空比周期变化举例 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 01 02 03 04 05 06 07 08 PWM clock tpwm [PD.7, PD0] = 06H [PDF.0]=0 [PD.7, PD0] = 06H [PDF.0]=1 PWM output Duty cycle = 6H X tpwm Duty cycle = (6+1/2) X tpwm Duty cycle = (6+1/2) X tpwm Period cycle = 0DH X tpwm Period cycle = 0DH X tpwm PWM 输出微调举例 16

11. 低电压复位 (LVR) LVR 用于监控电源电压并产生芯片内部复位 它一般用于交流供电电路或有大负载的电路, 这些电路工作时负载的启动会引起器件工作电压暂时低于电路的最低允许工作电压 LVR 功能可以通过代码选项永久开启或禁止 当 LVR 功能开启时其功能如下 : - 当 VDD VLVR 时产生系统复位 - 当 VDD > VLVR 时释放系统复位 这里, VDD: 电源电压, VLVR: LVR 检测电压 12. 看门狗定时器 (WDT) 看门狗定时器是一个递减计数器, 拥有独立内建 RC 振荡器作为时钟源, 因此在 STOP 模式下仍会持续运行 当定时器溢出时, WDT 将复位 CPU 通过代码选项可以允许或禁止该功能 WDT 控制位 ($1E 第 2-0 位 ) 用来选择不同的溢出时间 定时器溢出后, WDT 溢出标志 ($1E 第 3 位 ) 将由硬件自动设置为 1 通过读或者写系统寄存器 $1E, WDT 会在溢出前重新开始计数 系统寄存器 $1E: 看门狗定时器 (WDT) 地址第 3 位第 2 位第 1 位第 0 位读 / 写说明 $1E WDT WDT.2 WDT.1 WDT.0 读 / 写 只读 第 2-0 位 : 看门狗定时器控制寄存器第 3 位 : 看门狗定时器溢出标志寄存器 X 0 0 0 读 / 写 WDT 溢出周期为 4096ms X 0 0 1 读 / 写 WDT 溢出周期为 1024ms X 0 1 0 读 / 写 WDT 溢出周期为 256ms X 0 1 1 读 / 写 WDT 溢出周期为 128ms X 1 0 0 读 / 写 WDT 溢出周期为 64ms X 1 0 1 读 / 写 WDT 溢出周期为 16ms X 1 1 0 读 / 写 WDT 溢出周期为 4ms X 1 1 1 读 / 写 WDT 溢出周期为 1ms 0 X X X 只读未发生 WDT 溢出复位 1 X X X 只读 WDT 溢出, 发生 WDT 复位 注意 : 看门狗定时器溢出周期是当 VDD = 5V 时的参考值 13. HALT 和 STOP 模式 在执行 HALT 指令后, CPU 将进入待机模式 1 (HALT) 在 HALT 模式下, CPU 将停止工作 但是其周边电路 (Timer, ADC ) 将继续工作 在执行 STOP 指令后, CPU 将进入待机模式 2 (STOP) 在 STOP 模式下, 除了看门狗定时器电路外, 整个芯片 ( 包括振荡器 ) 将停止工作 在 HALT 模式下, 发生任何中断 CPU 将被唤醒 在 STOP 模式下, 发生端口中断 CPU 将被唤醒 当通过任何中断, CPU 从 HALT/STOP 被唤醒, 将会首先执行相关中断服务子程序 然后才会执行 HALT/STOP 的下一条指令 17

14. 预热计数器 本芯片内建振荡器预热计数器, 它能消除振荡器在下列情况下起振时的不稳定状态 : 14.1. 上电复位在 RC 振荡器模式下, fosc = 16MHz, 预热计数器预分频比为 1/2 15 (32768) 14.2. 由 STOP 模式唤醒, WDT 复位, LVR 复位在 RC 振荡器模式下, fosc = 16MHz, 预热计数器预分频比为 1/2 8 (256) 15. 代码选项 15.1. 看门狗定时器 OP_WDT: 0 = 关闭 ( 初始值 ) 1 = 打开 15.2. Low Voltage Reset OP_LVR: 0 = 关闭 ( 初始值 ) 1 = 打开 18

OTP 在系统烧写时注意事项 OTP 在系统编程时注意事项只对 OTP 芯片有效 对于用户采用 COB (Chip on Board) 组装方式时, OTP 芯片可以使用在系统编程 (In System Programming) 方式编程 使用在系统编程方式编程时, 用户必须在印制板 (PCB) 上预留出 OTP 芯片的编程接口, 以便连接 OTP 编程器进行编程 在此模式下, 用户可在 OTP 芯片编程前将包括 OTP 芯片在内的所有器件组装在 PCB 上后, 再对 OTP 芯片进行编程 当然也可以可先将 OTP 芯片组装到 PCB 上, 对 OTP 芯片编程完成后再组装其它器件 为了提高 OTP 编程的可靠性, 在编程操作时 OTP 编程信号线必须直接连接到 OTP 编程器上, 不允许有其它器件或外加电路与之并联 所以在 PCB 上必须预留 4 组跳线或分割焊盘, 将 OTP 编程接口 (VDD, VPP, SDA, SCK) 与应用电路分隔开, 如下图所示 : Application PCB OTP Chip VPP VDD SCK SDA OTP Writer GND To Application Circuit Jumper 具体操作步骤如下 : (1) 在 OTP 芯片编程前将 4 组跳线断开 (2) 将 OTP 芯片的编程接口连接到 OTP 编程器, 完成代码编程 (3) 将用户板与 OTP 烧写器编程器断开, 将 4 组跳线短接 有关 OTP 编程的更多详细资料, 请参见 OTP 编程器的用户手册 19

指令集 所有的指令都是单周期和单字的指令 具有面向存储器的操作特性 1. 以下为算术和逻辑指令 1.1. 累加器类型 助记符 指令代码 功能 标志位改变 ADC X (, B) 00000 0bbb xxx xxxx AC <- Mx + AC + CY CY ADCM X (, B) 00000 1bbb xxx xxxx AC, Mx <- Mx + AC + CY CY ADD X (, B) 00001 0bbb xxx xxxx AC <- Mx + AC CY ADDM X (, B) 00001 1bbb xxx xxxx AC, Mx <- Mx + AC CY SBC X (, B) 00010 0bbb xxx xxxx AC <- Mx + -AC + CY CY SBCM X (, B) 00010 1bbb xxx xxxx AC, Mx <- Mx + -AC + CY CY SUB X (, B) 00011 0bbb xxx xxxx AC <- Mx + -AC +1 CY SUBM X (, B) 00011 1bbb xxx xxxx AC, Mx <- Mx + -AC +1 CY EOR X (, B) 00100 0bbb xxx xxxx AC <- Mx AC EORM X (, B) 00100 1bbb xxx xxxx AC, Mx <- Mx AC OR X (, B) 00101 0bbb xxx xxxx AC <- Mx AC ORM X (, B) 00101 1bbb xxx xxxx AC, Mx <- Mx AC AND X (, B) 00110 0bbb xxx xxxx AC <- Mx & AC ANDM X (, B) 00110 1bbb xxx xxxx AC, Mx <- Mx & AC 1.2. 立即数类型 SHR 11110 0000 000 0000 0 -> AC [3], AC[0] -> CY; AC 右移 1 位 助记符 指令代码 功能 标志位改变 ADI X, I 01000 iiii xxx xxxx AC <- Mx + I CY ADIM X, I 01001 iiii xxx xxxx AC, Mx <- Mx + I CY SBI X, I 01010 iiii xxx xxxx AC <- Mx + -I +1 CY SBIM X, I 01011 iiii xxx xxxx AC, Mx <- Mx + -I +1 CY EORIM X, I 01100 iiii xxx xxxx AC, Mx <- Mx I ORIM X, I 01101 iiii xxx xxxx AC, Mx <- Mx I ANDIM X, I 01110 iiii xxx xxxx AC, Mx <- Mx & I 1.3. 十进制调整 助记符 指令代码 功能 标志位改变 DAA X 11001 0110 xxx xxxx AC, Mx <- 加法的十进制调整 CY DAS X 11001 1010 xxx xxxx AC, Mx <- 减法的十进制调整 CY CY 20

2. 传输指令 助记符 指令代码 功能 标志位改变 LDA X (, B) 00111 0bbb xxx xxxx AC <- Mx STA X (, B) 00111 1bbb xxx xxxx Mx <- AC LDI X, I 01111 iiii xxx xxxx AC, Mx <- I 3. 控制指令 其中, 助记符 指令代码 功能 标志位改变 BAZ X 10010 xxxx xxx xxxx PC <- X, 如果 AC = 0 BNZ X 10000 xxxx xxx xxxx PC <- X, 如果 AC 0 BC X 10011 xxxx xxx xxxx PC <- X, 如果 CY = 1 BNC X 10001 xxxx xxx xxxx PC <- X, 如果 CY 1 BA0 X 10100 xxxx xxx xxxx PC <- X, 如果 AC (0) = 1 BA1 X 10101 xxxx xxx xxxx PC <- X, 如果 AC (1) = 1 BA2 X 10110 xxxx xxx xxxx PC <- X, 如果 AC (2) = 1 BA3 X 10111 xxxx xxx xxxx PC <- X, 如果 AC (3) = 1 CALL X RTNW H, L 11000 xxxx xxx xxxx 11010 000h hhh llll ST <- CY, PC + 1 PC <- X ( 不包括 p) PC <- ST; TBR <- hhhh, AC <- llli RTNI 11010 1000 000 0000 CY, PC <- ST CY HALT 11011 0000 000 0000 STOP 11011 1000 000 0000 JMP X 1110p xxxx xxx xxxx PC <- X ( 包括 p) TJMP 11110 1111 111 1111 PC <- (PC11-PC8) (TBR) (AC) NOP 11111 1111 111 1111 空操作 PC 程序计数器 I 立即数 AC 累加器 逻辑异或 -AC 累加器的反码 逻辑或 CY 进位标志位 & 逻辑与 Mx 数据存储器 bbb RAM 页 p ROM 页 B RAM 页 ST 堆栈 TBR 查表寄存器 21

电气特性 极限参数 * 直流供电电压......................-0.3V to +7.0V 输入信号电压..................-0.3V to VDD + 0.3V 工作环境温度......................-40 C to +85 C 存储温度........................ -55 C to +125 C * 注释 如果器件的工作条件超过左列 极限参数 的范围, 将造成器件永久性破坏 只有当器件工作在说明书所规定的范围内时功能才能得到保障 器件在极限参数列举的条件下工作将会影响到器件工作的可靠性 直流电气特性 (VDD = 3.3-5.5V, GND = 0V, TA = 25 C, 除非另有说明 ) 参数符号最小值典型值 * 最大值单位条件 工作电压 VDD 3.3 5.0 5.5 V fosc = 16MHz (fsys = 1MHz) 工作电流 IOP1-3 4.5 ma fosc = 16MHz (fsys = 1MHz), VDD = 5.0V 所有输出引脚无负载, 执行 NOP 指令, WDT, ADC, LVR 关闭 待机电流 (HALT) ISB1 - - 1.5 ma 待机电流 (STOP) ISB2 - - 1 µa WDT 电流 IWDT - - 20 µa 输入低电压 输入高电压 VIL1 GND - 0.3 X VDD V I/O 端口 ( 除 PORTA.3) VIL2 GND - 0.2 X VDD V PORTA.3 VIH1 0.7 X VDD - VDD V I/O 端口 ( 除 PORTA.3) VIH2 0.8 X VDD - VDD V PORTA.3 fosc = 16MHz (fsys = 1MHz), VDD = 5.0V 所有输出引脚无负载, CPU 关闭 ( 执行 HALT 指令 ), WDT, ADC, LVR 关闭 fosc = 16MHz (fsys = 1MHz), VDD = 5.0V 所有输出引脚无负载 ( 包括所有数字输入引脚不浮动 ), CPU 关闭 ( 执行 STOP 指令 ), WDT, ADC, LVR 关闭 fosc = 16MHz (fsys = 1MHz), VDD = 5.0V 所有输出引脚无负载 ( 包括所有数字输入引脚不浮动 ), CPU 关闭 ( 执行 STOP 指令 ), WDT 打开, ADC, LVR 关闭 输入漏电流 IIL -1-1 µa I/O 端口, VIN = GND 或 VDD, VDD = 5.0V 输出漏电流 IOL -1-1 µa PORTA.3, VDD = 5.0V, VOUT = VDD 输出高电压 VOH VDD - 0.7 - - V I/O 端口, PWM IOH = -5mA (VDD = 5.0V) 输出低电压 VOL - - GND + 0.6 V I/O 端口, PWM IOL = 5mA (VDD = 5.0V) 上拉电阻 RPH - 30 - kω 上拉电阻 (VDD = 5.0V) : 典型值这一列数据为 5.0V, 25 C, 除非另有说明 流过 VDD 的最大电流值须小于 25mA 流过 GND 的最大电流值须小于 25mA 22

交流电气特性 (VDD = 3.3V - 5.5V, GND = 0V, TA = 25 C, 除非另有说明 ) 参数符号最小值典型值 * 最大值单位条件 WDT 时间 twdt 1 - - ms VDD = 5.0V 频率漂移范围 ( 内建 RC) fosc 15.2 16 16.8 MHz 内建 RC 振荡器, VDD = 5.0V, TA = 5 C - 45 C 包括芯片间差异 频率稳定度 ( 内建 RC) F /F - - 2 % 内建 RC 振荡器, TA = 25 C, F(3.3V)-F(5V) /F(5V) 指令周期时间 tcy - 1 - µs fosc = 16MHz (fsys = 1MHz) 模 / 数转换器电气特性 (VDD = 3.3V - 5.5V, GND = 0V, TA = 25 C, fosc = 16MHz (fsys = 1MHz), 除非另有说明 ) 参数符号最小值典型值 * 最大值单位条件 精度 NR - - 10 bit GND VAIN VREF 参考电压 VREF 2.4 - VDD V A/D 输入电压 VAIN GND - VREF V A/D 输入电阻 RAIN 2000 - - kω VIN = 5.0V VREF 输入电阻 RREF 180 - - kω VIN = 5.0V 差分非线性误差 EDNL - - ±1 LSB VREF = VDD = 5.0V 积分非线性误差 EINL - - ±2 LSB VREF = VDD = 5.0V, GND VAIN 4.8V 满刻度误差 EF - - ±5 LSB VREF = VDD = 5.0V 偏移量误差 EZ - - ±1 LSB VREF = VDD = 5.0V A/D 时钟周期 tad 1-8 µs fosc = 16MHz (fsys = 1MHz) A/D 转换时间 tcnv1-15 - tad 设置 ADCS = 0-114 - tad 设置 ADCS = 1 低电压复位电气特性 (GND = 0V, TA = 25 C, fosc = 16MHz (fsys = 1MHz), 除非另有说明 ) 参数符号最小值典型值 * 最大值单位条件 低电压复位电压 VLVR 3.3-3.7 V LVR 有效 时序波形 系统时钟时序波形 : fosc/4 T1 T2 T3 T4 T5 T6 T7 T8 T1 T2 T3 T4 System Clock tcy 23

应用电路 ( 仅供参考 ): 应用 1 ( 充电器 ) (1) 工作电压 : 5.0V (2) 振荡器 : 内建 RC (3) PORTA.2 - PORTA.0: ADC 输入, 用于采样电池电压, 充电电流和电池温度 (4) PORTB.0: LED 驱动端口 (5) PORTB.1: 充电控制端口 (6) PORTA.3 和 GND 之间接 10000pF 瓷片电容可以提高整体 EFT 性能 FROM ADAPTER 12Vdc VDD RB1 Battery Pack LED RB2 103 PWM PA.3 PB.0 AN2 GND VDD VDD R2 AN0 R1 VDD AN1 Rsense RT(NTC) 24

订购信息 产品编号 SH67P847M 封装 8L SOP 25

封装信息 SOP 8L 外形尺寸 单位 : 英寸 / 毫米 8 5 1 b 4 L Detail F c E HE θ D D A e Seating Plane y A1 See Detail F 符号英寸单位尺寸毫米单位尺寸 A A1 最大值 0.069 最大值 1.75 最小值 0.053 最小值 1.35 最大值 0.010 最大值 0.25 最小值 0.004 最小值 0.10 b 0.016 0.41 c 0.008 0.20 D E 最大值 0.196 最大值 4.98 0.189 4.80 最大值 0.157 最大值 3.99 最小值 0.150 最小值 3.81 e 0.050 1.27 HE L 最大值 0.244 最大值 6.20 最小值 0.228 最小值 5.79 最大值 0.050 最大值 1.27 最小值 0.016 最小值 0.41 y 最大值 0.004 最大值 0.10 θ 0 ~ 8 0 ~ 8 注意 : 1. 尺寸 D 的最大值包括末端毛边 2. 尺寸 E 不包括树脂凸缘 26

产品规格更改记录 版本记录日期 1.0 初始版本 2008 年 7 月 27