Review NuEdu UNO (Arduino Compatible) – บอร์ดน้องใหม่จาก Nuvoton

Review NuEdu UNO (Arduino Compatible) – บอร์ดน้องใหม่จาก Nuvoton

 สวัสดีครับวันนี้ทางทีมงาน ThaiEasyElec จะขอแนะนำให้รู้จักกับบอร์ดไมโคคอนโทรลเลอร์ตัวใหม่ เจ้าบอร์ดตัวนี้มีชื่อว่า NuEdu-UNO (Arduino Compatible) (รหัสสินค้า EFDV437) เป็นบอร์ดใหม่จาก Nuvoton ซึ่งทำ I/O Header ต่างๆ ตรงตาม Arduino UNO R3 Pinout ตัว MCU นั้นเป็น ARM Cortex M0 ขนาด 32-bit ที่มาพร้อมประสิทธิภาพการทำงานสูงสุดอยู่ที่ Frequency 50 MHz, 64 KB of flash memory, 8KB of SRAM, 12-bit ADC ในส่วนของ Digital I/O สามารถรองรับการทำงานได้ตั้งแต่ 2.5–5 โวลต์ พร้อมทั้งมีเครื่องโปรแกรมติดตั้งอยู่บนตัวบอร์ด ไม่ต้องใช้เครื่องโปรแกรมภายนอก และสามารถพัฒนาผ่าน Software ของ Arduino IDE ได้อีกด้วย

รายละเอียด
         NUC131 series is a 32-bit microcontroller with embedded ARM® Cortex™-M0 core for industrial control and applications which need rich communication interfaces. NUC131 series MCU can run up to 50MHz, has 64-byte flash, 4K-byte data flash, 4K-byte flash for the ISP, and 8K-byte SRAM. Many system level peripheral functions, such as CAN, I/O port, Timer, UART, SPI, PWM, ADC, Watchdog Timer, and Brown-out Detector.

Target Application:

  • Industrial Applications Control, Communication System, Elevator Control, etc.

Key Features:
Core
– Cortex™-M0 processor
– Max frequency of 50 MHz
– Operating voltage: 2.5V to 5.5V
– Temperature range: -40℃ ~ 85℃
Memory
– 64 KB of flash memory
– 8 KB of SRAM
– Configurable Data Flash
– ISP (In-System Programming)
– ICP (In-Circuit Programming)
ADC
– Up to 8 channels
– 12-bit resolution
– Up to 1 MSPS
– ±1℃ accurate Temperature Sensor 
PWM
– Up to 24 channel PWM or three complementary paired PWM outputs
– Support Capture interrupt
Connectivity
– 1 set CAN device
– Up to 1 SPIs (up to 36 MHz)
– Up to 2 I²Cs (up to 400 kHz)
– Up to 6 UARTs (up to 1 Mbps)
– 16/8 bits EBI interface
Clock Control
– 4 to 24 MHz external crystal oscillator
– 22.1184 MHz internal RC oscillator (1% accuracy at 25℃, 5V)

         ก่อนจะพัฒนาตัวบอร์ด เรามารู้จักกับส่วนประกอบเบื้องต้นของบอร์ดว่าเป็นอย่างไร เจ้าตัวบอร์ด NuEdu-UNO (Arduino Compatible) (รหัสสินค้า EFDV437)นั้นถูกพัฒนามาให้ I/O Pins Header ต่างๆ ตรงตาม Arduino UNO R3 Pinout และสามารถใช้งานกับ Arduino IDE (Version 1.5.8 BETA – 1.6.1 และ 1.7.4 (Arduino.org)) นอกจากนี้ ยังสามารถพัฒนาได้ด้วยโปรแกรมอื่นๆ อีก เช่น Keil, IAR, Coocox เป็นต้น 
         ส่วนประกอบต่างๆ บนบอร์ดประกอบไปด้วย เครื่องโปรแกรม Nu-Link me ติดตั้งมาพร้อมกับบอร์ด ใช้ในการโปรแกรมโค้ดที่พัฒนาลงไปยังบอร์ดไมโคคอนโทรลเลอร์ แยกเป็น 2 ส่วนเห็นได้ชัดเจน พร้อมทั้งสามารถหักออกจากกันเหมาะสำหรับการนำบอร์ดไปใช้งานจริง คุณสมบัติของ Pins I/O ต่างๆ มีคุณสมบัติในการทำงานเช่นเดียวกับ Arduino UNO R3 สามารถดูได้จากบล็อกไดอะแกรมด้านล่าง

Arduino UNO R3 Pins Out

