【ICG简介】
ICG(Initial ConfiG)初始化配置模块。
在芯片复位解除后,硬件电路会从FLASH的ICG区读取配置数据,将数据加载到ICG寄存器中,因此ICG寄存器复位后的初始值由用户在ICG区设定的值来决定。
用户可以通过对ICG进行擦除和编程来修改ICG寄存器。
ICG寄存器主要用于实现对SWDT的硬件启动配置、内部高速时钟HRC的频率配置、BOR阈值电压、NMI管脚中断等系统功能的配置,具体定义及配置值使用时请参考该系列的用户手册。
更多信息咨询请联系angel.qi:13827489351(微信与手机号码同步)
【应用说明】
下图为F460/F4A0两个系列MCU的ICG区在FLASH中的分布图示:
【注】在F4A0中,当FLASH引导交换有效且OTP不使能时,ICG区域位于FLASH的BANK1中的Sector0,否则ICG则存在于BANK0中的Sector0.
为方便用户对ICG区进行配置,在官方提供的驱动库示例中,在xxx_icg.c中,预留置了ICG的配置字宏MAP,如下图所示↓ ↓ ↓
用户使用时只需要根据实际应用需求配置ICG寄存器对应的宏即可,
参考下图 ↓ ↓ ↓
【应用注意事项】
1、值得注意的是,如果需要基于官方驱动库及样例做应用开发,请务必保留对xxx_icg.c的编译;
2、如需要自行搭建工程编写代码,也请务必参考该文件在应用中严格按照用户手册要求自行实现ICG区的配置;
3、在IAP应用中,因ICG区域为固定区域,在进行BOOT和APP开发时,请按需删除或保留ICG区,避免冲突;
4、实际应用中有效的配置数据并不一定使用到全部的ICG区域,未用到的区域为预留区,但用户仍必须确保预留区的数据为全“1”来保证芯片正常动作; |