Sipeed Longan Nano could be the most inexpensive RISC-V development board currently available. With only $4.9, you will get 128KB Flash, 32KB RAM, 160x80 LCD, TF card slot and even an acrylic transparent case.
GD32V Series MicrocontrollerThe main chip on the board is a GigaDevice GD32V Series microcontroller, GD32VF103CBT6. From the information provided by RISC-V website, it is a 32-bit SOC with RV32IMAC instruction set and its core named "Bumblebee".
Arduino SupportSipeed provides the basic board support for Longan Nano and the board manager URL for Arduino IDE is:
http://bigbits.oss-cn-qingdao.aliyuncs.com/Arduino_for_GD32V/package_longduino_index.json
Currently, the URL supports only Windows platform. For macOS or Linux, the alternative IDE is PlatformIO.
The ProblemAs I mentioned above, the board support package provides only the basic functions. There is no Serial library, no SPI library,...
The SolutionArduino RT-Thread library comes to the rescue, which supports Longan Nano board from v0.8.1.
RT-Thread is an open source RTOS, however also provides various drivers and utilities.
For Longan Nano, the library currently provides UART, SPI, TF card and LCD drivers. Its utilities are mostly hardware independent, e.g. FatFS, tiny shell and etc. So with the single library, you may have a lot of fun.
But there is one more thing (library), RTT-GUI. It is a GUI library based on RT-Thread, which provides some UI widgets, BMP / JPEG decoder, fonts and more. (The new problem now will be lack of memory space.)
Enable RT-Thread
For Arduino IDE, RT-Thread library supports Longan Nano board without any configuration, as the macro, BOARD_SIPEED_LONGAN_NANO
, is defined in the board support package.
For PlatformIO, following is an example of the configuration file, "platformio.ini
".
[env:sipeed-longan-nano]
platform = gd32v
framework = arduino
board = sipeed-longan-nano
debug_tool = sipeed-rv-debugger
lib_deps = RT-Thread, RTT-GUI
build_flags = -D BOARD_SIPEED_LONGAN_NANO
monitor_port = /dev/ttyUSB1
monitor_speed = 115200
Enable RTT-GUI
Enablethefollowinglinesin "guiconfig.h
". (Some features may be disabled in this file to save memory.)
#define CONFIG_GUI_DEVICE_NAME "ST7735" // RGB565
#define CONFIG_USING_RGB565 (1)
Next Steps
Comments
Please log in or sign up to comment.