
前段时间 发现CubeMX 升级版本了,5 G' Y3 x+ S8 i8 f( ] 之前用旧版 (也是)4月份左右的版本,创建了一个配置工程, 然后就直接把CubeMX升级到了最新版, 用新版打开原来的CubeMx 配置文件*.ico,提示 将转换旧版工程到新版,点了确认,3 x/ G+ d% d. f# o. [ 用了几天 ,终于发现问题了, 将旧版转换成新版工程后, 在CubeMX中改变配置,比如改变一个定时器的配置,改变一个串口的配置,这些外设都是早前已经配置过的,& L/ ?# h) a' [, @ 然后点生成代码, 就发现生成的代码没有在main函数中添加初始化,比如下面选中的两个,还有 很多外设也没见初始化配置,比如 USB, CAN等$ Y- j! d+ u, e5 M! D# X 目前测试的解决办法是 需要先在外设配置中先禁止掉外设后,生成一次代码,然后再重新配置一次就出现了,如下图 u2 \7 ?% ?. f5 \1 [; z. ` 3 x( k% b' W" f( |' K& k ![]() ' ?; p$ n8 {7 F" R9 `5 J 这个情况 无法确定是在旧版软件就存在的还是 升级之后导致的, 但是 使用时还得注意 8 H9 s, Y2 H) N, j |
STM32片片,是用的哪个系列的哪一款?
HAL库是哪个版本的?
有没有旧版本的工程提供?
补充了以上4个说明后,你这个帖子才算是完整的。要不然,上来让人摸不着头脑。
软件版本不一样,芯片不一样,BUG不一样,比较奇怪。
评分
查看全部评分
以前使用3.0的标准库,然后CAN通讯测试的好好的。
后来换3.5的标准库,特么死活调不通,用原来的代码就行,复制到自己的工程中就不行。
分分钟暴走。
后来,我灵机一动,在原来3.0下的GPIO初始化配置的函数中,加入了一句:
GPIO_itd.GPIO_Speed=GPIO_Speed_50MHz;
然后所有的代码都运行成功了……WTF。
你看看会不会是这种类似的情况,供参考。
评分
查看全部评分