KEA128
IO口寄存器

PDOR:数据输出寄存器;PDIR:数据输入寄存器;PDDR:数据方向寄存器;PIDR:输入禁用寄存器。个中,PIDR输入禁用寄存器比较分外。如果要配置输入口,除了配置PDDR数据方向寄存器外,还要使能PIDR输入禁用寄存器。这是一种安全设计,保护IO口,可以主动避免单片机烧IO口。

可以关闭RESET功能
芯片有IO口复用了reset的功能,这个功能是可以通过软件配置关闭的。特殊是在汽车电子的设计中,基于安全考虑,是不许可芯片IO口具备reset功能的。由于,芯片如何受到外部电子滋扰,可能会触发这个reset功能,从而导致电子模块事情非常。
SIM_SOPT0写入的时候须要把稳:RSTPE 和NMIE 在每次复位时只能写入一次。
重启上电没有功能
重启上电后,触发中断陷阱。比如,我有一次在调试的过程中,没有将未利用的捕捉口(CCP)没有关掉,当单片机外部产生电平跳变,程序进入中断中,没有退出。
看门狗
看门狗须要解锁才能配置,不前辈行解锁直接配置是无效的,配置方法:
WDOG_CNT = 0x20C5; // write the 1st unlock word
WDOG_CNT = 0x28D9; // write the 2nd unlock word
喂狗,须要关中断,如果不关中断,会造成喂狗失落败。喂狗方法:
__DI();
WDOG_CNT = 0x02A6;
WDOG_CNT = 0x80B4;
__EI();
PWM输出
配置创造没有PWM输出,剖析创造,与占空比干系参数FTM0_C0V配置不堪利有关。写FTM0_C0V是有条件的:从MOD 变动为CNTIN 之后更新才会有效。
HardFault_Handler
HardFault_Handler,是所有未定义中断函数的入口地址。如果创造程序掉到HardFault_Handler里了,可以检测一下,是不是触发了某些未定义的中断。
debug故障
问题1、不进系统时钟中断
缘故原由:没有精确选择硬件仿真,而是选择了软件仿照仿真。
问题2、不进仿真
缘故原由:use flash loader未勾选,程序没有下载到目标板里去。
内外部基定时钟切换
芯片上电默认利用内部基定时钟,须要利用外部基定时钟时,先要知足OSC初始化完成,才能切换成功。OSC初始化完成检测:
while ((OSC_CR & OSC_CR_OSCINIT_MASK) == 0); // wait until oscillator is ready
端口复用
1、当KBI唤醒与CCP端口复用时,会导致芯片不能被唤醒,也便是KBI唤醒功能失落效,就算关CCP使能也无效。可以采取引脚映射切换规避改这个问题,相称于直接把CCP功能给切掉了。
2、设置端口输出,没旗子暗记输出。检讨创造,这个端口复用了AD功能。







