你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
举报
查看全部评分
battery609 发表于 2018-7-30 15:27 还是我自己来回答吧,出问题的MCU为STM32L011,不支持内存非对齐访问,所以地址必须是4的整数倍,例程中有 ...
wwwheihei 发表于 2018-8-3 18:12 这个可以找到依据吗
STM32隐藏
5.18活动板子会不会是STM32L4呢
STM32 CUBE软件中找不到STM32L4系列单片机
Your UAT Feedback is needed within today.
应用
AAA
test
tiwen
BBBB
aaa
{
uint8_t i;
uint32_t temp;
IRDA_txbuffer[0]=serial;
IRDA_txbuffer[1]=size;
for(i=0;i<size;i++)
IRDA_txbuffer[i+2]=*(data+i);
temp=crc32((uint32_t*)IRDA_txbuffer,size+2);
*(uint32_t*)&IRDA_txbuffer[size+2] =temp;
}
你看看汇编那里不对。
或者
你可以使用memcpy函数试试。
评分
查看全部评分
还是我自己来回答吧,出问题的MCU为STM32L011,不支持内存非对齐访问,所以地址必须是4的整数倍,例程中有地址+2的操作,会直接导致死机。而F103支持非对齐访问,所以就很幸运。平时这个当做兴趣爱好来玩的,门外汉就是门外汉。去年做的小东西又拿出来完善,再次遇到这个问题,硬啃了两天,总算找到原因了。
add:103也不叫非对齐访问,只是支持半字长访问,正好+2满足条件,所以没有问题。
这个可以找到依据吗
在有关M0+内核的内存控制器中能找到相关的内存访问指令。使用memcpy不会出现问题是因为该函数考虑了对齐问题