对于在一些需要在mcu完全初始化之前需要始终保持某些引脚高或低状态的应用中,pad keeping 功能比较有用。从待机模式唤醒时,hse非安全启动将需要1.8ms,启动代码(从reset_handler到main)将需要4.3ms,clock_ip_init将需要830ms(代码优化级别-o0)。启用pad keeping功能时,可以确保io电压在这3个时间段内保持运行模式下的设置,直到禁用pad keeping 功能并在唤醒后复位端口。
有遇到如果引脚被外部电阻拉高,出现 wisr和 wisr64中会有设置错误的位的情况,这是因为pad keeping功能设置问题。
-> 用户在进入待机模式前需先使能 pad keeping 功能,在初始化 siul2_port_ip_init后再禁止pad keeping功能。
pad keeping使能的时候,pad的状态。
如果pad keeping功能是禁止的,在唤醒事件发生后,所有的 pad将进入复位模式。如果唤醒源引脚是外部上拉的,此时引脚会产生一个内部边沿,相关的wisr&wisr64位将会产生置位。
pad keeping禁止的时候,pad的状态。
ø在待机模式下,所有引脚保持在运行模式下设置的状态。复位后,所有引脚将进入默认状态。意味着唤醒和端口初始化(非安全启动(1.8ms), app 应用程序内核启动(4.3ms), main中时钟初始化 )这段时间, 引脚是不受控的。
ø当padkeeping 保持使能,可确保引脚保持唤醒时的状态,直到有用户解锁它。
在复位时和复位后,pad引脚的状态
siul2 控制 gpio口功能,它在功能复时会将gpio口设置为默认状态,确保每个 gpio口初始化到默认状态,可以查看用户手册 iomux中的gpio口默认状态。
备注1: 在进入待机模式前,无论 pad keeping使能还是没使能,gpio 将总是保持进入待机模式前的状态设置。pad keeping用于在mcu reset时和从复位释放到pad软件重新初始化时,保持 pad状态不变。
(写 dcm_gpr->dcmrwf1[standby_io_config] = 1)。
备注2: 在进入待机模式前,使能 pad keeping(写 dcm_gpr->dcmrwf1[standby_io_config] = 0。默认寄存器的数值,无论siul2 的 pke设置还是没设置),但是唤醒后没有禁止,siul2 模块不能再次初始化。这是因为芯片设计默认启用了此 pad keeping 功能。当mcu需要进入待机模式和唤醒时,如果不需要 pad 保持功能,需要在任何地方写1到这个位来禁止 pad keeping 功能。
在禁止padkeeping后,wisr&wisr_64 将置位上拉引脚的标志,在禁止 pad keeping前显示正确的唤醒源。
wisr&wisr_64 将一直保留正确的唤醒源,如下打印所示。
备注:rtd2.0.0中,pad keeping禁止功能被集成到 power_ip_init函数中,当在函数siul2_port_ip_init前调用它时,就需要注意这点。
MIPI-I3C总线接口简述
基于器ATmegal68微控制器和A/D转换方式实现可靠键盘接口的设计
瓷微科技提供ZigBee全方位整合方案
国星光电营收14.9亿,同比下降19.75%
波特图仪的SPICE陷阱
S32K344的Pad Keeping功能
为什么PCB线路板要把过孔堵上?
Razer Phone 2黑五促销 8GB+64GB版到手价约2100元
魅族pro7什么时候上市?魅族pro7最新消息:黄章携魅族PRO7重出江湖,双摄加背部电子墨水屏,售价2799元
英飞凌XENSIV系列高无磁芯电流传感器产品简介
Linux网络子系统的实现
碳化硅功率模块的建模和验证
引领人工智能电视发展 长虹声纹识别技术为电视注入“情商”
IGBT的工作原理及基本特性
电容分类和特性参数
【NuMaker-M2354试用】microSD实验
全方位解读移动物联网布局的四个层次建设
ChatGPT实现原理
浅谈PCB尺寸涨缩原因及工序
功率半导体器件简介2