รายการบทความ#
บทความที่ได้มีการเรียบเรียงและรวบรวมมาแชร์ไว้ เป็นผลจากการศึกษาเรียนรู้และปฏิบัติด้วยตนเองเป็นส่วนใหญ่ และบางส่วนได้จากประสบการณ์การสอนในอดีตของผู้เขียน ในเนื้อหาวิชาที่เกี่ยวข้องกับวิศวกรรมไฟฟ้าและคอมพิวเตอร์
▹ การเรียนรู้ไมโครคอนโทรลเลอร์และระบบสมองกลฝังตัวด้วย Arduino Hardware & Software#
หากสนใจการเรียนรู้การเขียนโปรแกรมสำหรับบอร์ดไมโครคอนโทรลเลอร์ (Microcontroller: MCU) เช่น ภาษา C/C++ ซึ่งเป็นพื้นฐานที่สำคัญสำหรับการพัฒนาระบบสมองกลฝังตัว (Embedded Systems Development) เราจะพบว่า มีตัวเลือกหลากหลายทั้งซอฟต์แวร์และฮาร์ดแวร์ และกล่าวได้ว่า Arduino เป็นหนึ่งในตัวเลือกที่น่าสนใจและเป็นตัวเลือกแรกสำหรับผู้เริ่มต้น → มีบทความที่เกี่ยวข้องดังนี้
- Arduino Ecosystem: กล่าวถึงภาพรวมของ Arduino การพัฒนาจากอดีตมาถึงปัจจุบัน ซอฟต์แวร์และฮาร์ดแวร์ที่เกี่ยวข้องกับ Arduino เป็นต้น
- Single Board Computers with Arduino Support: คอมพิวเตอร์บอร์ดเดี่ยวที่รองรับการเขียนโปรแกรมด้วย Arduino
- การเขียนโปรแกรมภาษา C: ตอนที่ 1 | ตอนที่ 2 | ตอนที่ 3
- บอร์ด Arduino Nano: ความแตกต่างของบอร์ดที่เป็นตัวเลือกและการเลือกใช้งาน
- การใช้งานซอฟต์แวร์ VS Code IDE + PlatformIO เพื่อเขียนโค้ด Arduino สำหรับบอร์ด เช่น Arduino Uno Rev.3 หรือ Nano v3.0
- การใช้งาน Arduino CLI: การทำคำสั่งแบบ Command Line
- ตัวอย่างการสร้าง C++ Class เพื่อใช้งานเป็นไลบรารีสำหรับ Arduino: RGB LED และ 4x4 Membrane Keypad
- การกระเด้งของปุ่มกด (Switch Bouncing) การแก้ปัญหาและทดลองเขียนโค้ดด้วย Arduino (ATmega328P)
- การใช้โมดูล 8-bit LED Bar เพื่อการฝึกเขียนโค้ด Arduino Sketch โดยใช้ Wokwi Simulator และใช้บอร์ด Arduino Nano และ ESP32
- การสื่อสารด้วยบัส SPI และเขียนโปรแกรมด้วย Arduino
- การใช้งานไมโครคอนโทรลเลอร์ ATtiny85 การเขียนโปรแกรม Arduino และจำลองการทำงานด้วย Wokwi AVR Simulator
- ตัวอย่างการเขียนโค้ดภาษา C แบบ Bare-Metal และใช้งานซอฟต์แวร์ GCC AVR Toolchain / Arduino IDE สำหรับชิป AVR / ATmega328P: ตอนที่ 1 | ตอนที่ 2 | ตอนที่ 3 | ตอนที่ 4 | ตอนที่ 5 | ตอนที่ 6 | ตอนที่ 7 | ตอนที่ 8 | ตอนที่ 9 | ตอนที่ 10
- Arduino LED Blink: ตัวอย่างการเขียนโค้ดที่ทำให้ LED กระพริบได้ด้วยวิธีที่แตกต่างกันหลายวิธี โดยใช้บอร์ด Uno / Nano
- Arduino I/O Toggle: ตัวอย่างการเขียนโค้ดเพื่อสร้างและวัดสัญญาณแบบพัลส์ โดยใช้บอร์ด Uno / Nano
- การใช้งาน Arduino TimerOne Library สำหรับบอร์ดไมโครคอนโทรลเลอร์ Arduino Uno / Nano
- Frequency Measurement: ตัวอย่างการเขียนโค้ดเพื่อวัดความถี่ของสัญญาณที่มีคาบ โดยใช้บอร์ด Uno / Nano
- การอ่านค่าจาก ADC เพื่อปรับความกว้างพัลส์ของสัญญาณ PWM: โดยใช้บอร์ด Uno / Nano และ ESP32
- GCC AVR - Inline Assembly: ตัวอย่างการเขียนโค้ดและการจำลองการทำงานด้วย Wokwi AVR Simulator
- ตัวเลือกในการดีบักโค้ดสำหรับชิปไมโครคอนโทรลเลอร์ AVR
- การใช้งานบอร์ด Arduino Due Rev.3 (ATSAM3x8e, 32-bit Arm Cortex-M3 CPU)
▹ ไมโครคอนโทรลเลอร์ตระกูล Arm Cortex-M Series และซอฟต์แวร์ที่เกี่ยวข้อง#
ไมโครคอนโทรลเลอร์ที่ใช้ซีพียูเป็น 32-bit Arm Cortex-M ถือว่าเป็นตัวเลือกที่ได้รับความนิยม มีการใช้งานแพร่หลาย ดังนั้นความรู้เกี่ยวกับการใช้งานชิปตระกูลนี้ จึงเป็นพื้นฐานที่สำคัญ บอร์ดไมโครคอนโทรลเลอร์ที่แนะนำให้ลองใช้งาน ได้แก่ STM32 NUCLEO, Black Pill STM32F4 และ Raspberry Pi Pico เป็นต้น
- ทำความรู้จัก Arm CMSIS สำหรับซีพียู Arm Cortex-M Series โดยเลือกชิป STM32F4 (Arm Cortex-M4F) มาเป็นกรณีศึกษา
- การเขียนโปรแกรม Arduino โดยใช้ซอฟต์แวร์ Arduino IDE + STM32duino สำหรับ STM32 พร้อมโค้ดตัวอย่างสำหรับบอร์ด STM32 NUCLEO-L432KC (Arm Cortex-M4)
- แนะนำการใช้งานบอร์ด Black Pill STM32F4 (Arm Cortex-M4F) ซึ่งเป็นบอร์ดไมโครคอนโทรลเลอร์ ที่มีราคาไม่แพง ใช้ชิป STM32F411CEU6 เป็นตัวประมวลผลหลัก
- การเขียนโปรแกรม Arduino โดยใช้ซอฟต์แวร์ Microsoft VS Code IDE + PlatformIO สำหรับบอร์ด Black Pill STM32F4
- การเขียนโปรแกรม Arduino สำหรับบอร์ดไมโครคอนโทรลเลอร์ Seeeduino XIAO - SAMD21 (Arm Cortex-M0+)
- แนวทางการใช้งานบอร์ด Raspberry Pi Pico สำหรับการเรียนรู้ระบบสมองกลฝังตัว ซึ่งใช้ชิป RP2040 SoC (Dual-Core Arm Cortex-M0+) เป็นตัวประมวลผลหลัก
- การเขียนโปรแกรม Arduino Sketch โดยใช้งาน Arduino IDE สำหรับบอร์ด Raspberry Pi Pico: Arduino Pico Core (by Earle F. Philhower) และตัวอย่างการจำลองการทำงานโดยใช้ WokWi Simulator
- การติดตั้งและใช้งานซอฟต์แวร์ Pico C/C++ SDK for RP2040 เพื่อใช้งานร่วมกับ VS Code IDE / WSL 2 / Ubuntu
- การเขียนโปรแกรมด้วย FreeRTOS Kernel + Pico C/C++ SDK + VS Code IDE สำหรับบอร์ด Raspberry Pi Pico
- การเขียนโปรแกรมและดีบักโค้ดด้วย Arduino API โดยใช้ VS Code IDE + PlatformIO + SWD Debug Probe + RP2040 (Pico Board)
- การเขียนโปรแกรมและดีบักโค้ดด้วย Arduino API โดยใช้ VS Code IDE + PlatformIO + SWD Debug Probe + STM32F4 (BlackPill Board)
- การเขียนโปรแกรมและดีบักโค้ดด้วย Arm CMSIS API โดยใช้ VS Code IDE + PlatformIO + SWD Debug Probe + STM32F4 (BlackPill Board)
- แนะนำการใช้งาน STM32CubeIDE สำหรับบอร์ด BlackPill STM32F411
- การทดลองใช้งานบอร์ดไมโครคอนโทรลเลอร์ Teensy 4.0 & 4.1 ด้วย Arduino ในเบื้องต้น
- การเขียนโปรแกรม C/C++ โดยใช้ CODAL v2 สำหรับบอร์ด Micro:bit V2 ในเบื้องต้น
- แนะนำชิปไมโครคอนโทรลเลอร์ของบริษัท Nordic Semiconductor - nRF SoCs
▹ การใช้งานฮาร์ดแวร์และซอฟต์แวร์ของบริษัท Atmel / Microchip#
หากต้องการใช้ไมโครคอนโทรลเลอร์ของบริษัท Atmel / Microchip เช่น ตระกูล AVR, SAM, PIC แนะนำให้ลองใช้ซอฟต์แวร์ Microchip MPLAB-X IDE และมีบทความที่เกี่ยวข้องดังนี้
- แนะนำการใช้งานซอฟต์แวร์ MPLAB-X IDE สำหรับ AVR (ATmega328P)
- แนะนำการใช้งานซอฟต์แวร์ MPLAB Xpress Cloud IDE สำหรับการเขียนโค้ดภาษา C สำหรับชิป AVR (ATmega328P)
- การนำเข้าไฟล์ Arduino Sketch สำหรับ MPLAB-X IDE สำหรับ AVR (ATmega328P)
- แนะนำการใช้งานซอฟต์แวร์ MPLAB-X IDE + Harmony Framework v3 สาธิตการเขียนโค้ดสำหรับ ATSAMD21 (Arm Cortex-M0+)
▹ ระบบปฏิบัติการเวลาจริงสำหรับการเขียนโปรแกรมไมโครคอนโทรลเลอร์#
ระบบปฏิบัติการเวลาจริง หรือ RTOS (Real-Time OS) เป็นประเภทหนึ่งของระบบปฏิบัติการ (OS) ถือว่าเป็นซอฟต์แวร์ที่มีความสำคัญสำหรับการพัฒนาระบบสมองกลฝังตัว-ไมโครคอนโทรลเลอร์ ดังนั้นความรู้และทักษะเกี่ยวกับการเขียนโปรแกรมแบบมัลติเธรด (Multi-Threading) หรือแบ่งการทำงานแบบหลายงาน จึงเป็นสิ่งสำคัญสำหรับนักพัฒนาในระดับมืออาชีพ → แนะนำให้ลองศึกษาจากบทความต่อไปนี้
- สำหรับผู้ที่สนใจเรียนรู้และใช้งาน RTOS: แนวทางการเรียนรู้ RTOS
- แนวทางการเรียนรู้ Arm Mbed OS for Arm Cortex-M Series MCUs ซึ่งเป็นซอฟแวร์ประเภท Open Source RTOS
- ซอฟต์แวร์ที่เกี่ยวข้องกับการใช้งาน Mbed OS มีให้เลือกหลายแบบและนำมาใช้งานได้ฟรี
ทั้งแบบ Online (Web App) และ Offline (Desktop App)
- แนะนำการใช้งาน Mbed Online Compiler
- แนะนำการใช้งาน Keil Studio Cloud
- แนะนำการใช้งาน Mbed Studio Desktop IDE
- แนะนำการใช้งาน Arm Mbed CLI 2
- การเขียนโปรแกรมด้วย Arm Mbed Studio IDE + Mbed OS สำหรับบอร์ด Black Pill (STM32F4)
- การเขียนโปรแกรมด้วย VS Code IDE + PlatformIO + Mbed OS สำหรับบอร์ด Black Pill (STM32F4)
- ตัวอย่างการเขียนโค้ด Arm Mbed OS สำหรับบอร์ด STM32 (NUCLEO Boards) แบ่งเนื้อหาเป็นตอนที่ 1 | 2 | 3
- แนวทางการเรียนรู้ ARM Mbed OS โดยใช้บอร์ด Raspberry Pi Pico
- ตัวอย่างการเขียนโค้ดด้วย Arduino Mbed OS สำหรับบอร์ด RP2040 (Raspberry Pi Pico Board) แบ่งเนื้อหาเป็นตอนที่ 1 | 2 | 3 | 4 | 5
- ตัวอย่างการเขียนโค้ดด้วย Arduino + FreeRTOS สำหรับชิป 8-bit AVR / ATmega (เช่น บอร์ด Uno, Nano, Mega2560) แบ่งเนื้อหาเป็นตอนที่ 1 | 2 | 3 | 4 | 5
- แนะนำการเขียนโค้ดสำหรับบอร์ด STM32F411CE BlackPill ด้วย STM32duino และ FreeRTOS
▹ ไมโครคอนโทรลเลอร์สำหรับงาน IoT#
หากต้องการเลือกใช้ไมโครคอนโทรลเลอร์ที่ไม่ได้ใช้สถาปัตยกรรมของซีพียูตระกูล Arm ก็แนะนำให้ลองใช้ชิป ESP32 Series ของบริษัท Espressif ซึ่งมีจุดเด่นคือ สามารถเชื่อมต่อ Wi-Fi และ Bluetooth / BLE ได้
- แนะนำ Espressif ESP32 SoCs: ตัวเลือกสำหรับฮาร์ดแวร์และซอฟต์แวร์
- แนวทางการเรียนรู้: Guidelines for ESP32 Programming
- ขั้นตอนการติดตั้งและใช้งานซอฟต์แวร์ Espressif ESP-IDF สำหรับ WSL2 Ubuntu
- แนะนำการใช้งาน VS Code IDE + PlatformIO สำหรับบอร์ด ESP32
- การใช้งาน PlatformIO (PIO) Core สำหรับ WSL2 Ubuntu ในเบื้องต้น
- การใช้งาน VS Code IDE + Espresssif IDF Extension สำหรับ Windows
- การเขียนโปรแกรม ESP32-C6 / ESP-IDF (WSL2 Ubuntu)
- การเขียนโปรแกรม ESP32-C6 / Arduino-ESP32 Core
- การใช้งาน VS Code IDE + PlatformIO + ESP-IDF (สำหรับ Linux)
- แนะนำการใช้งานชิป Espressif ESP32-C3 (RISC-V)
- แนะนำการใช้บอร์ดไมโครคอนโทรลเลอร์ ESP32-C3 ที่เป็นตัวเลือกและแตกต่างกันจากหลายผู้ผลิต
- แนะนำการใช้งานชิป Espressif ESP32-S3
- การติดตั้งเฟิร์มแวร์ Espressif ESP-AT เพื่อใช้งานกับโมดูล WiFi-to-Serial (ESP8266 / ESP8285 / ESP32-C3)
- การใช้งานโมดูล ESP01S (ESP8285) WiFi-Serial สำหรับบอร์ด Raspberry Pi Pico
- การเขียนโปรแกรม Arduino สำหรับไมโครคอนโทรลเลอร์ ESP32 ด้วย Wokwi Simulator: ตอนที่ 1 | ตอนที่ 2
- การเขียนโปรแกรม Arduino-ESP32 เพื่อใช้งาน Hardware SPI
- การเขียนโค้ด Arduino เพื่อการใช้เชื่อมต่อด้วยบัส SPI Master-Slave สำหรับ ESP32
- การสร้างสัญญาณพัลส์และวัดความกว้างพัลส์หรือความถี่ของสัญญาณคาบด้วย ESP32
- การทดสอบหาระยะเวลาในการทำคำสั่งสำหรับ Arduino ESP32
- การสร้างสัญญาณแอนะล็อกด้วยวงจร DAC ของชิป ESP32
- การใช้งาน ESP32 เพื่อประมวลผลข้อมูลด้วย FFT (Fast-Fourier Transform)
- การอ่านค่าสัญญาณเสียงแอนะล็อกด้วย ESP32 และแสดงผลด้วย Python
- การทำความเข้าใจผังวงจรสำหรับบอร์ดไมโครคอนโทรลเลอร์ WeMos ESP32
▹ ภาษาคอมพิวเตอร์ที่ไม่ใช่ C/C++ สำหรับไมโครคอนโทรลเลอร์#
ภาษา C/C++ เป็นภาษาคอมพิวเตอร์ที่สำคัญสำหรับการพัฒนาโปรแกรมสำหรับระบบสมองกลฝังตัว แต่ในปัจจุบัน Python ก็เป็นอีกหนึ่งภาษาที่ได้รับความนิยม และได้เริ่มมีการนำมาใช้งานสำหรับไมโครคอนโทรลเลอร์ → มีบทความที่เกี่ยวข้องต่อไปนี้
- Python for Hardware Programming: การใข้งาน MicroPython และ CircuitPython ในเบื้องต้น
- แนะนำการเขียนโค้ดสำหรับไมโครคอนโทรลเลอร์ด้วย MicroPython
- การเขียนโปรแกรม MicroPython สำหรับบอร์ด BBC Micro:bit V2
- การเขียนโปรแกรม MicroPython สำหรับบอร์ด Raspberry Pi Pico / Pico-W
▹ การใช้งานระบบปฏิบัติการ Linux และการเขียนโปรแกรมที่เกี่ยวข้อง#
ความรู้และทักษะทางด้านคอมพิวเตอร์ที่เกี่ยวข้องกับระบบปฏิบัติการ Linux และการเขียนโปรแกรมภาษา C/C++ ก็ถือว่าเป็นพื้นฐานที่สำคัญมาตั้งแต่อดีตจนถึงปัจจุบัน ในส่วนนี้มีบทความและหัวข้อมาแนะนำให้ลองศึกษาและปฏิบัติ
- การใช้ GNU C/C++ Toolchain สำหรับการคอมไพล์โค้ดในเบื้องต้น
- การใช้ซอฟต์แวร์ Geany เพื่อการเขียนโปรแกรมภาษา C/C++ (สำหรับ Linux / Ubuntu)
- การใช้งาน VS Code IDE สำหรับ Remote Development (ใช้ Windows เป็น Local OS และ Linux / Ubuntu เป็น Remote OS)
- การเขียนโปรแกรมภาษา C: ตอนที่ 1 | ตอนที่ 2 | ตอนที่ 3
- การเขียนโค้ดภาษา C/C++ ให้ทำงานแบบ Multi-Threading ด้วยไลบรารี Pthreads สำหรับ Linux
- MQTT และการใช้งานสำหรับ Linux: ตอนที่ 1 | ตอนที่ 2 | ตอนที่ 3 | ตอนที่ 4 | ตอนที่ 5
- การติดตั้ง Zigbee2MQTT (สำหรับ Linux) และใช้งานในเบื้องต้น
▹ การใช้งานคอมพิวเตอร์บอร์ดเดี่ยว#
ปัจจุบันคอมพิวเตอร์บอร์ดเดี่ยว (Single-Board Computer: SBC) มีขนาดเล็ก ใช้กำลังไฟฟ้าไม่มาก มีตัวประมวลผลทั้ง 32 บิต หรือ 64 บิต ให้เลือกใช้ และมีหลายแกนอยู่ภายในชิป (Multi-Core) ดังนั้นจึงมีความสามารถมากกว่าไมโครคอนโทรลเลอร์ทั่วไป รองรับระบบปฏิบัติการ เช่น Linux และ Android เป็นต้น สามารถนำมาใช้งานได้ทั้งแบบตั้งโต๊ะ หรือเป็นเครื่องแม่ข่าย และงานทางด้านระบบสมองกลฝังตัว ดังนั้นความรู้และทักษะในการใช้งานฮาร์ดแวร์และซอฟต์แวร์สำหรับอุปกรณ์ประเภทนี้ ก็ถือว่าเป็นพื้นฐานที่สำคัญด้าน IoT
- Raspberry Pi 4 Model B + Raspberry Pi OS (64-bit): การใช้งานแบบ Headless (โดยไม่ต่อจอแสดงผลและอุปกรณ์อินพุตจากผู้ใช้)
▹ การใช้งานโมดูลอิเล็กทรอนิกส์#
การประยุกต์ใช้งานไมโครคอนโทรลเลอร์ เกี่ยวข้องกับการใช้งานวงจรอิเล็กทรอนิกส์ ไอซี และโมดูลเซนเซอร์ประเภทต่าง ๆ รายการบทความต่อไปนี้นำเสนอการใช้งานโมดูลอิเล็กทรอนิกส์และเขียนโปรแกรมด้วย Arduino ในเบื้องต้น
- โมดูลเซนเซอร์วัดความเข้มแสง:
- โมดูลเซนเซอร์วัดอุณหภูมิและความชื้นสัมพัทธ์:
- โมดูลเซนเซอร์อัลตราโซนิกสำหรับวัดระยะห่างจากวัตถุกีดขวาง:
- โมดูลรับสัญญาณอินฟราเรด
- โมดูลจอภาพสำหรับการแสดงผลข้อความและเชิงกราฟิก
- โมดูล RGB LED
- โมดูลไมโครโฟนเสียง
- โมดูล ADC / DAC
- โมดูลสื่อสาร
- มิเตอร์ไฟฟ้า
▹ วงจรไฟฟ้าและอิเล็กทรอนิกส์#
นอกเหนือจากความรู้เกี่ยวกับการเขียนโปรแกรมแล้ว ความรู้ทางไฟฟ้าและอิเล็กทรอนิกส์และทักษะที่เกี่ยวข้อง ก็มีความสำคัญเช่นกัน → มีบทความที่เกี่ยวข้องต่อไปนี้
- การใช้งานบอร์ด Arduino ควบคู่กับการทดลองไฟฟ้าและอิเล็กทรอนิกส์
- การต่อวงจรไฟฟ้าและอิเล็กทรอนิกส์พื้นฐานบนแผงต่อวงจร
- การใช้งานมัลติมิเตอร์สำหรับการวัดปริมาณทางไฟฟ้าในเบื้องต้น
- แนะนำซอฟต์แวร์: Autodesk Tinkercad Circuits
- ซอฟต์แวร์สำหรับการวิเคราะห์และจำลองการทำงานของวงจรไฟฟ้า-อิเล็กทรอนิกส์
- แนะนำการต่อวงจรเสมือนจริงร่วมกับบอร์ด Arduino Uno ด้วยซอฟต์แวร์ AUTODESK Tinkercad Circuits
- การฝึกต่อตัวต้านทานหลายตัว (Resistor Network) บนเบรดบอร์ดและวัดค่าความต้านทานรวม
- การฝึกต่อวงจร R-2R บนเบรดบอร์ดร่วมกับบอร์ด Arduino Uno
- การฝึกต่อวงจรแบ่งแรงดันบนเบรดบอร์ดร่วมกับบอร์ด Arduino Uno
- สิ่งที่ควรรู้เกี่ยวกับการใช้งาน "ออสซิลโลสโคป" (Oscilloscopes)
- การใช้งาน USB Logic Analyzer + PulseView เพื่อการบันทึกและวิเคราะห์สัญญาณดิจิทัล
- การใช้งาน RIGOL DS1054Z + PulseView เพื่อการบันทึกและวิเคราะห์สัญญาณแอนะล็อก-ดิจิทัล
- การใช้งานออสซิลโลสโคปและการเขียนโปรแกรมเชื่อมต่อ: RIGOL DS1054Z
- ตัวอย่างการใช้ซอฟต์แวร์เพื่อการวิเคราะห์วงจรไฟฟ้าพื้นฐาน (มีตัวอย่างการใช้ซอฟต์แวร์ EasyEDA การเขียนโค้ด MATLAB และ Python):
- การทดลองหาค่าความจุของตัวเก็บประจุไฟฟ้า โดยใช้วงจร RC และบอร์ด Arduino Uno / Nano
- วิธีการวัดค่าของตัวเหนี่ยวนำหรือคอยล์ โดยใช้วงจร RLC การวัดสัญญาณด้วยออสซิลโลสโคป และ ตัวอย่างการต่อวงจรและเขียนโค้ด Arduino
- ตัวอย่างวงจรอิเล็กทรอนิกส์: การสร้างสัญญาณพัลส์เมื่อกดปุ่มแล้วปล่อยโดยใช้ลอจิกเกตพื้นฐาน
- ความรู้พื้นฐานเกี่ยวกับไอซีลอจิกมาตรฐาน: Standard Logic ICs
- ความรู้พื้นฐานเกี่ยวกับไอซีลอจิกประเภทแลตช์: Latches
- การสร้าวงจรตัวนับโดยใช้ฟลิปฟลอป JK-FF และการจำลองการทำงาน: 4-bit Ripple-Carry Counter
- การใช้บอร์ด Arduino เลียนแบบการทำงานของวงจร Successive Approximation ADC
▹ การออกแบบวงจรดิจิทัลด้วย FPGA#
การออกแบบวงจรดิจิทัล โดยใช้ชิป FPGA ที่โปรแกรมฮาร์ดแวร์ได้ในเชิงลอจิก ถือว่าเป็นอีกหนึ่งตัวเลือกที่สำคัญสำหรับนักพัฒนาระบบสมองกลฝังตัว → มีบทความสำหรับการเรียนรู้ มานำเสนอดังต่อไปนี้
- หัวข้อในการเรียนรู้สำหรับการออกแบบวงจรลอจิก: Logic Design
- แนวทางการเรียนรู้และประเด็นในการเลือกใช้งานชิป FPGA
- การจำลองการทำงานของโค้ด VHDL ด้วย GHDL Simulator
- การทดลองใช้งานซอฟต์แวร์ Intel FPGA Prime Lite Edition พร้อมตัวอย่างโค้ด VHDL / Verilog สาธิตการใช้บอร์ด Altera Cyclone IV FPGA ในเบื้องต้น
- การติดตั้งซอฟต์แวร์ AMD / Xilinx Vivado Design Suite: สำหรับ Ubuntu
- การทดลองใช้งานบอร์ด Mojo v3 - Xilinx Spartan 6 FPGA (legacy): สำหรับ Ubuntu
- แนะนำการใช้งานบอร์ด Sipeed Tang FPGA
- การติดตั้งและใช้งานซอฟต์แวร์ Gowin IDE Standard Edition: สำหรับ Ubuntu และบอร์ด Sipeed Tang Nano (Gowin FPGA)
- การใช้งานซอฟต์แวร์ Open Source FPGA Design Tools: สำหรับบอร์ด Sipeed Tang Nano (Gowin FPGA)
- การใช้งานซอฟต์แวร์ Lattice Radiant สำหรับการออกแบบวงจรดิจิทัลด้วยชิป Lattice iCE40 FPGA
- การใช้งานซอฟต์แวร์ Open Source FPGA Design Tools สำหรับการออกแบบวงจรดิจิทัลด้วยชิป Lattice iCE40 FPGA
- การทดลองใช้งาน PicoRV32 CPU Core ในเบื้องต้น สำหรับบอร์ด Lattice iCE40 FPGA
ผู้ที่สนใจยังสามารถติดตามข่าวสารในอีกช่องทางหนึ่งผ่านทาง Facebook Page
→ "IoT Engineering Education"
(https://fb.me/iot.kmutnb)
สัญญาอนุญาตการเผยแพร่#
เผยแพร่ภายใต้สัญญาอนุญาตครีเอทีฟคอมมอนส์ (Creative Commons License): CC BY-SA 4.0
"อนุญาตให้ผู้อื่นสามารถนำผลงานไปใช้ ทำซ้ำ แจกจ่าย หรือดัดแปลงงานนั้นได้ แต่ผลงานที่ดัดแปลงนั้นจะต้องกำกับด้วยสัญญาอนุญาตเงื่อนไขเดียวกันกับต้นฉบับ เว้นแต่ว่าจะได้รับอนุญาตจากเจ้าของผลงานก่อน"
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.