你好!欢迎来到 !
语言
当前位置: 首页>> HK32/航顺>> 关于应用航顺芯片HK32F030延时效率问题

关于应用航顺芯片HK32F030延时效率问题

关键字: 航顺芯片 HK32F030 延时效率问题 航顺代理 作者: 来源: 发布时间:2022-05-17 浏览:2
客户在应用程序中可能存在死等延时的处理函数(用for或者do…while)。 对比ST同样的函数HK的芯片出现延时比ST慢,是因为HK的芯片在cpu和flash之间有一个4个word大小(编号为00,04,08,0c)的指令缓存,工程编译之后,如果函数被存放到flash的地址的尾地址没有从0开始的话,(比如函数的入口地址为0x08000004,会被放到编号04的字中,而不是编号0中),就会出现执行效率低的问题。

如何避免这种问题呢?

我们在HK030/031/04A的应用笔记中有指导说明,今天在这里用一个例子详细说明修改方法:

比如用户使用uint32_tGItimer=1000000;voidDelayTimer(void){uint32_t i;for(i=0;i

修改如下:voidDelayTimer(void){ uint32_t i; FLASH->ACR&= ~(0x00000010); for(i=0;iACR |= 0x00000010; }这样修改后,就可以使调用函数延时指令执行效率与ST一样。因此用户在使用030/031/04A做开发时如果程序中存在这样死等待的延时函数,如果在时效上想与ST接近,建议采用这种方式修改。

如需要了解更多航顺MCU产品,请联系航顺核心代理商,颖特新科技,或者扫码联系我们!

航顺代理联系方式

在之前的介绍中,我们也为大家介绍了航顺代理:HK32F103进空闲中断的解决方法,也是目前我们主推的非常成熟的解决方案!

编辑:zzy 最后修改时间:2022-05-17

联系方式

0755-82591179

传真:0755-82591176

邮箱:vicky@yingtexin.net

地址:深圳市龙华区民治街道民治大道973万众润丰创业园A栋2楼A08

Copyright ? 2014-2023 All Rights Reserved.粤ICP备14043402号-4

Baidu
map