8 位 OTP 单片机芯片 BL35P12 用 户 手 册 v 1. 8 ( 2010 2010.0 10.04 .04.15) 上海贝岭股份有限公司 Shanghai Belling Co., Ltd. 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. 8 位 OTP 单片机芯片 BL35P12 1.概述 BL35P12 是一款 OTP 类型低功耗 8 位通用微控制器(MCU)。可适用于各类家电(如电视、VCD 机等) 的红外遥控器,完成按键的扫描和红外编码信号的生成,也可用于各类简单功能的小家电控制。BL35P12 兼容本公司 MASK 类型低功耗 8 位通用微控制器 BL3502S,同时在某些方面功能有所增强。 2.主要特点 ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● 指令与 BL2220 兼容( (BL3502S 无 MUL, MUL,ROR, ROR,ROL, ROL,ASR 等四条指令) 等四条指令) CPU:8 位 ROM 单元:2K byte RAM 单元:64 byte( byte) (BL3502S 为 48 byte ) 晶振电路:400K~4MHz 晶体振荡器或内置 RC 振荡( (BL3502S 无内部 RC 振荡) 振荡) I/O 口:2 组 8 位双向口 红外编码信号输出口:可软件选择 38KHz 调制 17 位 watchdog( (BL3502S 无) 低电压复位 LVR(翻转电压 1.9V±0.2V) ,可软件选择( (BL3502S 为 2.0V± ±0.2V) 0.2V) 其他外围电路:8 位可编程定时器 工作电源电压:2.0~4.0V 工作温度:-40~85℃ 静态功耗:< 1uA @ VDD = 3V 动态功耗:< 1mA @ VDD = 3V 封装形式:SOP24/DIP24/SOP20/SSOP20/DIP20/SOP16 3.管脚排列 SOP24/DIP24 电话:86-21-64850700 SOP20 200MIL/SOP20 300MIL/SSOP20/DIP20 网址: www.belling.com.cn 第 2 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. SOP16 150MIL 4.管脚功能说明 编号 引脚名 方向 功能描述 1 OSC1 INPUT 晶振 2 OSC2 OUTPUT 晶振 3 GND SOURCE 地 4 PB0 I/O 输入输出口 PB0 5 PB1 I/O 输入输出口 PB1 6 PB2 I/O 输入输出口 PB2 7 PB3 I/O 输入输出口 PB3 8 PB4 I/O 输入输出口 PB4 9 PB5 I/O 输入输出口 PB5 10 PB6 I/O 输入输出口 PB6 11 PB7 I/O 输入输出口 PB7 12 OUT38K OUTPUT 带 38KHz 载波的输出口 13 VPP HiVolt 编程高压输入 14 RSTB INPUT 系统复位脚 15 PA0 I/O 输入输出口 PA0 16 PA1 I/O 输入输出口 PA1 17 PA2 I/O 输入输出口 PA2 18 PA3 I/O 输入输出口 PA3 19 PA4 I/O 输入输出口 PA4 20 PA5 I/O 输入输出口 PA5 21 NC 22 VDD SOURCE 23 PA6 I/O 输入输出口 PA6 24 PA7 I/O 输入输出口 PA7 Not connected 电源 说明:以上管脚说明中的编号针对 SOP24/DIP24。 4.1 VDD 和 GND VDD 和 GND 分别是工作电源和接地引脚。BL35P12 的工作电源范围为 2.0~5.5V。 4.2 OSC1 和 OSC2 电话:86-21-64850700 网址: www.belling.com.cn 第 3 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. OSC1 和 OSC2 提供系统工作的主时钟。用户通过 OPTION 的 BIT0 可选择使用晶体振荡还是 RC 振荡, 两种工作方式的连线图如下。 OSC1 OSC1 OSC2 100p OSC1 OSC2 OSC2 VDD 100p 晶体振荡 RT RC振荡 (方式1) RC振荡 (方式2) (1)晶体振荡:在 OSC1 和 OSC2 引脚之间连接一个晶振。晶振可选用 455KHz(用于遥控器) 、4MHz 等。 反馈电阻已经做在芯片内部了,故无需并联反馈电阻。另外,振荡电路中选择电容的容量时应当 考虑分布电容的影响,为减小输出失真,晶振和电容尽量靠近引脚。电容值要根据晶振频率调整, 典型情况下,455KHz 电容选 100p,4MHz 电容选 30p。 (2)RC 振荡(方式 1):OSC1 和 OSC2 短接,系统时钟由内部 RC 电路产生,频率约 1MHz,但具体与工 作电压、温度等因素有关。 (3)RC 振荡(方式 2) :OSC1 悬空,OSC2 通过电阻 RT 接到 VDD 上,这样可以通过 RT 的值来调节 RC 振 荡的频率。 4.3 RSTB 引脚 RSTB 是系统复位引脚。RSTB 引脚的逻辑零可以强制系统进入复位状态。如果上电后需要手动复位 可以如下图这样连接。 10K RSTB 10u 由于 BL35P12 内部已有上电复位电路和上拉电阻,在对外界干扰不强且不需要手动复位的情况下, RSTB 悬空也是允许的。 4.4 PA7:PA0 PA7:PA0 是双向端口 A 的引脚。如果开启键盘中断功能的话,相应的引脚内部有 10Kohm 的上拉电阻。 4.5 PB7:PB0 PB7:PB0 是双向端口 B 的引脚。引脚内部有可选的 10Kohm 上拉电阻。 4.6 OUT38K 引脚 OUT38K 是一个输出引脚,可选择带或不带 38KHz 载波。 4.7 VPP 引脚( 引脚(BL3502S 没有该脚) 没有该脚) 电话:86-21-64850700 网址: www.belling.com.cn 第 4 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. VPP 引脚是 OTP 编程的高电压输入脚。在编程模式时,VPP 应输入+12V 电压;在正常工作模式下, VPP 可以直接接地,或通过芯片内部的 60K 电阻接地。 5.功能详述 BL35P12 是一款 MCU 电路,其体系结构和指令系统与 BL2220 完全相同。 USER OTP ROM - 2K BYTES SRAM - 64BYTES 7 0 KEYBOARD INTERRUPT D D R P O R T A A D D R P O R T B B ACCUMULATOR 7 0 8 PA0~PA7 INDEX REGISTER 0 12 STACK POINTER 0 15 PROGRAM COUNTER 7 RST 0 RESET BUS-CLOCK 8 PB0~PB7 CONDITION CODE REGISTER OSC1 OSC2 OSC-I 7-BIT PRESCALER 38K modulate OUT38K 8-BIT COUNTER TIMER CONTROL BL35P12 系统框图 5.1 存储器结构 电话:86-21-64850700 网址: www.belling.com.cn 第 5 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. $0000 控制寄存器 16 字节 A 口数据寄存器 $00 B 口数据寄存器 $01 保留 $02 保留 $03 A 口方向寄存器 $04 B 口方向寄存器 $05 保留 $06 保留 $07 $000F $0010 未用 $00BF $00C0 定时器数据寄存器 TDR $08 64 字节 定时器控制寄存器 TCR $09 保留 $0A 未用 键盘中断屏蔽寄存器 $0B 杂用控制寄存器 $0C 特殊控制寄存器 $0D 保留 $0E Watchdog 控制寄存器 $0F 用户 RAM $00FF $0100 $17FF $1800 保留 用户 ROM 保留 2032 字节 键盘中断向量 定时器中断向量 保留 $1FEF 外部中断向量 $1FF0 中断向量 软件中断向量 16 字节 复位 $1FFF $1FF2 $1FF3 $1FF4 $1FF5 $1FF6 $1FF7 $1FF8 $1FF9 $1FFA $1FFB $1FFC $1FFD $1FFE $1FFF 如上图所示 CPU 可以寻址 8K 字节的存储空间。存储器的 ROM 区用来存程序指令、固定数据、中 断向量地址和中断服务程序,存储器的 RAM 区用来放置可变数据。控制寄存器映射在存储器中,这样 CPU 可以用与访问存储器其他区域相同的寻址方式来寻址用户寄存器空间。 5.2 控制寄存器说明 BL35P12 的全部控制寄存器见下表。 Addr Name $00 PORTA $01 PORTB $04 DDRA $05 DDRB $08 TDR $09 TCR R/W 7 6 5 4 3 2 1 0 Reset PA7 PA6 PA5 PA4 PA3 PA2 PA1 PA0 unaffected PB7 PB6 PB5 PB4 PB3 PB2 PB1 PB0 unaffected DDRA7 DDRA6 DDRA5 DDRA4 DDRA3 DDRA2 DDRA1 DDRA0 0000 0000 DDRB7 DDRB6 DDRB5 DDRB4 DDRB3 DDRB2 DDRB1 DDRB0 0000 0000 TD7 TD6 TD5 TD4 TD3 TD2 TD1 TD0 1111 1111 TIF TIM TCEX TINE PR2 PR1 PR0 0100 0100 R W R W R W R W R W R W 电话:86-21-64850700 网址: www.belling.com.cn 0 PRER 第 6 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. $0B KBIM $0C MCR $0D SCR $0F WDTR R W R W KBE7 KBIE KBE6 0 KBIC KBE5 KBE4 KBE3 KBE2 KBE1 KBE0 0000 0000 LVRE PBP PBB1 PBB0 OUTC F38KE 00X0 0000 TIMON WDTE ---- 0000 R W W WDTC 注:X 表示初始状态有 OTP OPTION 为决定。 5.2.1 A 口数据寄存器 PORTA( PORTA(Port A Data Register) Register) PORTA 是 A 口是数据寄存器,每一位对应 I/O 口 PA7:PA0 中的一个。当 I/O 口为输入状态时读 PORTA 相应的位可以判断 I/O 口的电平逻辑;当 I/O 口为输出状态时写 PORTA 相应的位可以控制 I/O 口的电平 逻辑。 Address bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 Reset PORTA $00 PA7 PA6 PA5 PA4 PA3 PA2 PA1 PA0 unaffected 5.2.2 B 口数据寄存器 PORTB( PORTB(Port B Data Register) Register) PORTB 是 B 口是数据寄存器,每一位对应 I/O 口 PB7:PB0 中的一个。当 I/O 口为输入状态时读 PORTB 相应的位可以判断 I/O 口的电平逻辑;当 I/O 口为输出状态时写 PORTB 相应的位可以控制 I/O 口的电平 逻辑。 Address bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 Reset PORTB $01 PB7 PB6 PB5 PB4 PB3 PB2 PB1 PB0 unaffected 5.2.3 A 口方向寄存器 DDRA( DDRA(Port A Data Direction Register) Register) DDRA 用于控制 PA 口的输入输出方向,DDRAx=0 时,PAx 为输入状态;DDRAx=1 时,PAx 为输出状 态。 Address bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 Reset DDRA $04 DDRA7 DDRA6 DDRA5 DDRA4 DDRA3 DDRA2 DDRA1 DDRA0 00000000 5.2.4 B 口方向寄存器 DDRB( DDRB(Port B Data Direction Register) Register) DDRB 用于控制 PB 口的输入输出方向,DDRBx=0 时,PBx 为输入状态;DDRBx=1 时,PBx 为输出状 态。 Address bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 Reset DDRB $05 DDRB7 DDRB6 DDRB5 DDRB4 DDRB3 DDRB2 DDRB1 DDRB0 00000000 5.2.5 定时器数据器 TDR( TDR(Timer Data Register) Register) TDR 是一个可读写的 8 位寄存器,它的内容是 8 位定时器计数器的当前值。读该寄存器时不会影响 定时器的工作。 Address bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 Reset TDR $08 TD7 TD6 TD5 TD4 TD3 5.2.6 定时器控制寄存器 TCR( Register r) TCR(Timer Control Registe TCR 用于对 8 位定时器进行设定。 Address bit 7 bit 6 bit 5 bit 4 bit 3 电话:86-21-64850700 网址: www.belling.com.cn TD2 TD1 TD0 11111111 bit 2 bit 1 bit 0 Reset 第 7 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. TCR $09 TIF TIM PRER PRE2 PRE1 PRE0 01--0100 TIF- TIF-Timer Interrupt Flag 1:定时器减计数到 0。 0:定时器尚未计数到 0。 定时器的计数器一旦计数结果为“0”,则把 TIF 置“1”,表示有定时器中断请求。系统复位或对 TIF 写“0”可以将 TIF 清零。 TIM- Interrupt TIM -Timer In terrupt Mask 1:不允许定时器中断。 0:允许屏蔽定时器中断。 系统复位时,会把 TIM 置“1” ,从而屏蔽定时器中断,要允许定时器中断,必须用软件把 TIM 清零。 TIM 只能用于屏蔽中断请求,不影响 TIF。 PRER- PRER -PREscaler Reset 对 PRER 写“1”将对预定标器复位,对 TDR 的数据进行更新的时候有必要对预定标器清零。对该位 读的结果总为“0”。 PRE2:PRE0 PRE2:PRE0 是预定标器分频率的选择位,系统复位时被置位“100” ,也就是 16 分频。这 3 位的值和 分频率的对应关系见下表。 PRE2 PRE1 PRE0 分频率 0 0 0 1 0 0 1 2 0 1 0 4 0 1 1 8 1 0 0 16 1 0 1 32 1 1 0 64 1 1 1 128 5.2.7 键盘中断屏蔽寄存器 KBIM( KBIM(Keyboard Interrupt Mask Register) Register) KBIM 用于选择 PA 口的键盘扫描功能是否打开。 Address bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 KBIM $0B KBE7 KBE6 KBE5 KBE4 KBE3 KBE2 bit 0 Reset KBE0 00000000 bit 1 bit 0 Reset OUTC F38KE 00X00000 KBE1 KBE7:KBE0- KBE7:KBE0-Keyboard Enable 1:PA7:PA0 作为键盘扫描输入口,此时相应的端口内接 10Kohm 的上拉电阻。 0:PA7:PA0 作为普通的 I/O 口,此时相应的端口没有上拉电阻。 5.2.8 杂用控制寄存器 MCR( MCR(Miscellanceous Control Register) Register) MCR 用于控制键盘中断、38K 载波、LVR、PB 口上拉电阻等。 Address bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 MCR $0C KBIE KBIC LVRE PBP PBB1 PBB0 KBIE- KBIE-Keyboard Interrupt Enable 1:允许键盘中断。 0:禁止键盘中断。 系统复位时,KBIE 清零。KBIE 和各个独立的键盘中断选择位 KBEx 执行“与”操作,从而决定是否 电话:86-21-64850700 网址: www.belling.com.cn 第 8 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 Shanghai Belling Co., Ltd. BL35P12 用户手册 能产生键盘中断请求信号。 KBIC- KBIC-Keyboard Interrupt Clear 1:清键盘中断锁存信号。 0:保留键盘中断锁存信号。 系统复位时,KBIC 清零。在响应键盘中断后,键盘中断处理子程序中应对清键盘中断锁存信号,即 对 KBIC 写“1” 。任何时读 KBIC 的结果总为“0” 。 LVRE- LVRE-LVR Enable 1:LVR 功能允许。 0:LVR 功能禁止。 注:请选择“1” ,把 LVR 打开,否则可能会出现复位不良的情况。 上电复位时 LVRE 的初始状态由 OPTION.BIT1 决定(参见 5.11) ,即 OPTION.BIT1 设为 0 则上电复位 时 LVR 功能关闭,OPTION.BIT1 设为 1 则上电复位时 LVR 功能打开。 PBP- PBP-PB2:PB7 PB2:PB7 PullPull-up 1:内部 10Kohm 的电阻连到 PB2:PB7 的输入端。 0:PB2:PB7 无上拉电阻。 PB1- PB1-PB1 PullPull-up 1:内部 10Kohm 的电阻连到 PB1 的输入端。 0:PB1 无上拉电阻。 PB0- PullPB0 -PB0 Pull -up 1:内部 10Kohm 的电阻连到 PB0 的输入端。 0:PB0 无上拉电阻。 OUTC- OUTC-OUT38K pin control 1:OUT38K 逻辑输出为高。 0:OUT38K 逻辑输出为低。 F38KE- F38KE-38KHz Modulation Enable 1:允许 38KHz 调制 0:不允许 38KHz 调制。 F38KE 决定是否在 OUT38K 引脚的输出信号上加载 38KHz 的调制波。系统复位时,F38KE 清零。 5.2.9 特殊控制寄存器 SCR( Register) )(BL3502S 没有该寄存器) SCR(Special Control Register 没有该寄存器) Address bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 SCR $0D TIMON WDTE Reset ---- 0000 注意: 注意:为了保证本公司系列产品的兼容性, 为了保证本公司系列产品的兼容性,写本寄存器时, 写本寄存器时,BIT3 BIT3、BIT2 必须置 0。 TIMON- TIMON-Watchdog Clock Select 1:Watchdog 选择预分频后的时钟。 0:Watchdog 选择系统时钟。 WDTE- WDTE -Watchdog Timer Enable 1:Watchdog 开启。 0:Watchdog 关闭。 5.2.10 Watchdog 控制寄存器 WDTR( Register) )(BL3502S 没有该寄存器) WDTR(Watchdog Register 没有该寄存器) Address bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 WDTR $0F WDTC Reset ---- ---- WDTC- WDTC-Watchdog Clear WDTC 为只写位,对 WDTC 写 0 可以清 Watchdog 计数器,写 1 无效。 电话:86-21-64850700 网址: www.belling.com.cn 第 9 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. 5.3 RAM 从$00C0( (BL3502S 是从$00D0 开始) (BL3502S 是 48 字节) 是从 开始)到$00FF 的 64 个字节( 字节)作为用户 RAM 和堆栈区使用。在响应中断或使用 JSR、BSR 指令时,CPU 会将 PC 指针、A、X、CCR 进栈。复位时 栈指针 SP 指向$FF 地址,每次将一个数据进栈时 SP 指针减 1,出栈时 SP 加 1。使用时应合理控制中断 服务程序和调用子程序的嵌套级数,避免栈指针指向作为用户数据存储的 RAM 地址。 5.4 ROM 存储器的 ROM 区按功能分为两部分( (BL3502S 为三部分, 为自检 ROM 区): 为三部分,其中$1F00-$1FEF 其中 (1)$1800-$1FEF 的 2032 个字节为用户 ROM 区。 (2)$1FF0 到$1FFF 的 16 个字节为中断向量 ROM 区。 5.5 中央处理器( 中央处理器(CPU) CPU) 5.5.1 CPU CPU 寄存器 下图给出了 5 个 CPU 寄存器。CPU 寄存器不是存储器的一部分。 7 0 累加器(A) A 7 0 变址寄存器(X) X 15 0 15 0 0 6 0 0 0 0 0 12 0 0 0 0 1 10 8 5 0 1 堆栈指针(SP) SP 7 PCH 程序计数(PC) PCL 7 1 1 5 4 1 H 0 I N Z C 状态寄存器(CCR) 半进位标志 中断屏蔽 负标志 零标志 进位/借位标志 5.5.1.1 累加器(A 累加器(A) (A) 累加器是一个通用的 8 位寄存器。CPU 用累加器存放算术或数据处理时的第一操作数和结果。 Bit 7 复复: 6 5 4 3 2 1 Bit 0 复复复复复复 5.5.1.2 变址寄存器(X) 变址寄存器(X) 变址寄存器用于变址寻址方式,详细请参阅寻址方式部分。 电话:86-21-64850700 网址: www.belling.com.cn 第 10 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. Bit 7 6 5 4 复复: 3 2 1 Bit 0 复复复复复复 5.5.1.3 堆栈指针(SP) 堆栈指针(SP) 堆栈指针是一个 16 位的寄存器,用来放置堆栈中下一个空闲单元的地址。在执行 MCU 复位或堆栈 复位操作命令(RSP)时,堆栈指针便自动设置栈底为$00FF 处。当数据压入堆栈时堆栈指针的地址减 1, 当数据弹出堆栈时堆栈指针加 1。 Bit15 14 复复: 13 12 11 10 9 8 7 6 5 4 3 2 1 Bit0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 5.5.1.4 程序计数器(PC) 程序计数器(PC) 程序计数器是一个 16 位的寄存器,用来放置即将执行的下一条指令的地址。程序计数器的高 3 位 固定设置为 000。 正常情况下,程序计数器的地址会随着每次取指操作的进行自动增大到下一个单元。在进行跳转、 分支和中断操作时程序计数器便装入相应下一个要执行的单元的地址。 Bit15 14 0 0 13 12 11 10 9 8 7 6 5 4 3 2 1 Bit0 0 5.5.1.5 状态寄存器(CCR) 状态寄存器(CCR) 状态寄存器是一个 8 位的寄存器,其中高三位被固定设置为 111。状态寄存器由一个中断屏蔽位和 四个用来指示刚刚执行完的指令的结果的标志位。下面分别介绍状态寄存器功能。 复复: Bit 7 6 1 1 1 1 5 4 3 2 1 Bit 0 1 H I N C Z 1 U 1 N U U U=复复复 半进位标志(H) 半进位标志(H) 当执行加法 ADD 或带进位加法 ADC 指令时, 如果在位三和位四之间发生了进位 CPU 设置半进位标志。 执行二进制编码的十进制数(BCD)运算时需要这个标志位。 中断屏蔽位(I) 中断屏蔽位 (I) 中断屏蔽位用来锁存中断。当中断屏蔽位是逻辑零时,允许中断请求,CPU 将寄存器的内容存储到 堆栈,设置中断屏蔽位,然后读取中断矢量。当中断屏蔽位被置位时,所有的中断请求被锁存。正常情 况下,当中断屏蔽位被清零后,CPU 会尽快处理被锁存的中断。 当执行中断返回指令(RTI)时,CPU 寄存器的内容从堆栈中弹出,中断屏蔽位恢复到清零状态。以后 每次复位时,中断屏蔽位被置位且只能通过软件指令来清零。 负标志位(N) 负标志位 (N) 电话:86-21-64850700 网址: www.belling.com.cn 第 11 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. 当一个算术操作、逻辑操作或数据传送操作的结果为负数时,CPU 设置负标志位。 零标志位(Z) 零标志位(Z) 当一个算术操作、逻辑操作或数据传送操作的结果为$00 时,CPU 设置零标志位。 进位/ 进位/借位标志位(C) 借位标志位(C) 当执行加法操作使得累加器内的第 7 位产生进位或执行减法操作需要借位时,CPU 设置进位/借位标 志。有些逻辑操作和数据传送操作也会影响到进位/借位标志。 5.5.2 算术/ 算术/逻辑运算单元(ALU) 逻辑运算单元(ALU) 算术/逻辑运算单元用于执行算术运算和逻辑运算。 5.6 中断 5.6.1 中断源 可以产生中断请求的中断源有: (1)复位中断 (2)软件中断(SWI) (3)定时器中断 (4)键盘中断(PA7~PA0) 注:前两种中断不可屏蔽。 中断请求使系统临时停止执行正常的程序流程而去处理特殊事件。中断并不停止正在执行的指令, 而是标记发生的中断,直到执行完现行的指令。中断处理时系统自动将 CPU 寄存器的数据压入堆栈并将 中断向量地址装入程序计数器。 5.6.1.1 中断系统屏蔽有关的寄存器 将状态寄存器 CCR 的中断屏蔽位( I )可以禁止外部中断。 5.6.1.2 键盘中断 键盘中断( (PA7PA7-PA0 引脚) 引脚) KBIM($0B) Bit 7 6 KBE7 KBE6 KBE7 KBE7 INTE 5 4 3 KBE5 LVRE KBE4 SM KBE3 IRQ2F 2 KBE2 IRQ2E 1 KBE1 Z Bit 0 KBE0 键盘中断请求和三个主要因素有关: (1)KBIE 位 (2)KBE 位 (3)PA 端口引脚的状态,当引脚的状态从高电平变成低电平时,表示有中断要求。 键盘中断应用注意:建议首先使 PORTA 端口为高,然后再设置$0B 和$0C 寄存器,避免误判。 5.6.1.3 定时器中断 定时器中断请求和三个条件有关: (1)TIM 位:中断屏蔽标志,TIM=1 屏蔽中断,TIM=0 允许中断。 (2)TIF 位:中断请求标志,TIF=1 有中断请求,TIF=0 无中断请求。 (3)定时器数据寄存器复位时为 FF,实为减计数器,当结果为”0”时,置 TIF=1。 5.6.2 中断处理 电话:86-21-64850700 网址: www.belling.com.cn 第 12 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. 进行中断服务时,CPU 会作出下述响应: (1)CPU 寄存器顺序存储在堆栈中。 (2)状态寄存器中的 I 位置位,以防其他中断。 (3)将下述中断向量地址装入程序计数器内。 中断返回指令 RTI 使 CPU 通过退栈恢复寄存器的内容,如图所示。 $00C0(堆栈底部 $00C0(堆栈底部) 堆栈底部) $00C1 $00C2 退栈顺序 . . . 5 状态寄存器 4 累加器 3 变址寄存器 2 程序计数器( 程序计数器(高位) 高位) 1 程序计数器( 程序计数器(低位) 低位) . . . 1 2 3 4 5 . . . . . . 进栈顺序 $00FD $00FE $00FF(堆栈顶部 $00FF(堆栈顶部) 堆栈顶部) 5.7 低功耗工作方式 5.7.1 STOP 方式 STOP 指令可使 MCU 进入 STOP 低功耗工作方式,同时对 MCU 会产生以下影响: (1)停止内部振荡器振荡。 (2)清状态寄存器 I 位,允许中断。 (3)RAM 内容保持不变。 (4)所有的输入输出端口保留原态不变。 (5)所有的内部操作全部停止。 以下情况使 MCU 退出 STOP 方式: (1)有外部复位信号从 RESET 输入。 (2)有键盘中断信号从 PA 端口输入(STOP 前已设置好状态) KBIE=1,KBE(i)=1。 电话:86-21-64850700 网址: www.belling.com.cn 第 13 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. 5.7.2 WAIT 方式 执行 WAIT 指令 MCU 使进入等待低功能耗方式,同时对 MCU 产生以下影响: (1)停止 CPU 时钟。 (2)停止所有的处理器和内部总线的活动。 (3)其他内部时钟保持作用。 (4)允许定时器中断。 (5)清状态寄存器 I 位,允许中断。 (6)RAM 内容保持不变。 (7)所有的输入输出端口保留原态不变。 (8)WAIT 指令不影响其它任何寄存器。 以下条件将重新启动 CPU 时钟,使 MCU 退出 WAIT 方式,并进入正常工作方式: (1)键盘中断。 (2)定时器中断。 (3)系统复位。 5.8 并行 I/O 口 5.8.1 I/O 口的功能 16 个并行双向 I/O 引脚组成两组 I/O 口(PA、PB),每个 I/O 引脚可由软件设置为输入或输出。数据 由方向寄存器的内容,决定每一个 I/O 脚的数据方向。A、B I/O 脚可软件编程有否上拉器件。 5.8.2 PA 口 PA 口是一个并行八位通用双向 I/O 口,可由软件设置有上拉电阻。有下列特性: (1)3 mA 驱动能力(PA7-PA0)。 (2)可兼作键盘中断输入口。 5.8.3 PB 口 PB 口是一个并行八位通用 I/O 口,可由软件设置有上拉器件。有下列特性: (1)3 mA 驱动能力(PB7-PB0)。 5.9 定时器 5.9.1 定时器控制寄存器(TCR) 定时器控制寄存器(TCR) 可读/写定时器的各种状态和控制位。 Address bit 7 bit 6 bit 5 TCR $09 TIF bit 4 TIM bit 3 bit 2 bit 1 bit 0 Reset PRER PRE2 PRE1 PRE0 01--0100 TIF- TIF-Timer Interrupt Flag 1:定时器减计数到 0。 0:定时器尚未计数到 0。 定时器的计数器一旦计数结果为“0”,则把 TIF 置“1”,表示有定时器中断请求。系统复位或对 TIF 写“0”可以将 TIF 清零。 TIM- TIM-Timer Interrupt Mask 1:不允许定时器中断。 0:允许屏蔽定时器中断。 系统复位时,会把 TIM 置“1” ,从而屏蔽定时器中断,要允许定时器中断,必须用软件把 TIM 清零。 TIM 只能用于屏蔽中断请求,不影响 TIF。 电话:86-21-64850700 网址: www.belling.com.cn 第 14 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. PRER- PRER-PREscaler Reset 对 PRER 写“1”将对预定标器复位,对 TDR 的数据进行更新的时候有必要对预定标器清零。对该位 读的结果总为“0”。 PRE2:PRE0 PRE2:PRE0 是预定标器分频率的选择位,系统复位时被置位“100” ,也就是 16 分频。这 3 位的值和 分频率的对应关系见下表。 PRE2 PRE1 PRE0 分频率 0 0 0 1 0 0 1 2 0 1 0 4 0 1 1 8 1 0 0 16 1 0 1 32 1 1 0 64 1 1 1 128 5.9.2 计数器( 计数器(TDR) TDR) 计数器是一个 8 位减法计数器,它用于对定时器的输入计数信号执行计数。 计数器从 255~0 进行计数。它的计数信号由预定标器选择逻辑产生。 5.9.3 预定标器选择逻辑 预定标器选择逻辑是一个对计数器的计数信号执行分频的电路。 预定标器选择逻辑的输出送到定时器数据计数器 TDR 中去进行减法计数。 5.9.4 溢出检测电路和中断电路 溢出检测电路和中断电路是产生定时器中断请求的电路。 5.10 指令系统 5.10.1 寻址方式 CPU 有八种寻址方式,可适应不同种数据访问方式,寻址方式决定了 CPU 执行指令的方法。 (1)隐含寻址。 (2)立即寻址。 (3)直接寻址。 (4)扩展寻址。 (5)无偏移量变址。 (6)8 位偏移量变址。 (7)16 位偏移量变址。 (8)相对寻址。 5.10.1.1 隐含寻址 隐含寻址指令中没有操作数,如中断返回指令(RTI)和停止指令(STOP)一些隐含寻址指定是对 CPU 寄存器操作如设置进位标志(SEC)和累加器增加指令(INCA)隐含寻址不需要存储器地址,指令长 度为一个字节 5.10.1.2 立即寻址 电话:86-21-64850700 网址: www.belling.com.cn 第 15 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. 立即寻址指令包含一个数值,用来对累加器和变址寄存器的值操作,立即寻址指令不需要地址,指 令长度为二字节,第一字节为操作码,立即数为第二字节。 5.10.1.3 直接寻址 直接寻址 直接寻址指令可以访问存储器中最低的 256 个字节,指令长度为二字节第一字节为操作码,第二字 节是操作地址的低 8 位。在直接寻址指令中,CPU 直接把$00 加到操作地址的高 8 位。 5.10.1.4 扩展寻址 扩展寻址指令是一个三字节指令,可访问任何存储器单元。第一字节为操作码,第二和第三字节为 操作地址的高位、低位。 5.10.1.5 无偏移量变址 无偏移量变址指令长度为一字节。变址寄存器包含操作地址的低位,可访问存储器的前 256 字节 CPU 直接把$00 加入高位,指令地址分布为$0000~$00FF。无偏移量变址指令经常用来移动表格指针或保存 被频繁使用的 RAM 数据及 I/O 地址。 5.10.1.6 8 位偏移量变址 8 位偏移量变址指令长两字节。可访问存储器前 511 个字节的存储单元 CPU 将变址寄存器中的无符 号数加上操作码后续字节一个无符号数,它们之和作为操作地址,这种指令可访问$0000---$01FF。8 位 偏移指令用于从一个有 N 个元素表中选择第 K 个元素。此表可从前 256 字节中任何一个地方开始,可扩 展到$01FF,K 数值存放于变址寄存器。指令中放表格的首地址。 5.10.1.7 16 位偏移量变址 16 位偏移量变址指令长三字节,可访问所有存储器地址,CPU 变址 寄存器中的无符号整数加上操 作码后面的二字节无符号数,它们之和作为操作地址。16 位偏移量变址指令也同样用于 N 个元素表中选 择第 K 个元素。 5.10.1.8 相对寻址 只用于转移指令,发生转移时,操作码后的 8 位有符号整段加到 PC 上,否则顺序执行。偏移量为 有符号整数,相对寻址范围为操作码地址开始的-128 到+127 个字节。 5.10.2 指令类型 此 MCU 共有 65 条基本指令( (BL3502S 为 61 条),分为五大类: (1)寄存器/存储器指令。 (2)读-修改-写指令。 (3)跳转指令。 (4)位操作指令。 (5)控制指令。 5.10.3 指令总表 下表按字母顺序列出了所有指令及每个指令对状态寄存器的影响。 指 令 操 作 功 能 状 H 电话:86-21-64850700 网址: www.belling.com.cn I 态 N Z C 寻 址 操 操 周 方 式 作 作 期 码 数 第 16 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. ADC #opr IMM A9 ii 2 ADC opr DIR B9 dd 3 EXT C9 hh ll 4 ADC opr,X IX2 D9 ee ff 5 ADC opr,X IX1 E9 ff 4 ADC ,X IX F9 ADD #opr IMM AB ii 2 ADD opr DIR BB dd 3 EXT CB hh ll 4 ADD opr,X IX2 DB ee ff 5 ADD opr,X IX1 EB ff 4 ADD ,X IX FB AND #opr IMM A4 ii 2 AND opr DIR B4 dd 3 EXT C4 hh ll 4 AND opr,X IX2 D4 ee ff 5 AND opr,X IX1 E4 ff 4 AND ,X IX F4 ASL opr DIR 38 INH 48 3 INH 58 3 IX1 68 IX 78 ASR opr DIR 37 ASRA INH 47 3 INH 57 3 IX1 67 IX 77 REL 24 rr 3 DIR(bo) 11 dd 5 DIR(b1) 13 dd 5 DIR(b2) 15 dd 5 DIR(b3) 17 dd 5 DIR(b4) 19 dd 5 DIR(b5) 1B dd 5 DIR(b6) 1D dd 5 ADC opr ADD opr AND opr 带 进 位加 无进 位加 * A← (A)+(M) A← (A) ∧(M) 逻辑与 ASLA 算术 左移 ASLX ( 与 LSL ASL opr,X * A← (A)+(M)+(C) 0 C b7 一样 ) - - - - - - * * * * * * * * * * - * b0 ASL ,X ASRX 算术 右移 C b7 ASR opr,X - - * * * b0 ASR ,X BCC rel 进 位位为 0 PC ←(PC)+2+rel ? C=0 - - - - - 3 3 3 dd ff 5 6 5 dd ff 5 6 5 转移 BCLR n opr 第 n 位清 零 电话:86-21-64850700 Mn←0 网址: www.belling.com.cn - - - - - 第 17 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. 进 位位为 1 PC ← (PC)+2+rel ? C=1 转移 (与 BLO 相同) BEQ rel 相等转 移 BHCC rel 半进 位位 BCS rel DIR(b7) 1F dd 5 - - - - - REL 25 rr 3 PC ← (PC)+2+rel ? Z=1 - - - - - REL 27 rr 3 PC← (PC)+2+rel ? H=0 - - - - - REL 28 rr 3 PC← (PC)+2+rel ? H=1 - - - - - REL 29 rr 3 PC← (PC)+2+rel ? (C∨ - - - - - REL 22 rr 3 - - - - - REL 24 rr 3 为 0移 BHCS rel 半进 位位 为 1移 BHI rel 大于转 移 Z )=0 BHS rel 大于等于 PC ← (PC)+2+rel ? C=0 转移 BIH rel IRQ 脚为 高 PC 转移 IRQ=1 IRQ 脚为 低 PC 转移 IRQ=0 (PC)+2+rel ? - - - - - REL 2F rr 3 (PC)+2+rel ? - - - - - REL 2E rr 3 IMM A5 ii 2 DIR B5 dd 3 EXT C5 hh ll 4 IX2 D5 ee ff 5 BIT opr,X IX1 E5 ff 4 BIT ,X IX F5 BIL rel ← ← BIT #opr BIT opr 位测 测 累 BIT opr 加器和存 BIT opr,X 储 器内 容 BLO rel 小于转 移 (A)∧(M) - - * * - 3 PC ← (PC)+2+rel ? C=1 - - - - - REL 25 rr 3 小于或等 PC← (PC)+2+rel ? (C∨ - - - - - REL 23 rr 3 于转 移 Z )=1 BMC rel I=0 转 移 PC← (PC)+2+rel ? I=0 - - - - - REL 2C rr 3 BMI rel N=1 转 移 PC← (PC)+2+rel ? N=1 - - - - - REL 2B rr 3 BMS rel I=1 转 移 PC← (PC)+2+rel ? I=1 - - - - - REL 2D rr 3 BNE rel 不等分支 PC← (PC)+2+rel ? Z=0 - - - - - REL 26 rr 3 PC← (PC)+2+rel ? N=0 - - - - - REL 2A rr 3 PC← (PC)+2+rel - - - - - REL 20 rr 3 DIR(bo) 01 dd rr 5 ( 与 BCS 相同) BLS rel 转移 BPL rel 大于等于 转移 BRA rel 无条 件转 移 电话:86-21-64850700 网址: www.belling.com.cn 第 18 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. PC← BRCLR n opr rel 位 测 测 ”0” (PC)+2+rel ? - Mn=0 - - - * 转移 永不转 移 BRN rel - PC← (PC)+2 - - - - DIR(b1) 03 dd rr 5 DIR(b2) 05 dd rr 5 DIR(b3) 07 dd rr 5 DIR(b4) 09 dd rr 5 DIR(b5) 0B dd rr 5 DIR(b6) 0D dd rr 5 DIR(b7) 0F dd rr 5 REL 21 rr 3 DIR(bo) 00 dd rr 5 DIR(b1) 02 dd rr 5 DIR(b2) 04 dd rr 5 DIR(b3) 06 dd rr 5 DIR(b4) 08 dd rr 5 DIR(b5) 0A dd rr 5 DIR(b6) 0C dd rr 5 DIR(b7) 0E dd rr 5 DIR(bo) 10 dd 5 DIR(b1) 12 dd 5 DIR(b2) 14 dd 5 DIR(b3) 16 dd 5 DIR(b4) 18 dd 5 DIR(b5) 1A dd 5 DIR(b6) 1C dd 5 DIR(b7) 1E dd 5 rr 6 (2 字节 的 NOP) PC← BRSET n opr rel 位 测 测 ”1” (PC)+2+rel ? Mn=1 - - - - * 转移 BSET n opr 第 n 位置位 Mn←1 - - - - - PC←(PC)+2 BSR rel 转 到子程 push(PCL);SP←(SP)-1 序指令 push(PCH);SP←(SP)-1 - - - - - REL AD PC← (PC)+rel CLC 清 进 位位 C←0 - - - - 0 INH 98 2 CLI 清 中断 屏 I ←0 - 0 - - - INH 9A 2 蔽 CLR opr M←$00 DIR 3F CLRA A ←$00 INH 4F 3 INH 5F 3 IX1 6F CLRX 清 寄存器 CLR opr,X 电话:86-21-64850700 X ←$00 M←$00 网址: www.belling.com.cn - - 0 1 - dd ff 5 6 第 19 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. CLR ,X M←$00 CMP #opr IX 7F 5 IMM A1 ii 2 DIR B1 dd 3 EXT C1 hh ll 4 CMP opr 累加器内 CMP opr 容同存储 CMP opr,X 器内 容比 IX2 D1 ee ff 5 CMP opr,X 较 IX1 E1 ff 4 IX F1 M←$FF-(M) DIR 33 INH 43 3 INH 53 3 (A) -(M) - - * * * CMP ,X COM opr COMA 寄存器内 A ←$FF-(A) COMX 容取反 X ←$FF-(X) - - * * 1 3 dd COM opr,X M←$FF-(M) IX1 63 COM ,X M←$FF-(M) IX 73 IMM A3 ii 2 DIR B3 dd 3 EXT C3 hh ll 4 CPX #opr ff 5 6 5 CPX opr 变 址寄存 CPX opr 器内 容同 CPX opr,X 存储 器内 IX2 D3 ee ff 5 CPX opr,X 容比较 IX1 E3 ff 4 IX F3 (X) -(M) - - * * * CPX ,X 3 DEC opr M←(M)-1 DIR 3A DECA A ←(A)-1 INH 4A 3 INH 5A 3 DECX 寄存器内 X ←(X)-1 DEC opr,X 容减 1 M←(M)-1 IX1 6A M←(M)-1 IX 7A DEC ,X - - * * - dd ff 5 6 5 EOR #opr 累加器内 IMM A8 ii 2 EOR opr 容同存储 DIR B8 dd 3 EOR opr 器内 容异 EXT C8 hh ll 4 EOR opr,X 或 IX2 D8 ee ff 5 EOR opr,X IX1 E8 ff 4 EOR ,X IX F8 M←(M)+1 DIR 3C INH 4C 3 INH 5C 3 INC opr A ←(A) ⊕ (M) - - * * - 3 dd 5 INCA 存储 器或 A ←(A)+1 INCX 寄存器内 X ←(X)+1 INC opr,X 容加 1 M←(M)+1 IX1 6C M←(M)+1 IX 7C JMP opr DIR BC dd 2 JMP opr EXT CC hh ll 3 IX2 DC ee ff 4 INC ,X JMP opr,X 无条 件跳 电话:86-21-64850700 PC ←Jump Address 网址: www.belling.com.cn - - - - * - * - - - ff 6 5 第 20 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. JMP opr,X 转 JMP ,X IX1 EC IX FC ff 3 2 JSR opr PC←(PC)+n(n=1,2,or 3) DIR BD dd 5 JSR opr push (PCL);SP←(SP)-1 EXT CD hh ll 6 IX2 DD ee ff 7 IX1 ED ff 6 IX FD IMM A6 ii 2 DIR B6 dd 3 EXT C6 hh ll 4 IX2 D6 ee ff 5 LDA opr,X IX1 E6 ff 4 LDA ,X IX F6 IMM AE ii 2 DIR BE dd 3 EXT CE hh ll 4 JSR opr,X 跳转 子程 push(PCH);SP←(SP)-1 JSR opr,X 序 PC← Effective Address - - - - - JSR ,X LDA #opr LDA opr 存储 器内 LDA opr 容装载 到 LDA opr,X 累加器 A ←(M) - - * * - LDX #opr 5 3 LDX opr 存储 器内 LDX opr 容装载 到 LDX opr,X 变 址寄存 IX2 DE ee ff 5 LDX opr,X 器 IX1 EE ff 4 LDX ,X IX FE LSL opr DIR 38 LSLA INH 48 3 INH 58 3 IX1 68 IX 78 LSR opr DIR 34 LSRA INH 44 3 INH 54 3 IX1 64 IX 74 5 INH 42 11 M←-(M) DIR 30 INH 40 3 INH 50 3 LSLX 逻 辑 左移 LSL opr,X (与 ASL 相 LSL ,X 同) LSRX 逻 辑 右移 X ←(M) 0 C b7 - - - * * * * - * b0 0 b7 LSR opr,X - C - - 0 * * b0 LSR ,X MUL 无符号 乘 X:A ← (X)X(A) 0 - - - 0 3 dd ff 5 6 5 dd ff 5 6 法 NEG opr dd 5 NEGA 存储 器或 A ←-(A) NEGX 寄存器内 X ←-(X) NEG opr,X 容取补 M←-(M) IX1 60 M←-(M) IX 70 5 INH 9D 2 NEG ,X NOP 空操作 电话:86-21-64850700 - - 网址: www.belling.com.cn - - * - * - * - ff 6 第 21 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. ORA #opr 累加器内 IMM AA ii 2 ORA opr 容同存储 DIR BA dd 3 ORA opr 器内 容相 EXT CA hh ll 4 ORA opr,X “或”送入 IX2 DA ee ff 5 ORA opr,X 累加器 IX1 EA ff 4 ORA ,X IX FA ROL opr DIR 39 INH 49 3 INH 59 3 IX1 69 IX 79 DIR 36 INH 46 3 INH 56 3 IX1 66 IX 76 5 ROLA 带 进 位位 ROLX 的循环 左 ROL opr,X A ←(A) ∨(M) - - C b7 移 - - * * * * - * b0 ROL ,X ROR opr RORA 带 进 位位 RORX 的循环 右 ROR opr,X C b7 移 - - * * * b0 ROR ,X RSP 复 位堆栈 SP← $00FF 3 dd ff 5 6 5 dd ff 5 6 - - - - - INH 9C 2 * * * * * INH 80 9 - - - - - INH 81 6 IMM A2 ii 2 DIR B2 dd 3 EXT C2 hh ll 4 指针 SP←(SP)+1; Pull(CCR) SP← (SP)+1; Pull(A) RTI 中断 返回 SP← (SP)+1; Pull(X) SP←(SP)+1; Pull(PCH) SP←(SP)+1; Pull(PCL) RTS 子程序返 SP←(SP)+1; Pull(PCH) 回 SP←(SP)+1; Pull(PCL) SBC #opr SBC opr 累加器内 SBC opr 容减 去存 SBC opr,X 储 器的内 IX2 D2 ee ff 5 SBC opr,X 容再减 去 IX1 E2 ff 4 SBC ,X 进 位位 IX F2 3 SEC 设 置进 位 A ← (A)-(M)-(C) - - * * * C←1 - - - - 1 INH 99 2 I←1 - 1 - - - INH 9B 2 DIR B7 dd 4 EXT C7 hh ll 5 IX2 D7 ee ff 6 位 SEI 关 中断 STA opr STA opr 将 累加器 STA opr,X 内 容保存 电话:86-21-64850700 M ← (A) 网址: www.belling.com.cn - - * * - 第 22 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. STA opr,X 到存储 器 STA ,X STOP 进 入 STOP - 0 - - - IX1 E7 ff 5 IX F7 4 INH 8E 2 模式 STX opr 保存变 址 DIR BF dd 4 STX opr 寄存器内 EXT CF hh ll 5 STX opr,X 容到存储 IX2 DF ee ff 6 STX opr,X 器 IX1 EF ff 5 IX FF M ← (X) - - * * - STX ,X 4 SUC #opr 累加器内 IMM A0 ii 2 SUB opr 容减 存储 DIR B0 dd 3 SUB opr 器内 容送 EXT C0 hh ll 4 SUB opr,X 入累加器 IX2 D0 ee ff 5 SUB opr,X IX1 E0 ff 4 SUB ,X IX F0 3 A ← (A)- (M) - - * * * PC←(PC)+1;Push(PCL) SP←(SP)-1;Push(PCH) SP← (SP)-1; Push(X) SWI 软 中断 SP←(SP)-1; ush(CCR) - 1 - - - INH 83 10 - - - - - INH 97 2 SP← (SP)-1;I ←1 PCH←高位矢量中断 PCL ←低位矢量中断 TAX 传 送累加 X ←(A) 内 容到变 址寄存器 TST opr 测 存储 器 DIR 3D TSTA 内 容是负 INH 4D 3 TSTX 或0 INH 5D 3 TST opr,X IX1 6D TST ,X IX 7D 4 TXA (M)-$00 传 送变 址 寄存器内 - - * * - dd ff 4 5 - - - - - INH 9F 2 - 0 - - - INH 8F 2 A ← (X) 容到累加 器 WAIT 进 入 WAIT 模式 注: 电话:86-21-64850700 网址: www.belling.com.cn 第 23 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. (1)BIH、 BIH、BIL 两条指令内核支持, 两条指令内核支持,但本芯片未提供 IRQ 引脚故不可用。 引脚故不可用。 (2)阴影部分的指令在 BL3502S 中不支持。 中不支持。 (3)这里 1 个周期的时间长度等于外部晶振振荡 2 个周期的时间长度。 个周期的时间长度。 A. 累加器 opr 操作数(一或两字节) C. 进位/借位标志 PC 程序计数器 CCR 状态寄存器 PCH 程序计数器高位 dd 直接操作地址 PCL 程序计数器高位 dd rr 直接操作地址和相对偏移转移命令 REL 相对寻址方式 DIR 直接地址方式 rel 相对程序计数器相对偏移字节 ee ff 地址偏移量高、低位字节、 rr 相对程序计数器相对偏移字节 16 位偏移量变址 sp 堆栈指针 EXT 外部寻址方式 z 零标志 ff 地址偏移量,8 位偏移量变址 # 立即数值 H 半进位标志 ∧ hh ll 外部寻址的高、低位操作地址 ∨ 逻辑“或” I 中断屏蔽位 ⊕ 逻辑“异或” ii 立即操作数 ( ) 内容 IMM 立即寻址方式 -( ) 负 INH 隐含寻址方式 ← 装入 IX 无偏移量编址寻址方式 ? 如果 IX1 8 位偏移量变址寻址方式 : 连接 IX2 16 位偏移量变址寻址方式 ↔ 置位或清零 M 存储器地址 - 无影响 N 负标志 * 取决于指令执行的结果 n 任何位 X 变址寄存器 逻辑“与” 5.11 OPTION 选择 BL35P12 的 OTP ROM 中有一个 byte 的 OPTION 位提供给用户对芯片的某些工作方式进行选择(BL3502S (BL3502S 没有 OPTION 选择功能) 选择功能)。OPTION 位在 OTP 编程时通过专用的烧写器写入数据。OPTION 的定义如下: BIT0: BIT0:OSC/RC 选择 0:选择 OSC 工作方式。 1:选择 RC 振荡工作方式。 BIT1: BIT1 :低电压复位功能选择 0:LVR 在上电复位时关闭(但后面仍可通过程序打开)。 1:LVR 在上电复位时打开(但后面仍可通过程序关闭)。 注:请选择“1” ,把 LVR 打开,否则可能会出现复位不良的情况。 BIT2- BIT2-BIT6: BIT6:保留 BIT7: BIT7:保密位 0:保密功能开启。 1:保密功能关闭。 电话:86-21-64850700 网址: www.belling.com.cn 第 24 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. 6.电路特性参数 声明: 声明:本文档是针对 BL35P12 工程片的用户手册,以帮助用户熟悉和使用 BL35P12。由于产品仍处于测 制阶段,某些电性能参数和功能还有变更的可能,特此声明。 6.1 极限参数 参数 符号 值 单位 工作电压 Vdd -0.3~7.0 V 输入电压 VIN Vss-0.3~Vdd+0.3 V 工作温度 TA -40~85 ℃ 储存温度 Tstg -65~150 ℃ 6.2 直流参数 Vdd=3.0V±10%,Vss=0.0V 特性 符号 引脚 条件 最小 Voh PA7~PA0 PB7~PB0 OUT38K Iload=-0.8mA Vdd-0.5 Vol PA7~PA0 PB7~PB0 OUT38K Iload=0.8mA Ioh PA7~PA0 PB7~PB0 OUT38K Voh=2V 2 3 mA Iol PA7~PA0 PB7~PB0 OUT38K Vol=1V 3 5 mA Vih PA7~PA0 PB7~PB0 RSTB 0.7Vdd Vdd V 输入低电平 Vil PA7~PA0 PB7~PB0 RSTB 0 0.2Vdd V 动态功耗 Iddd VDD 主晶振 455KHz 0.5 1 mA 静态功耗 Idds VDD 主晶振停 0.2 1 uA 上拉电阻 Rp PA7~PA0 10 15 Kohm 输出高电平 输出低电平 输出高电平 驱动电流 输出低电平 驱动电流 输入高电平 典型 单位 V 0.1 8 最大 0.5 V 6.3 交流参数 Vdd=3.0V±10%,Vss=0.0V 特性 符号 最小 主晶振频率 Fosc1 400K 晶振起振时间 Toxov 电话:86-21-64850700 网址: www.belling.com.cn 典型 最大 单位 4M Hz 100 ms 第 25 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. 注:经不完全测测,该芯片主晶振频率还可以更高,最大 4M 为暂定值。 6.4 RC 振荡特性 (1)电源电压为 3V( 3V(室温 27C) 27C) 电源为 3V 时电阻阻值与 RC 频率之间的关系,如下图。 F(KHz) 3V外接电阻与RC频率关系 8000 7000 6000 5000 4000 3000 2000 1000 0 0 100 200 300 R(K) 400 500 600 从上图看出 RC 频率与外接电阻阻值成 1/RC 关系(即反比例关系)。最高的 RC 振荡频率为 7MHz。 (当 OSC2 脚直接连电源电压时)。 为了方便用户使用 BL35P12 的 RC 振荡器产生不同频率,可以参照以下两张图表。 3V 中频 1500 1300 KHz 1100 900 700 500 300 100 50 70 90 110 130 R(K) 150 170 190 频率与外接电阻关系图(3v 370KHZ~1.2MHz 的 RC 频率与外接电阻关系图 (3v 下) 电话:86-21-64850700 网址: www.belling.com.cn 第 26 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. F(KHz) 3V高频 8000 7000 6000 5000 4000 3000 2000 1000 0 0 10 20 30 40 50 R(K) 频率与外接电阻关系图(3v 1.2MHz~7MHz 的 RC 频率与外接电阻关系图 (3v 下) (2)电源电压为 5V( 5V(室温 27C) 27C) 电源 5V 时电阻阻值与 RC 频率之间的关系,如下图。 5V外接电阻与RC频率关系 12000 F(KHz) 10000 8000 6000 4000 2000 0 0 100 200 300 400 500 600 R(K) 从上表看出 RC 频率与外接电阻阻值成 1/RC 关系(即反比例关系)。最高的 RC 振荡频率为 9.8MHz (当 OSC2 脚直接连电源电压时) 。 为了方便用户使用 BL35P12 的 RC 振荡器产生不同频率,可以参照以下两张图表。 电话:86-21-64850700 网址: www.belling.com.cn 第 27 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 BL35P12 用户手册 Shanghai Belling Co., Ltd. F(KHz) 5V中频 1500 1300 1100 900 700 500 300 100 -100 50 70 90 110 130 R(K) 150 170 190 频率与外接电阻关系图(5v 325KHZ~1.1MHz 的 RC 频率与外接电阻关系图 (5v 下) 5V高频 12000 F(KHz) 10000 8000 6000 4000 2000 0 0 10 20 30 40 50 R(K) 1.1MHz~9.8MHz 的 RC 频率与外接电阻关系图(5v 频率与外接电阻关系图(5v 下) 7.封装尺寸 电话:86-21-64850700 网址: www.belling.com.cn 第 28 页 共 29 页 上海贝岭股份 上海贝岭股份有限公司 股份有限公司 Shanghai Belling Co., Ltd. 电话:86-21-64850700 网址: www.belling.com.cn BL35P12 用户手册 第 29 页 共 29 页