
助理工程师
 
- 积分
- 1036
- 在线时间
- 548 小时
- 精华
- 0
- 注册时间
- 2020-5-13
- 最后登录
- 2021-1-15
|
本帖最后由 LcwSwust 于 2021-1-10 09:35 编辑
前不久买了一块GD32VF103CBT6的开发板,这种:
当时没注意单片机型号中有个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卡根目录中存放两个文件<logo.bin> <bmp.bin>开机显示logo.bin图像,
然后显示bmp.bin中的多张图像,相当于播放视频,帧率约10fps (93ms).
LCD像素:160*80,RGB565
GD32F103CBT6程序.rar
(4.82 MB, 下载次数: 9)
|
|