CH32V203C8T6代码不执行或者瞎执行,在CH32V307上也碰上了同样的问题

在移植STM32工程到CH32V203C8T6时,在STM32上能完美运行的代码到沁恒就出问题,而且问题很离谱。比如将OLED_ShowAnyStr(0,3,"功率:          W");这个显示函数中的字符串改成"功率:          S"之后再运行之后就会触发HardFault_Handler,全程仅仅只改变了一个字符串的字符。即使是改变之前,运行结果也和预期不符(确定代码在这个地方没有BUG)。此外,在使用CH32V307进行开发时,也遇到了问题:代码不执行。仅仅只是初始化一个PWM输出,初始化程序打包放在函数中再调用就不执行(其他代码全部注释掉了,只保留了这个初始化函数),然而将初始化程序直接放在main函数的while循环之前就可以执行,全程没加任何条件判断,离谱的是,之前一直没问题,是某一天改动了其他部分的程序之后才出现这个问题的(绝对没有动关于PWM输出部分的代码)

先用例程测试看看,然后在例程里面移植,


就是在例程里移植的UVA(S$5Y``1(1D{NL3GA{06.png


您好,若方便可将可复现问题工程发我看一下,注意程序中全局变量要加volatile防止被优化,此外注意一下工程的优化等级。关于OLED驱屏,这边有相应例程,若需要可发你看一下,后续问题可通过邮箱(lzs@wch.cn)沟通。


只有登录才能回复,可以选择微信账号登录