M16C/64A简介
培训内容
M16C/64A特点和配置规格
M16C/64A内核:存储器和SFR
中断
时钟和功率控制
定时器
看门狗,电压检测,AD
需要阅读的资料
特点
M16C/60 内核,高功能指令和高指令效率
具备1M 字节的地址空间(可扩展到4M)
快速执行指令,有乘法器
功耗小,能通过运行模式进行功率控制
内置定时器、串行接口等各种外围功能。
配置规格
CPU:
M16C/60内核
基本指令数:91
最短指令执行时间:40.0ns(25MHz)
ROM,RAM(R5F364AE)
ROM:256+16K
FLASH:4K×2
RAM:20K
配置规格
电压检测:上电复位,电压检测:3处
时钟:4个电路
主时钟、副时钟、低速内部振荡器
(125kHz)、PLL 频率合成器
振荡停止检测:主时钟振荡停止/再振荡的检测功能
分频电路:可选择1,2,4,8 和16 分频
低功耗结构:等待模式、停止模式
有实时时钟
配置规格
I/O端口:
CMOS输入/输出:85 个(可设定上拉电阻)
N沟道漏极开路端口:3 个
中断:
中断向量数:70 个
外部中断输入:13 个(NMI、INT×8、键输入×4)
中断优先级:7 级
看门狗:15 位,可选择复位开始功能。
配置规格
定时器:
定时器A:16 位定时器×5 个
定时器B:16 位定时器×6 个
用于三相马达控制的定时器功能
实时定时器时钟
PWM 功能:8 位×2个
遥控器信号接收功能
配置规格
串行接口
时钟同步/异步兼用×6 个通道
时钟同步专用×2个通道
多主控I2C-bus接口1 个通道
A/D转换器:10 位分辨率×26个通道、有采样& 保持、转换时间1.72μs
D/A转换器8 位分辨率×2个通道
DMA:4个通道、周期挪用方式
M16C/60内核
存储器分配
SFR:外围功能控制寄存器。
内部RAM:保存数据,子程序调用和中断时的堆栈。
数据闪存:保存数据,但是也能保存程序
程序ROM1,程序ROM2 :存放程序
专用页向量表:由JMPS或JSRS指令使用
中断的固定向量表
中断的可变向量表:从INTB寄存器设定的起始地址开始的256 字节的区域。
存储器分配。
存储器分配。
存储器分配
能存取的区域因处理器模式和各控制位的状态而不同
在单芯片模式中,能存取SFR、内部RAM 和内部ROM。
三相表使用单芯片模式
SFR
SFR:外围功能控制寄存器
映射到CPU存储空间
读写SFR并没有对存储区进行操作
读取SFR是获取外围功能的数据或状态
写入SFR是发送了数据或控制了外围功能
SFR内部的数据可由外围功能改变
程序连续读取时,得到的数据不一致
使用volatile定义操作变量防止优化(工程自动生成与SFR对应的变量,通过编译器扩展实现)
保护寄存器
程序失控时使重要的寄存器不被轻易改写
保护时钟,系统相关和PD9寄存器
PRC0,PRC1,PRC3,PRC6:
对应位先写1,操作相应的寄存器,对应位再写0
PRC2
对应位先写1,操作相应的寄存器(对应位自动变为0)
两步操作中间不能发生中断或DMA操作
中断
abc
中断分类
中断源:引起中断的原因,或者能够发出中断请
求信号的来源
可屏蔽中断:能通过中断允许标志(I 标志)
控制中断的允许(禁止)或者能通过中断优
先级改变中断优先权
非屏蔽中断:不能通过中断允许标志(I 标
志)控制中断的允许(禁止)并且不能通过
中断优先级改变中断优先权
中断分类
软件中断:通过执行指令产生软件中断,软件中断是非屏蔽中断
硬件中断:分为特殊中断和外围I/O中断
特殊中断是非屏蔽中断
(复位,NMI中断,DBC中断,看门狗定
时器中断,单步中断,地址匹配中断)
外围I/O中断是可屏蔽中断
由内置的外围功能产生的中断
中断向量表
中断向量表:存放中断服务程序的入口地址或跳转到中断服务程序的入口地址
固定中断向量表:固定地址的向量表
可变中断向量表:能改变地址的向量表
固定向量表
从FFE00地址到FFFDB地址配置为专用页向量表
从FFFDC地址到FFFFF地址配置为中断向量表的一部分
专用页向量表中1个向量表由2个字节构成。在各向量表中设定子程序的起始地址的低16位。并且,每个向量表都有专用页号(18~255),在JSRS 及JMPS指令中,使用此专用页号。
中断向量表对于1个向量表由4字节构成。在各向量表中设定中断程序的起始地址