HK32F030M是航顺一款入门级经济型32位MCU,使用ARM® Cortex®-M0内核,最高工作频率32 MHz,内置16 KByte Flash、448 Byte EEPROM和2 KByte SRAM。由于其超高的性价比,在工业、医疗、消费电子等行业得到广泛应用。
HK32F030M使用过程中如果设计有软件循环设计延时,有可能会出现延时不准确的现象。
原因是由于芯片设计时,在存储设备和MCU之间设计了4个word的高速buffer,存储慢的数据先把数据存放到buffer。通过buffer可以减少进程间通信需要等待的时间,在此期间MCU可以干其他的事情,但是当循环指令小于4个word(最大8条指令)时,有可能代码存放于高速buffer,造成循环代码的取指时间不固定。对于这种情况,请参考以下解决方案:
建议在DelayMs函数中,增加循环体中指令数量,让代码的取指不会命中高速buffer。
由于Nop的指令只有16bit,buffer是32位取指,所以为了一致性,建议加偶数个 nop。
修改前
修改后
关于航顺芯片
航顺芯片2013年成立于深圳,在成都和上海设立分公司和办事处,我们致力以“车规SoC+高端MCU超市双战略、让万物互联更智慧,智慧生活更美好”为使命,实现“HK32MCU为核心、打造航顺无边界生态平台级企业”的伟大愿景。
已量产数/模混合8寸130nm至12寸40nm七种工艺平台,ARM及RISC-V等十二大家族百余款工业/商业/车规级、通用/专用/定制化32位MCU。航顺HK32MCU分为经济型、主流型、低能耗型、高性能型、专用型和创新型,大批量应用于汽车、工业、家电、物联网等数千家客户。 航顺芯片共计完成八轮战略融资合计数亿元,连续获得胡润全球独角兽、深圳市科学技术二等奖、中国IC独角兽、国家级专精特新小巨人、国家级高新技术企业、深圳领袖企业100强、深创赛总决赛亚军等。与国内众多高校及ARM-KEIL/IAR/AEC/ISO26262等达成长期生态计划和战略合作,用工匠精神建立完善的航顺HK32MCU产品阵列和生态体系,已申请自主知识产权发明专利100件+并正在持续增长中。