NuEdu-UNO Pins Out

         ขั้นตอนแรกในการพัฒนา ผู้ใช้จะต้องดาวน์โหลดโปรแกรม Arduino IDE (สามารถใช้งานได้ตั้งแต่ Version 1.5.8 BETA – 1.6.1) ก่อนครับ >>>Download IDE<<< สามารถดาวน์โหลดแบบเป็นไฟล์ zip (Arduino.zip) สำหรับผู้ที่ไม่ต้องการติดตั้ง หรือเป็นตัวสำหรับติดตั้ง (Installer.exe) ได้ทั้งหมดครับ ขึ้นอยู่กับการใช้งาน หากเครื่องผู้พัฒนามีเวอร์ชั่นอื่นอยู่แล้ว ไม่จำเป็นต้องใช้ตัวสำหรับติดตั้งเพราะจะทำให้เวอร์ชั่นเก่าถูกถอนการติดตั้งได้ เวอร์ชั่นที่สามารถใช้งานได้เป็นเวอร์ชั่นตั้งแต่ 1.5.8 BETA ขึ้นไปจนถึงเวอร์ชั่น 1.6.1 จากฝั่ง Arduino.cc และสามารถใช้งานเวอร์ชั่น 1.7.4 จากฝั่ง Arduino.org ได้เช่นเดียวกัน (เวอร์ชั่นที่ใช้ในบทความนี้คือ 1.5.8 BETA)

         หลังจากดาวน์โหลดแล้ว ให้ติดตั้งได้เลยครับหรือถ้าใครโหลดเป็นไฟล์ zip มาให้แยกไฟล์ออกมาก่อนครับ และติดตั้ง Patch Cortex M0 For Arduino 1.5.8 เป็นขั้นตอนในการเพิ่มตัวเลือกบอร์ดเข้าไปยังโปรแกรม Arduino IDE สามารถดาวน์โหลด Patch ได้ที่>>>Download Patch<<<  

 เมื่อดาวน์โหลดมาแล้วให้ติดตั้งไปยังที่อยู่ของโปรแกรม Arduino ที่เราได้ติดตั้งไว้ก่อนหน้านี้ หรือไดร์ฟที่เราได้แยกไฟล์ไว้ โดยทำตามภาพด้านล่างได้เลยครับ

   ต่อมาให้เปิดโปรแกรม Arduino IDE เลือกไปยังเมนู Tools >>> Board เพื่อตรวจสอบว่ามีชื่อบอร์ด NuEdu-UNO แสดงอยู่ในหรือไม่ ถ้าแสดงอยู่ถือว่าติดตั้ง Patch เรียบร้อยแล้ว

 หลังจากนั้นเชื่อมต่อบอร์ดเข้ากับ Computer ซึ่งยังไม่สามารถใช้งานได้ตามภาพด้านล่าง ผู้ใช้ต้องติดตั้งไดร์เวอร์ก่อนการใช้งาน สามารถดาวน์โหลดไดร์เวอร์ได้ที่ >>>Download Driver<<<

  หลังจากติดตั้งไดร์ฟเวอร์เรียบร้อยแล้ว ให้ผู้ใช้เปิด Example Blink จากโปรแกรม Arduino IDE โดยเข้าที่เมนู File >>> Example >>> Basics >>> Blink ดังภาพด้านล่าง

 ต่อมาให้ผู้ใช้กำหนดบอร์ดที่ใช้งาน และ Serial Comport ที่ใช้งาน โดยเข้าที่เมนู Tools >>> Board >>> NuEdu-UNO และกำหนด Serial Comport โดยเข้าที่เมนู Tools >>> Port >>> COM142 (ขึ้นอยู่กับเครื่องผู้ใช้หลังจากติดตั้งไดร์ฟเวอร์จะได้ Comport โดยระบบปฎิบัติการเป็นตัวกำหนด) ดังภาพด้านล่าง

กำหนดบอร์ดที่ใช้งาน

กำหนดคอมพอร์ตที่ใช้งาน

         เมื่อผู้ใช้กำหนดค่าข้างต้นเรียบร้อยแล้ว ให้ Compile และ Load โค้ดลงไปยังบอร์ด โดยเลือกที่เมนูทางด้านซ้ายบนดังภาพด้านล่าง

 และเมื่อผู้ใช้โหลดโปรแกรมเรียบร้อยแล้ว ให้ Reset บอร์ด 1 ครั้ง ตำแหน่งของ Reset Switch สามารถดูได้จากภาพด้านล่าง

 หลังจาก Reset ให้สังเกตหลอดไฟ LED (ดังภาพด้านล่าง) จะกระพริบตามโค้ดที่ได้เขียนไว้ก่อนหน้านี้

 เมื่อไฟกระพริบแสดงว่า บอร์ดใช้งานและสามารถพัฒนาผ่าน Arduino IDE ได้เรียบร้อยแล้ว ถัดไปเราจะมาดูกันว่า หลังจากที่ใช้งานกับ Arduino IDE ได้แล้วนั้นสามารถใช้ Library ของ Arduino ตัวไหนได้บ้างสามารถดูได้จากตารางด้านล่าง

   จากตารางด้านบน จะเห็นได้ว่าสามารถใช้งาน Library เบื้องต้นได้ค่อนข้างเยอะพอสมควร ถือว่าเป็นอีกหนึ่งทางเลือกใหม่ที่เหมาะสำหรับสาวก Arduino ที่ต้องการใช้งานในความสามารถที่สูงขึ้น รองรับการทำงานที่เร็วขึ้นและสามารถพัฒนาการใช้งานไปในโปรแกรมอื่นๆ ได้อีกด้วยครับ ทางทีมงานขอฝากไว้แต่เพียงเท่านี้ก่อน โอกาสหน้าจะทำ Applications ที่ทำจากบอร์ดนี้มาให้ชมกันครับ สำหรับบทความนี้สวัสดีครับ ^_^

เอกสารเพิ่มเติมสำหรับผู้ที่สนใจ