发现GD32VF103CBT6开发板例程的一个BUG

[复制链接]
1139|5
 楼主| LcwSwust 发表于 2021-1-9 20:48 | 显示全部楼层 |阅读模式
本帖最后由 LcwSwust 于 2021-1-10 09:35 编辑

前不久买了一块GD32VF103CBT6的开发板,这种:
傲游截图20210109202155.jpg
当时没注意单片机型号中有个V,通电一看,播放SD卡中的动画很流畅,
但似乎不能用KEIL开发,而不带V的可以用KEIL;
习惯了KEIL,所以买了GD32F103CBT6单片机换上,并将程序移植过去,
移植中就发现有时读第二个簇会出错,或者显示出的画面有杂点,
后来发现了BUG:
GD32VF103-RISC-V内核32位MCU资料和SDK\SDK\Longan_GD32VF_examples-master.zip
\Longan_GD32VF_examples-master\gd32v_lcd\src\fatfs\tf_card.c

rcvr_spi_multi里的do{...}while(btr--);循环导致实际读取比参数btr多一字节,将导致内存溢出.
        将其改为do{...}while(--btr);

现将KEIL4下的程序发出来,有兴趣的看看.
程序功能:
  需先在SD卡根目录中存放两个文件<**.bin> <bmp.bin>开机显示**.bin图像,
  然后显示bmp.bin中的多张图像,相当于播放视频,帧率约10fps (93ms).
  LCD像素:160*80,RGB565

GD32F103CBT6程序.rar (4.82 MB, 下载次数: 18) 放入SD卡根目录.rar (2.9 MB, 下载次数: 6)

近日还用VB写了个视频截图的程序,按一定帧率将视频画面截图转为RGB565数据并保存为BIN文件,
还有一点点没有完善,过几天再分享.
傲游截图20210109204721.jpg
xdqfc 发表于 2021-1-10 10:14 | 显示全部楼层
点赞一下。
发呆二极管 发表于 2021-1-10 21:29 | 显示全部楼层
观察细致
zhk_xbox 发表于 2021-1-12 11:33 | 显示全部楼层
V是 RISC V 系列的吧,这个系列就是不用KEIL写代码了
 楼主| LcwSwust 发表于 2021-1-12 20:51 | 显示全部楼层
imdx 发表于 2021-1-12 22:13 来自手机 | 显示全部楼层
Keil是ARM的,VF103是RISC-V是ARM的死敌,Keil当然不支持
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:good good study day day up

6

主题

1777

帖子

9

粉丝
快速回复 在线客服 返回列表 返回顶部