描述比较概略,大致建议如下:
1、GPIO 和 UART正常运行,表示 IDE 工具链 下载和调试是正常的(目标开发板硬件也是正常的)
2、使用malloc后 ,程序进入handle_trap,应该是程序发生了异常
3、建议挂GDB进行调试,可能需要建立多个断点,逐步执行定位出现异常的点
4、是使用的MCU内部的sram,还是外部有挂别的存储器,一起进行了内存调度?
5、GD32VF103的sram,是32KB,起始地址是 0x2000 0000,在使用时注意申请大小和位置(支持字节、半字和整字访问,注意对齐!)
6、正确的申请了内存后,释放和回收内存是否精确执行了?