หน้าแรก ดูโปรเจกต์ทั้งหมด
Hard

โปรเจกต์ Arduino บน $4.9 RISC-V Board

Longan Nano พร้อม GD32V series MCU ราคาเพียง $4.9 คุณจะได้รับ Arduino board ที่มาพร้อม 128KB Flash, 32KB RAM, LCD และแม้กระทั่ง acrylic case

โปรเจกต์ Arduino บน $4.9 RISC-V Board

รายการอุปกรณ์และเครื่องมือ

1x Sipeed Longan Nano - RISC-V GD32VF103CBT6 Development Board
-
}

รายละเอียดและวิธีทำ

Longan Nano

Sipeed Longan Nano น่าจะเป็น Board พัฒนา RISC-V ที่ราคาประหยัดที่สุดที่มีจำหน่ายในปัจจุบัน ด้วยราคาเพียง $4.9 คุณจะได้รับ Flash 128KB, RAM 32KB, LCD ขนาด 160x80, ช่องเสียบ TF card และแม้แต่เคสอะคริลิกใส

Microcontroller ตระกูล GD32V

Chip หลักบน Board คือ Microcontroller ตระกูล GD32V จาก GigaDevice รุ่น GD32VF103CBT6 จากข้อมูลที่ให้ไว้โดย เว็บไซต์ RISC-V มันคือ SOC แบบ 32-bit พร้อมชุดคำสั่ง RV32IMAC และมี Core ที่ชื่อว่า "Bumblebee"

การรองรับ Arduino

Sipeed ได้จัดเตรียม board support พื้นฐานสำหรับ Longan Nano และ URL สำหรับ Board Manager ของ Arduino IDE คือ:

http://bigbits.oss-cn-qingdao.aliyuncs.com/Arduino_for_GD32V/package_longduino_index.json

ในปัจจุบัน URL นี้รองรับเฉพาะ Platform Windows สำหรับ macOS หรือ Linux ทางเลือกของ IDE อื่นคือ PlatformIO

ปัญหา

ตามที่ผมได้กล่าวไว้ข้างต้น ตัว board support package มีเพียงฟังก์ชันพื้นฐานเท่านั้น ไม่มี Library สำหรับ Serial, ไม่มี Library สำหรับ SPI,...

วิธีการแก้ไข

Library Arduino RT-Thread เข้ามาช่วยแก้ปัญหานี้ ซึ่งรองรับ Board Longan Nano ตั้งแต่ v0.8.1

RT-Thread เป็น RTOS แบบ open source อย่างไรก็ตาม ยังมีการเตรียม Driver และ Utility ต่างๆ ไว้ให้อีกด้วย

สำหรับ Longan Nano ในปัจจุบัน Library นี้มี Driver สำหรับ UART, SPI, TF card และ LCD ส่วน Utility ของมันส่วนใหญ่จะไม่ขึ้นกับ Hardware เช่น FatFS, tiny shell และอื่นๆ ดังนั้นด้วย Library เพียงตัวเดียวนี้ คุณอาจจะได้รับความสนุกอย่างมาก

แต่ยังมีอีกสิ่งหนึ่ง (Library) คือ RTT-GUI มันคือ Library สำหรับ GUI ที่ทำงานบน RT-Thread ซึ่งมี UI widgets, ตัวถอดรหัส BMP / JPEG, Font และอื่นๆ (ซึ่งปัญหาใหม่ในตอนนี้ก็คือการขาดแคลนพื้นที่หน่วยความจำ)

เปิดใช้งาน RT-Thread

สำหรับ Arduino IDE นั้น Library RT-Thread รองรับ Board Longan Nano โดยไม่ต้องตั้งค่าใดๆ เนื่องจาก Macro ที่ชื่อ BOARD_SIPEED_LONGAN_NANO ได้ถูกกำหนดไว้ใน board support package เรียบร้อยแล้ว

สำหรับ PlatformIO ต่อไปนี้คือตัวอย่างของไฟล์การตั้งค่า "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

เปิดใช้งาน RTT-GUI

เปิดใช้งานบรรทัดต่อไปนี้ใน "guiconfig.h" (คุณสมบัติบางอย่างอาจถูกปิดใช้งานในไฟล์นี้เพื่อประหยัดหน่วยความจำ)

#define CONFIG_GUI_DEVICE_NAME              "ST7735"   // RGB565
#define CONFIG_USING_RGB565 (1)

ขั้นตอนถัดไป

Code

🔒 ปลดล็อก Code

สนับสนุนเพื่อรับ Source Code หรือแอปพลิเคชันสำหรับโปรเจกต์นี้

รหัสอ้างอิงโปรเจกต์: arduino-on-49-risc-v-board-f1584c
1499 บาท
PromptPay QR Code