RV32M1_VEGA开发板是一款多核异构的RISC-V 32开发板,包含了两个RISC-V 32位核心,同时也包括了BLE外设。
| 硬件 | 描述 | | -- | -- | |芯片型号| RV32M1 | |CPU| RV32IMC, with extensons for post-incrementing load and stores, | | | multiply-accumulate extensions, ALU extensions, hardware loops. | | | RV32IEMC | |主频| 48MHz或72MHz | | | 48MHz或72MHz | |片内SRAM| 256kB + 128kB | |片内Flash| 1MB + 256kB |
当前测试的工具链是以标准的GNU GCC 7.2.0 & newlib 2.5.0方式,并以标准的RV32IMC构架进行编译,所以RV32M1的扩展指令未支持,RT-Thread ENV版本是1.0。
Windows上编译推荐使用env工具,可以在console下进入到bsp/rv32m1_vega/ri5cy
目录中,运行以下命令:
scons
来编译这个板级支持包。如果编译正确无误,会产生rtthread.elf、rtthread.bin文件。其中rtthread.bin需要烧写到设备中进行运行。
请使用JLink接入到RV32M1_VEGA开发板的RISC-V核的JTAG接口上,同时把JLink在PC上的驱动更改为WinUSB模式。JTAG接口位于RV32M1芯片和天线座子旁边,小的20pin JTAG接口。
使用USB线连接到标记了SDA的USB口上,在PC上会出现一个串口设备,可以使用115200-N-8-1的配置方式打开这个串口。设备使用的串口引脚是:[PTC7/PTC8]
当正确编译产生出rtthread.bin映像文件后,可以使用gdb连接到openocd,并以load
命令烧写到flash中。
关于更多使用JTAG,使用gdb调试RV32M1_VEGA开发板的情况,建议参考开发板的开发环境搭建的文档。
如果编译 & 烧写无误,当按SW1
复位按钮复位设备后,会在串口上看到RT-Thread的启动logo信息:
\ | /
- RT - Thread Operating System
/ | \ 4.0.0 build Dec 5 2018
2006 - 2018 Copyright by rt-thread team
File System initialized!
Hello RT-Thread!
msh />
驱动 | 支持情况 | 备注 |
---|---|---|
UART | 支持 | UART0, RX(PTC7), TX(PTC8) |
支持 | UART1, RX(PTA25), TX(PTA26) | |
clock | 支持 | |
GPIO | 支持(列表可能不完善,同时也需要按照使用到的IO调整pinmux、clock) | |
MMC/SD | 支持 |
| IO号 | 板级代码中的定义 | | -- | -- | | PTA22 | LED_BLUE | | PTA23 | LED_GREEN | | PTA24 | LED_RED | | PTA24 | LED_STS | | PTA25 | UART1_RX | | PTA26 | UART1_TX | | PTE8 | BTN_SW3 | | PTE9 | BTN_SW4 | | PTE12 | BTN_SW5 | | PTA0 | BTN_SW2/BTN_NMI |