กลับไปหน้ารวมไฟล์
arduino-on-49-risc-v-board-f1584c.md

Arduino บนบอร์ด RISC-V ราคา $4.9

ภาพรวมโปรเจกต์

โปรเจกต์ "Arduino on RISC-V" สำรวจความก้าวหน้าล่าสุดของฮาร์ดแวร์โอเพนซอร์สโดยการพอร์ตระบบนิเวศของ Arduino ไปยัง Sipeed Longan Nano Longan Nano มีราคาที่ต่ำมากเพียง $4.9 ขับเคลื่อนโดย GigaDevice GD32VF103CBT6 ซึ่งเป็นไมโครคอนโทรลเลอร์ RISC-V แบบ 32-บิต โปรเจกต์นี้มีความสำคัญเนื่องจากเป็นการก้าวข้ามสถาปัตยกรรม AVR และ ARM แบบดั้งเดิม ทำให้นักพัฒนาสามารถใช้ชุดคำสั่ง RV32IMAC ในขณะที่ยังคงรักษากระบวนการทำงานของ Arduino ที่คุ้นเคยไว้ได้ ครอบคลุมการทำงานร่วมกับ RTOS (Real-Time Operating Systems) และการสร้าง GUI ประสิทธิภาพสูงบน LCD สีขนาด 160x80 ที่มาพร้อมกับบอร์ด

Longan Nano

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

ไมโครคอนโทรลเลอร์ GD32V Series

ชิปหลักบนบอร์ดคือไมโครคอนโทรลเลอร์ GigaDevice GD32V Series, รุ่น GD32VF103CBT6 จากข้อมูลที่ RISC-V website ให้มา เป็น SOC แบบ 32-บิต ที่มีชุดคำสั่ง RV32IMAC และคอร์ของมันชื่อ "Bumblebee"

สถาปัตยกรรมทางเทคนิคและการรวม RTOS

  • Bumblebee Core (RV32IMAC): แตกต่างจากบอร์ด Arduino มาตรฐาน MCU นี้ใช้สถาปัตยกรรม RISC-V ทำงานที่ 108MHz ซึ่งเร็วกว่า Arduino UNO (16MHz) อย่างมาก ส่วนต่อท้าย "IMAC" แสดงถึงการรองรับคำสั่ง Integer, Multiply, Atomic และ Compressed ซึ่งช่วยให้สามารถสร้างโค้ดที่มีความหนาแน่นสูงและทำงานได้อย่างมีประสิทธิภาพ
  • การรวม RT-Thread RTOS: เพื่อเชื่อมช่องว่างระหว่างฮาร์ดแวร์ RISC-V แบบ bare-metal และ Arduino API โปรเจกต์นี้ใช้ RT-Thread RT-Thread มี Hardware Abstraction Layer (HAL) ที่แข็งแกร่งสำหรับ UART, SPI และ LCD ขณะเดียวกันก็มีฟีเจอร์ขั้นสูง เช่น scheduler ที่รองรับ thread และ tiny shell (FinSH) สำหรับการดีบักแบบเรียลไทม์
  • การจัดการหน่วยความจำ: ด้วย Flash ขนาด 128KB และ SRAM ขนาด 32KB, Longan Nano มีพื้นที่หน่วยความจำมากกว่า ATmega328P อย่างไรก็ตาม การรัน GUI และ RTOS แบบเต็มรูปแบบต้องอาศัยการจัดสรรหน่วยความจำอย่างระมัดระวัง โปรเจกต์นี้ใช้ RTT-GUI ซึ่งใช้ BMP/JPEG decoders ที่ปรับแต่งมาอย่างดีเพื่อแสดงผลภาพบน LCD ที่ใช้ ST7735 โดยไม่ทำให้ SRAM หมดไป
  • เวิร์กโฟลว์ของ PlatformIO: แม้ว่า Arduino IDE จะรองรับบน Windows แต่นักพัฒนามืออาชีพมักใช้ PlatformIO เนื่องจากมีความสามารถในการจัดการไลบรารีและการดีบักที่เหนือกว่า การตั้งค่ารวมถึงการกำหนด BOARD_SIPEED_LONGAN_NANO เพื่อให้แน่ใจว่า macros เฉพาะฮาร์ดแวร์ที่ถูกต้องจะถูกเปิดใช้งานระหว่างการคอมไพล์

คุณสมบัติทางวิศวกรรมและฮาร์ดแวร์

  • การเชื่อมต่อจอแสดงผล: LCD ขนาด 0.96 นิ้วที่มาพร้อมกับบอร์ดเชื่อมต่อผ่าน high-speed SPI การนำไดรเวอร์ LCD มาใช้ภายในเฟรมเวิร์ก RT-Thread ช่วยให้สามารถอัปเดตหน้าจอแบบ non-blocking ซึ่งเป็นสิ่งสำคัญสำหรับการรักษาการตอบสนองของระบบ
  • การขยายและพื้นที่เก็บข้อมูล: ช่องเสียบ TF (MicroSD) card บนบอร์ดเชื่อมต่อผ่าน SPI ในบริบทของ RTOS สิ่งนี้ช่วยให้สามารถรวมไลบรารี FatFS เข้ามาได้ ทำให้เครื่องสามารถทำงานเป็น data logger หรือ handheld emulator
  • ระบบนิเวศของฮาร์ดแวร์โอเพนซอร์ส: โดยการรองรับ RISC-V โปรเจกต์นี้มีส่วนช่วยในการสร้างมาตรฐานฮาร์ดแวร์แบบ royalty-free ที่เข้าถึงได้ทั่วโลก ลดการพึ่งพา IP ที่เป็นกรรมสิทธิ์ เช่น ARM หรือ AVR

ข้อมูล Frontmatter ดั้งเดิม

title: "Arduino on $4.9 RISC-V Board"
description: "Longan Nano with GD32V series MCU costs only $4.9. You then got a Arduino board with 128KB Flash, 32KB RAM, LCD and even an acrylic case."
author: "onelife"
category: ""
tags:
  - "rt-thread"
  - "rtos"
  - "risc-v"
  - "gd32v"
views: 33770
likes: 3
price: 1120
difficulty: "Easy"
components:
  - "1x Sipeed Longan Nano - RISC-V GD32VF103CBT6 Development Board"
tools: []
apps:
  - "1x PlatformIO IDE"
  - "1x RT-Thread IoT OS"
  - "1x Arduino IDE"
downloadableFiles: []
documentationLinks: []
passwordHash: "03994d254b2a867b3ab973fcccc091ce3e92cf68af4d32f7c889485ea33e6f86"
encryptedPayload: "U2FsdGVkX19DydIzUnDunUsQGhL6VfUxLyYvcU31yrypUnmsV2v6roNhsFxUbDrNyh7atwwiorJpe112i0lUZXvcA9MAEJyNAyvdFeMyWMmMupixt47dVm/5DQTOJjsjy8+itWHGrrrIY8LRbstQFQ=="
seoDescription: "Run Arduino on the $4.9 Longan Nano RISC-V Board featuring GD32V MCU, 128KB Flash, 32KB RAM, and built-in LCD."
videoLinks: []
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/arduino-on-49-risc-v-board-f1584c_cover.jpg"
lang: "th"