关于CH32v307RC移植的问题

使用ch32v307移植了一个键盘的程序。


出现的情况是我只有在刚烧录完固件时程序可以正常运行,一旦拔出设备(设备断电)就无法正常运行。想请问一下这种情况可能是因为硬件还是软件导致的

您好,若是我们307做键盘设备,断电后无法正常运行,可以从以下几个方法检查一下:

1、检查一下设备断电后MCU的供电电压是否在正常的工作供电电压范围内;

2、若使用外部晶振,可检查一下设备断电后晶振是否还正常起振,若使用内部晶振,可通过MCO引脚测试一下系统此时主频是否正常;

3、注意使用USBD时,系统主频建议配置在48MHz\96MHz\144MHz,此外若使用外部晶振注意程序中HSE的值要和外部晶振的大小匹配;

4、可在HardFault中加打印看一下程序是否进入了HardFault,若进了HardFault,可加打印打印一下macuse、mtval、mepc几个寄存器的值看一下;

此外,可具体和我描述一下你的问题,比如拔出设备后MCU的供电如何供电,该问题是否是百分百复现,若方便可将你的固件或代码发我测试一下,后续的沟通可通过邮箱(lzs@wch.cn)和我继续沟通。


代码部分涉及到了flash的读写,问题不是百分百复现,概率出现。初步怀疑是断电后代码跑飞导致的,我昨天夜里使用wch-link在程序无法正常运行时读到的代码并不完整。

正常运行时读取

yes.png

运行异常时读取

1693988110205372.png

我已经将最新编译的固件发送给您。感谢您的帮助


您好,已邮件回复你,后续沟通可继续通过邮箱沟通。


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