GD32VW553 使用体验分享
外观
首先打开包装立马就能感受到体积确实比同类型的ESP32C3的体积要小巧很多, 很薄面积也小一点, 但是没有一个开发板最基础的点灯操作所需要的灯,所以如果需要测试的话,只能先用其他的外设测试一下了
丝印上来说, 丝印字体偏小, 很多挤在一起导致不是很好看清楚, 甚至还有丝印相互覆盖的情况, 这个我觉得对于一个开发板来说有点舍本逐末了.
板子上的所有引脚都是 没有丝印的! 没有丝印! 没有丝印! 我想不通官方为什么要这么做, 板子背面的空间十分充足, 上个丝印应该不是特别困难的事情.
外设情况
没啥好说的, 板子上只有如下几个可用于交互的外设:
- 电源灯
- Reset按键
- BOOT选择切换(非常难用)
- Type-C电源接口
- 没有丝印的引脚
上面的外设功能都是设定好的,无法被用户程序使用, 没啥拓展性, 如果要用这个进行开发验证的话需要自己画一个拓展底板, 增加自己的外设, 或者简单点上面包板也不是不行, 简单验证下还是可以的.
有一点需要吐槽一下, 既然官方都已经用上了Type-C接口了, 为啥不能上个能够传输数据的Type-C呢, 后面再加一个CH340, 弄个自动下载电路也可以啊. 现在板子上的Flash位置呢么空旷, 并且下载的时候还需要自己跳线确实会有一些劝退新手了. 这个部分可以参考同类型的ESP32-C3啊, 他们的板子还只卖9.9, 这两个板子的功能还是重合的, 他的板子就很完善, 新手拿上板子, 不用焊接就可以快速的测试板子的功能是否正常, 但是你们的板子如果不进行焊接的话是没有办法进行测试的, 如果后期你真的拿出来卖的话, 我估计售后有的头疼的.
但我还是建议官方多一些常用的外设, 比如 USER_LED, USER_BTN, TTL电路, 自动下载等, 丝印再清楚一点会更加友好,而不是一味的追求体积小巧而放弃了用户体验.
另外板子支持JTAG/SWD, 但是居然有两个引脚需要自己从测试点上引出来, 这个就让人很难受了, 希望官方速速改进这个, 把这两个脚引出来, 然后在板子上单独找个地方放上JTAG/SWD引脚, 并且用清楚的丝印标出来, 能够很大程度上增加用户体验啊.
编译程序
编译程序方面, 我本人用Linux比较多, 但是我发现GD32 Embedded Builder不支持Linux, 另外我将示例工程中的SEGGER 的project导入到Embedded Studio IDE中, 无法直接编译, 因为工程里面调用了一些Windows中的bat脚本做一些编译前后的处理工作, 所以我觉得这方面, 官方还是有待加强.
使用Windows版本的GD32 Embedded Builder还是可以很快速的编译出一个最基础的入门工程的, 基本操作这些其他体验者也有发过很多了,大家可以去看看其他人分享的经验,我这里就不重复赘述了.
为了能够继续在Linux上使用, 我借助官方的Example工程目录结构以及现有的一些基础库文件, 写了一个理论上能够跨平台编译的 CMakeList , 如果你也同样经常使用命令行的方式去进行编译, 但是又不想花费太多时间在搞编译环境上, 你可以先拿我的环境过去试试, 我会把整个工程放在末尾的分享链接中.
有一点需要注意的是 Nuclei 似乎没有编译Riscv32的Linux编译器, 所以我这里直接使用GNU的RISCV编译器.
RISCV GNU Compiler
这里快速介绍一下如何在 Fedora 上安装RISCV编译器吧
- 克隆官方的仓库:
git clone https://github.com/riscv/riscv-gnu-toolchain
2. 安装不同系统所需要的依赖:
Ubuntu:
sudo apt-get install autoconf automake autotools-dev curl python3 python3-pip python3-tomli libmpc-dev libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo gperf libtool patchutils bc zlib1g-dev libexpat-dev ninja-build git cmake libglib2.0-dev libslirp-dev
Fedora/CentOS/RHEL OS:
sudo yum install autoconf automake python3 libmpc-devel mpfr-devel gmp-devel gawk bison flex texinfo patchutils gcc gcc-c++ zlib-devel expat-devel libslirp-devel
Arch:
sudo pacman -Syu curl python3 libmpc mpfr gmp base-devel texinfo gperf patchutils bc zlib expat libslirp
3. 设置安装目录:
./configure --prefix=/opt/riscv --with-arch=rv32gc --with-abi=ilp32d # 这里我们设置将Riscv安装到/opt目录下
4. 开始编译
sudo make linux -j # 这里加sudo是为了避免你设置的目录在普通用户下没有权限,如果你能够确保是有权限的,可以不用加sudo
5. 等待... 这里很长时间....
6. 验证一下
$ riscv32-unknown-esl-gcc -v
Compile Startup example Code
首先进入到我们的工程目录下, 然后运行如下命令即可完成编译. 由于我目前无法编译出ilp32的gcc, 只能编译出ilp32d的gcc, 但是官方给的工程中使用的都是ilp32, 所以我的工程目前不能运行, 暂时不清楚是不是这个问题, 有大神可以帮着解决一下
mkdir build
cd build
cmake ..
make
All done.
烧录
官方的Boot切换确实不太好使, 搞得我怀疑人生了都要, 然后偶然发现有大神已经分享过了如何解决上述问题了, 我这里也重新说一下吧:
使用杜邦线短接PC8和VIN, 按住RST按键的同时插上USB接口, 松掉RST, 这个时候你会发现connect就可以顺利连接上了
多提一嘴, 下载时大家可以把图中圈起来的选项勾上, 这样可以在下载完直接运行你的程序, 而不需要断开杜邦线, 等会重新烧录的时候只需要按住RST, 重新插上USB就可以了.
B站视频链接分享
https://www.bilibili.com/video/BV1q5hzzNEnZ/
Cmake工程分享链接(暂时无法运行)
通过网盘分享的文件:GD32VW553_Startup.zip 链接: https://pan.baidu.com/s/149FLq0a0MZbQrSECbu8l8A 提取码: j5na 复制这段内容后打开百度网盘手机App,操作更方便哦

