STM32
直播中

徐伟

8年用户 1002经验值
私信 关注
[问答]

stm32f030c8t6在if语句进行浮点运算,引起PB4,PB5引脚输出异常的原因?

小批量生产的产品出现如题的现象,之前是偶尔出现的,前段时间,增加了部分功能,程序增大了,就一直出现了。逐步追踪,定位在一条if语句上,把浮点运算修改为整型运算后解决问题,就是好奇问一下是不是单片机的bug,这个问题是可以复现的,可以私下提供工程文件

回帖(1)

张波

2024-3-29 14:40:00
应该不是单片机的bug,浮点运算应该是不会引起这个问题的。F4系列有硬件浮点,如果开启需要修改.S文件。030这个系列是软件浮点,理论是不会发升异常。
可以考虑是不是浮点运算是数据溢出后导致的问题。在线仿真,在进入if前,先查看GPIO寄存器和要判断的数据内容。运行if后,再看寄存器的状态。是不是有用指针的地方,看看指针指向的地址是不是和PB输出寄存器相同。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分