背景
AT32的SRAM可以设置为16KB/32KB/64KB的不同大小,设置SRAM大小将导致Flash的部分空间的读写速度减缓,如下图:
这个问题看似不是很大,但是当运行一些很保证实时性,速度性的代码时,就会产生一些问题。
比如,电机曲线频率切换的时间变长。
解决
将必要的实时性高的代码,通过链接器链接到固定的Flash区域去。
keil下的解决方法如下:
分一块合适的Flash空间
编辑链接器:
将实时性高的代码放入其中:
注:以上.o文件参考,当前代码编译出的map文件的image component sizes位置查看。