深圳市世鹏电子科技有限公司 0755-83987638(10线)
不变,因此所产生的跳转可至整个页面。
第三章 EM78447单片机硬件结构
3.4.2 堆栈
堆栈EM78447堆栈结构与EM78456相同,参见§2.4有关EM78456堆栈的章节。
3.5. 数据存储器RAM结构
EM78447的数据存储器分工作寄存器和特殊功能寄存器两大类,如图3.4所示:
R0 00
R1(TCC 01
R2(PC) 02
03 R3(Status) 04 R4(RSR)
R5(Port5) 05
R6(Port6) 06 07 08 09 0A 0B 0C 0D 0E 0F
10 11 . . . . 1F 20 . . . . 3B 3F
R7(Port7) R8 R9 RA RB RC RD RE RF CONT 堆栈 (5 级) IOC5 IOC6 IOC7
IOCE IOCF 16x8 通用 寄存器 00 01 31x8 31x8 Bank Bank Register Register (Bank 0) (Bank 1)
图3.4 RAM结构图
10 31x8 Bank Register (Bank 2) 11 31x8 Bank Register (Bank 3) R3F 第 29 页
深圳市世鹏电子科技有限公司 0755-83987638(10线)
第三章 EM78447单片机硬件结构
3.5.1 工作寄存器
1.R0间接寻址寄存器
RO并非一个实际工作的寄存器,只作为间接寻址用。(参EM78X56部分) 2.R1(TCC)
参见EM78X56部分
3.R2(程序计数器PC)和堆栈
·在复位情况下,R2每位均被置”1”,地址指向FFFH ·对R2进行写操作的指令一定需要二个指令周期,其它有关R2和堆栈的内容如§3.4中所述。
4.R3状态寄存器(STATUS)
如下图所示,R3包括ALU运算标志、页面标志、复位状态等 7 6 5 4 3 2 1 0 GP PS1 PS0 T P Z DC C 5.R4.RAM选择寄存器(RSR) 在间接寻址模式里,Bit0-5用来选择寄存器(地址:00-3F) ·Bit6~7两位用来确定4个RAM页面中的那一个每个RAM页面为31个字,地址为20-3E ·未作间接寻址时,R4可作8位宽度的可读/写通用寄存器 6. R5为口5的双向I/O口寄存器,EM78447A: 仅使用R5的低4位,其余高4位读为“0” EM78447B:8位双向I/O口。 7.P6~P7(口6~7)
是两个双向三态8位I/O口寄存器 8.R8~R1F、R20~F3E
R8~R1F: 是通用寄存器
R20~R3E: 31个通用寄存器地址.它包含四个页面,即每个页面都有31个寄存器且地址为20H~3EH,具体页面由R4的Bit6~7决定。
9.R3F中断标志寄存器 7 — 6 — 5 — 4 — 3 EXIF 2 — 1 — 0 TCIF ·“1”表明有中断请求,“0”表明没有中断请求 Bit0 (TCIF):TCC 计数器1溢出中断标志位;当TCC计数器溢出时置“1”,可由软件清零。
Bit1~2 :未使用
Bit3 (EXIF):外部中断标志位。当INT脚有下降沿触发时置“1”,可用软件清零。 Bit4~7:未使用
·R3F可用软件清零,但不能被置“1”
·IOCF为中断屏蔽寄存器,通过指令读取R3F值,此时结果值为R3F和IOCF相与的结果
3.5.2 特殊功能寄存器
EM78447的特殊功能寄存器主要包括累加器.控制寄存器和WDT预分频器。 1. 累加器A
内部数据传输或指令运算单元,属不可寻址单元。 2. 控制寄存器
控制寄存器是用来控制I/O的工作状态、中断控制、看门狗控制等,它们的寄存器
第 30 页
深圳市世鹏电子科技有限公司 0755-83987638(10线)
地址如图3.4,其读写只能采用指令I0R R或IOW R来完成。 (1) CONT(控制寄存器) 7 6 5 4 3 2 1 0 /PHEN INT TS TE PAB PSR2 PSR1 PRR0 寄存器与EM78X56的CONT相比仅增加了Bit7(/PHEN)其它完全一样。 /PHEN: I/O上拉使能标志位
0: P60~P67和P74~P75内部上拉电阻使能 1: 上拉电阻关闭
(2) IOC5~IOC7(I/O口控制寄存器)
IOC5~IOC7分别为口5~口7控制寄存器,按位将IOC5、IOC6.IOC7设为“1”时表示该脚设为输入(高阻抗),设为“0”时表示该脚为输出。在EM78447A中,IOC7使用IOC5的低4位和IOC6和IOC7。
(3)IOCE WTD控制寄存器 7 6 5 4 3 2 1 0 -- ODE WTE SLPC ROC — — /WUE Bit0(/WUE): P60~67.P74~75唤醒功能控制位 0: 使能唤醒功能 1: 禁止唤醒功能 Bit1: 未使用 Bit2: 未使用
Bit3(ROC): R-OPTION选择位。
1: 使能P70、P71引脚的R-OPTION功能 0: 禁止R-OPTION功能
其它具体用法参见EM78X56有关R-OPTION部分。 Bit4(SLPC):用于控制振荡器的工作。
1: 由唤醒信号的下降沿(P60~P67、 P74、P75)触发硬件“1“ 0: 由软件清零
当SLPC由软件清零时,振荡器停止工作,单片机进入休眠模式2(Sleep2 mode)。所谓休眠模式2,是有别于通常休眠模式,此种情况下一旦单片机被唤醒,先由振荡定时器(OST)延时约18ms后,再执行下条指令,如此可保证振荡器的稳定工作。由P60~P67、P74、P75输入触发而产生的休民模式2唤醒的示意图如图3.5所示。 Bit5(WTE): 使能看门狗定时器控制位
0: 关闭WDT 1: 使能WDT
注意: WDT起作用的先决条件结构选择寄存器(CODE OPTION)中WTC位为”1”,若为”0”则WDT不起作用
Bit6(ODE): 集电极开路输出控制,可读写位 0: P76和P77为通常的I/O脚 1: P76和P77为集电极开路输出脚
Bit7:未使用
(4)IOCF(中断屏蔽寄存器) 7 6 5 4 3 2 1 0 — — — — EXIE — — TCIE Bit0(TCIE) TCIF中断屏蔽位(TCC溢出中断) 0:屏蔽TCIF中断 1:允许TCIF中断
第 31 页
第三章 EM78447单片机硬件结构
深圳市世鹏电子科技有限公司 0755-83987638(10线)
Bit3(EXIE) EXIF中断屏蔽位(外部中断INT) 0:屏蔽EXIF中断 1:允许EXIF中断
Bit1~2.Bit4~7 未使用 当将IOCF相应的控制位置“1”、则相应的中断允许,使用“ENI”指令时所有中断被开放,而使用“DISI”指令,则所有指令被关闭。IOCF为可读写寄存器。
第三章 EM78447单片机硬件结构
图3.5 I/O唤醒Sleep2电路
3.6. TCC/WDT及预分频器Prescaler
EM78内置8位定时/计数器TCC和看门狗定时器与EM78X56完全相同,请参见EM78X56有关TCC/WDT及预分频器相关部分。
3.7. I/O口(PROT5、PROT6、PORT7)
EM78把I/O(口5、口6.口7)作为一般工作寄存器R5、R6、R7来操作,它们为双向、三态输入/输出口,可通过控制寄存器来设置以下功能,如表3.4所示: 功 能 控制寄存器 I/O脚 I/O输入输出方向 IOC5、IOC6、IOC7 P50~P57、P60~P67、P70~P77 内部上拉电阻 CONT(/PHEN) P60~P67、 P74~P75 集电极开路 IOCE(ODE) P76~P77 R-PTION IOCE(ROC) P70、P71 休眠状态唤醒 IOCF(ICIE) P60~P67、P74~P75 表3.2 I/O控制功能分类表 第 32 页