基于KF32A156 - MCU Bug list

前言:

       KF32A片子玩了几个月,目前即将进入尾声,写下此文记录一下玩KF32A时遇到过的问题及解决方案。
        先介绍一下我所使用的MCU和环境吧,芯片型号是KF32A156,是芯旺微推出的新国产片子,最近国产化风盛行,我也追一波时髦哈哈,IDE的环境是芯旺微公司开发的 KungFu32 IDE  V1.0.19.2,这里吐槽一波这个IDE,不得不说国产IDE做的比起KEIL、IAR这些资深玩家还是有很大差距的。
    一、既然谈到IDE了那么首先,我就先从环境入手,描述一下我所遇到的问题(也许是因为我太菜,大佬勿喷):
    1.ChipOn可以下载但无法正常进入debug
    >解决方案:(排名无先后,不行都试一遍)
        1、把IDE环境升级到最新版本 KungFu32 IDE  V1.0.19.2;
    2、进入debug前去除外部供电,仅用仿真器供电,成功进入后再开启外部供电;
    3、编译选择debug编译而不是release;
    4、IDE有两种mode: 一种是调试 一种是烧录 不能用debug模式去烧录;
    5、仿真器的USB直接连接电脑端口,不用转接器;

    2.ChipOn进入debug后程序不能运行
    >解决方案:(排名无先后,不行都试一遍)
    1、重启电脑;(这也是FAE给的答复中最多的方案)
    2、卸载IDE程序安装;
    这个问题有段时间一直遇到,弄的开发效率极低,后面不知道为什么IDE自己就修复了;
    3.IDE出现串口信息错误并点击自动刷新编程设备无法找到编程调试器设备
    >解决方案:关闭外部电源(板子有电池拔出电池),断开仿真器与上位机的连接线,等待10秒钟重试;

        关于IDE的就先列三条,但实际使用过程中遇到的小问题无数,就不一一列举了,给大家分享一个很有意思的问题,虽然这个问题至今还未找到应对措施,在IDE正常debug调试中,人从椅子上站起来,IDE就有概率出现芯片无应答或串口信息获取错误,然后从debug中强制退出。这个问题比较邪门至今无解,导致我在需要长时间debug时要小心翼翼不能太大动作站起怕引起它的注意。
    
    二、在本文的第二部分,我将描述CAN部分(CANFD6/CANFD7)的问题:
    1、CAN发送/接收中出现发送/接收失败的情况
    >解决方案:CAN邮箱配置不够,多配置一些发送/接收邮箱;芯片可配置接收/发送邮箱总数为50;
    2、提升CAN的优先级配置;

    三、升级部分问题:
       程序分为Bootloader和APP两部分,分别放置在0地址上和8000地址上,正常启动程序由BootLoader跳转到APP,并在APP中正常运行,当上位机通过UART给MCU发送升级指令时,APP程序进入升级部分,赋值BKP_DATA0表示从APP跳转过来,跳转到0地址时检测BKP_DATA0值开始升级,升级完成后重新跳转回APP并正常运行。
    1.APP跳转Bootloader不能成功跳转
    >解决方案:
    1、舍弃原有的重置复位向量地址跳转方案,改用asm("RESET");进行复位,但使用asm("RESET");进行复位无法保留住IO的状态;
    2、APP中关闭看门狗,升级成功后在APP初始化中再次开启;

猜你喜欢

转载自blog.csdn.net/ccwaff/article/details/127683736