东芝单片机培训

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

FastExecutorAcademy*PreTestPreTestPreTest(ByLG)GreatCompanyGreatPeopleDAR&DCompetency1/98FastExecutorAcademy8bitMicom8btcoGreatCompanyGreatPeopleDAR&DCompetency2/98FastExecutorAcademy目录目录目录目录…………………………………………………………………………………………31.CPU内核………………………………………………………………………61.1存储器…………………………………………………………………………61.1.1SFR(0x0000~0x003F)……………………………………………………71.1.2RAM(0x0040~0x083F)……………………………………………………71.1.3DBR(0x0F80~0x0FFF)……………………………………………………71.1.4ROM(0x1000~0xFFFF)……………………………………………………81.2PC(程序计数器)………………………………………………………………91.3通用寄存器………………………………………………………………………101.3.1A寄存器…………………………………………………………………………111.3.2C寄存器…………………………………………………………………………121.3.3DE、HL、IX及IY寄存器………………………………………………………12、、及寄存器1.4PSW(通用标志位)……………………………………………………………141.4.1ZF………………………………………………………………………………161.4.2CF………………………………………………………………………………161.4.2CF………………………………………………………………………………161.4.3HF………………………………………………………………………………161.4.4SF………………………………………………………………………………17145VF17GreatCompanyGreatPeopleDAR&DCompetency3/981.4.5VF………………………………………………………………………………171.4.6JF………………………………………………………………………………17FastExecutorAcademy目录目录目录1.5堆栈和堆栈指针(SP)…………………………………………………………181.5.1堆栈………………………………………………………………………………18152堆栈指针(SP)181.5.2堆栈指针(SP)…………………………………………………………………181.5.3堆栈使用例………………………………………………………………………191.6机器周期…………………………………………………………………………2117工作模式221.7工作模式…………………………………………………………………………221.7.1单时钟模式………………………………………………………………………231.7.2双时钟模式………………………………………………………………………251.8复位动作…………………………………………………………………………281.8复位动作…………………………………………………………………………281.8.1外部复位输入……………………………………………………………………291.8.2地址陷阱(TRAP)复位………………………………………………………291.8.3看门狗定时器复位………………………………………………………………291.8.4系统时钟复位……………………………………………………………………291.9中断处理…………………………………………………………………………301.9.1允许条件…………………………………………………………………………311.9.2中断锁存…………………………………………………………………………321.9.3向量地址…………………………………………………………………………331.9.4优先顺序…………………………………………………………………………33GreatCompanyGreatPeopleDAR&DCompetency4/98FastExecutorAcademy目录目录目录1.10指令集……………………………………………………………………………341.10.1传送指令…………………………………………………………………………341102运算指令361.10.2运算指令…………………………………………………………………………361.10.3移位/循环移位指令………………………………………………………………361.10.4位操作指令………………………………………………………………………371.10.5分支指令…………………………………………………………………………371.11寻址方式…………………………………………………………………………392.外围电路…………………………………………………………………………402.1I/O端口…………………………………………………………………………41211输入/输出时访问地址不同的端口412.1.1输入/输出时访问地址不同的端口………………………………………………412.1.2输入、输出时访问相同地址的端口……………………………………………442.2定时器……………………………………………………………………………482.2.116位定时器计数器…………………………………………………………………492.2.28位定时器计数器…………………………………………………………………582.2.3看门狗定时器……………………………………………………………………672.3串行接口………………………………………………………………………72231同步串行接口(SIO)722.3.1同步串行接口(SIO)……………………………………………………………722.3.2异步串行接口(UART)……………………………………………………………792.4逐次比较型AD转换器……………………………………………………………912.5闪存……………………………………………………………………………98GreatCompanyGreatPeopleDAR&DCompetency5/98FastExecutorAcademy1CPU内核1.CPU内核1.CPU内核本章主要以TMP86FS49为例介绍TLCS-870/C的CPU内核。11存储器1.1存储器首先介绍TMP86FS49的存储器。TMP86FS49的存储空间为x0000~0xFFFF,分为SFR、RAM、DBR及ROM4个部分。GreatCompanyGreatPeopleDAR&DCompetency6/98图1.1存储器分配图FastExecutorAcademy1.CPU内核111SFR(000000003F)1.1.1SFR(0x0000~0x003F)SFR(特殊功能寄存器)地址范围为0x0000~0x003F,主要分配给控制端口、定时器等外设电路的寄存器或者设置许可/禁止中断的寄存器。例如可以设置端口控制寄存器输入输出的方向使用何种功能等例如,可以设置端口控制寄存器输入、输出的方向、使用何种功能等。1.1.2RAM(0x0040~0x083F)RAM的地址范围为0x0040~0x083F,可用作变量区域或堆栈区域。另外,还可以根据配置的地址分为直接区域(0x0040~0x00FF)和其它区域(0x0100~0x083F)。(1)直接区域的RAM(0x0040~0x00FF)()直接区域的由于对于此区域的RAM可以实现短代码、短时间的快速存取,因此如果将使用频率较高的变量分配给此区域的RAM,则可以使编制的程序更有效率。但是,由于存储容量较小,因此在配置多个变量时,应优先分配给存取速度要求较高的变量。但是由于存储容量较小因在配多个变量时应优先分配给存取速度要求较高的变量(2)非直接区域RAM(0x0100~0x083F)与直接区域RAM相比,代码较长,处理时间也更长一些。但是存储容量较大可以存储更多的变量堆栈等就是分配在这个部分的RAM但是存储容量较大,可以存储更多的变量。堆栈等就是分配在这个部分的RAM。1.1.3DBR(0x0F80~0x0FFF)GreatCompanyGreatPeopleDAR&DCompetency7/98DBR(数据缓冲寄存器)地址范围是0x0F80~0x0FFF。与SFR(特殊功能寄存器)相同,这些地址分配给各种外部设备的控制寄存器。FastExecutorAcademy1.CPU内核114ROM(010000FFFF)1.1.4ROM(0x1000~0xFFFF)ROM的地址范围是0x1000~0xFFFF。根据使用方法的不同,可分为两种。其中一种是保存程序或固定值的ROM(0x1000~0xFFAF),另外一种指定用途的ROM(0xFFB0~0xFFFF)。(1)ROM(0x10000xFFAF)(1)ROM(0x1000~0xFFAF)此地址区域配置有程序或固定值。(2)指定用途的ROM(0xFFB0~0xFFFF)(2)指定用途的ROM(0xFFB0~0xFFFF)此区域配置了2个中断向量表(0xFFB0~0xFFBF和0xFFE0~0xFFFF)以及1个向量调用指令所使用的向量表。(2)-1中断向量表(0xFFB0~0xFFBF)(2)1中断向量表(0xFFB00xFFBF)发生中断时,本区域可用作供参考的向量表。本区域每两个地址为1组,共分为8组,可按照中断的原因进行分类。本区域除了可用作中断向量表之外,不能用于其它用途。(2)-2向量调用指令所使用的向量表(0xFFC0~0xFFDF)此区域有供CALLV指令参照的向量表。一般来说,由于CALLV指令比通常的CALL命令程序尺寸要小得多,因此向量调用指令所使用的向量表通常被放置在需要经常调用的子程序等的先头地址。(2)-3中断向量表(0xFFE0~0xFFFF)与(2)-1相同,本区域也可以用作中断发生时的参考的向量表,主要分配给可屏蔽中断、非可屏蔽中断、复位等特殊的中断GreatCompanyGreatPeopleDAR&DCompetency8/98殊的中断。关于中断向量表的作用,请参考“1.9中断处理”。FastExecutorAcademy1.CPU内核1.2PC(程序计数器)PC(程序计数器)内保存有下一个指令的地址,是一个16位的计数器。PC独立于存储空间而存在。复位时程序计数器会复制复位向量(0xFFFE和0xFFFF)中保存的16位地址数据解除复位后将根据复制的复位时,程序计数器会复制复位向量(0xFFFE和0xFFFF)中保存的16位地址数据。解除复位后,将根据复制的存储地址执行指令。因此有必要将程序的开始地址设在0xFFFE和0xFFFF。虽然用户可以随意指定程序的昀初地址,但是一般来说该地址应该在ROM范围(0x1000~0xFFAF)之内。由于系列采用流水线处理预提取指令)方式执行指令因此当前执行指令的地址的后面第个地址由于TLCS-870/C系列采用流水线处理(预提取指令)方式执行指令,因此当前执行指令的地址的后面第二个地址将进入PC。图1.2程序计数器图1.2程序计数器GreatCompanyGreatPeopleDAR&DCompetency9/98FastExecutorAcademy1.CPU内核13通用寄存器1.3通用寄存器TLCS-870/CCPU中有8个8位通用寄存器以及2个16位通用寄存器。与PC相类似,通用寄存器也是独立于存储空间而存在的。图1.3通用寄存器图通用寄存器8位通用寄存器以A、W、C、B、E

1 / 657
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功