Arduino Pro mini สอน วิธี ใช้งาน อัพโหลดโคด โดยใช้ USB TTL
Arduino Pro mini เป็น Arduino ที่ใช้ชิฟ Atmega328 ตัวเดียวกับที่อยู่ใน Arduino Uno ทำให้มีความสามารถควบคุมงานต่าง ๆ และเขียนโปรแกรม โคดเดียวกับ Arduino Uno มีความสามารถเท่ากัน แต่ Arduino Uno มีขนาดใหญ่ไม่เหมาะกับการใช้งานจริง เพราะ Arduino Uno เน้นใช้งานเป็นตัวต้นแบบมากกว่า จึงมีรุ่น Arduino Pro mini ขึ้นมา โดยรุ่นนี้เป็นการตัดส่วน Socket ของ Arduino uno ออก ตัดส่วนจ่ายไฟที่ไม่จำเป็นออก ตัดส่วน usb ttl สำหรับโปรแกรมออก จนเหลือแต่ส่วนที่จำเป็นจริง ๆ คือชิฟ Atmega328 และ crystal คล้าย ๆ กับการต่อ Arduino StandAlone โดยใช้ชิฟแบบ SMD ตามวงจรนี้ Arduino Pro mini Schematic ถ้าใครทึ่เคยเล่น Arduino Stand Alone แล้วก็จะมองออกว่าวงจรเดียวกัน ที่เพิ่มสวิตช์รีเซตและวงจรเรกูเลตเพิ่มเข้ามา แบ่งเป็น 2 รุ่นคือรุ่นที่ใช้ไฟ 5V ทำงานที่ 16mhz และรุ่นที่ใช้ไฟ 3.3V ทำงานที่ 8mhz
เมื่อไม่มีส่วนติดต่อ USB เวลาจะโปรแกรมผ่านเครื่องคอมจึงจำเป็นต้องใช้โมดูล USB TTL ในการติดต่อ
usb to ttl คือ การปลี่ยนสัญญาณจาก PORT USB ของเครื่องคอมพิวเตอร์ให้เป็นสัญญาณการเชื่อมต่อแบบอนุกรม UART โดยแปลงเป็นสัญญาณ TTL สามารถต่อได้โดยตรงเข้ากับไมโครคอนโทรลเลอร์ต่างๆ
usb to ttl มีหลายรุ่นแต่ละรุ่นสามารถใช้งานอัพโหลดโคดลง Arduino Pro mini ได้เหมือนกันบอร์ด USB TTL ที่มีขายหลัก ๆ จะมีอยู่ 2 แบบ คือแบบที่มีขารีเซต และแบบที่ไม่มีขารีเซต สำหรับแบบที่ไม่มีขารีเซต เราจะต้องกดปุ่มรีเซตที่บอร์ด Arduino Pri mini ค้างไว้พอขึ้นคำว่า uploadding ถึงปล่อยมือ ซึ่งแต่ละบอร์ดก็เหมาะกับงานแต่ละชนิดสามารถเลือกใช้งานได้ตามความเหมาะสม
เราจะมาลองเล่น โมดูล USB TTL ในการเขียนโคดลงให้กับ Arduino Pro mini กัน
Arduino Pro Mini บอร์ดทดลอง Arduino รุ่น Pro mini คืออะไร
- Arduino บอร์ดทดลองรุ่น Pro Mini คืออะไร
- ใช้งานแบบไหน
- เขียนโปรแกรม Arduino IDE ยังไง
คลิปนี้มีคำตอบครับ
Pro Mini คลิปแนะนำ รู้จักบอร์ดทดลอง Arduino รุ่นนี้ จบในคลิปเดียว
Pro Mini คือ บอร์ดทดลอง Arduino ที่เขียนโปรแกรมด้วย Arduino IDE เป็นบอร์ดทดลองขนาดเล็ก
ใช้ชิฟ Atmega328P แบบเดียวกับบอร์ด Uno หรือบอร์ด Nano 3.0 ดังนั้นความสามารถจึงมีเท่ากับรุ่น Uno และ Nano 3.0 โดยที่ต่างกันก็คือตัดส่วน USB TTL ออก
ถ้างานที่ทำไม่ได้ใช้ร่วมฟังก์ชั่นกับเครื่องคอมพิวเตอร์ หรือติดต่อกับ USB
การเลือกใช้บอร์ดรุ่นนี้ เป็นตัวเลือกที่เหมาะสมที่สุด เพราะมีขนาดเล็กและราคาถูกกว่ารุ่น Uno หรือ nano 3.0
หรือจะสรุปง่าย ๆ บอร์ดทดลอง รุ่น Pro Mini คือบอร์ด Uno ที่ตัดส่วน USB ออก แล้วย่อส่วนลงมาให้เล็กที่สุด ทำให้มีขนาดเล็กและราคาถูก แต่ความสามารถแบบเดียวกันทุกอย่าง
บอร์ดทดลอง Pro Mini ข้อมูล
บอร์ดใช้ชิฟ ATmega328P แบบเดียวกับ Uno , Nano 3.0 การอัพโหลดโปรแกรมลงบอร์ดผ่านโมดูล USB TTL ที่ต่อเพิ่มจากภายนอก
บอร์ดมี 2 รุ่น คือ รุ่นที่ใช้ไฟ 5V ทำงานที่ความเร็ว 16Mhz
และรุ่นที่ใช้ไฟ 3.3V ทำงานที่ความเร็ว 8Mhz
นอกจากนี้ยังมีรุ่นที่ใช้ชิฟ Atmega168P ที่ขาใช้งานโค้ดโปรแกรม ความสามารถเหมือนกันชิฟ ATmega328P ต่างกันที่หน่วยความจำมี 16K ในขณะที่ Atmega328P มีหน่วยความจำ 32K
ถ้าโปรแกรมที่เราเขียนมีขนาดไม่เกิน 16K การเลือกใช้รุ่น Atmega168P ก็จะมีราคาถูกและคุ้มค่าที่สุด
Pro Mini คุณสมบัติ รายละเอียดรุ่น ATmega328P 5V/16MHz
Microcontroller | ATmega328 * |
Board Power Supply | 3.35 -12 V (3.3V model) or 5 - 12 V (5V model) |
Circuit Operating Voltage | 3.3V or 5V (depending on model) |
Digital I/O Pins | 14 |
PWM Pins | 6 |
UART | 1 |
SPI | 1 |
I2C | 1 |
Analog Input Pins | 6 |
External Interrupts | 2 |
DC Current per I/O Pin | 40 mA |
Flash Memory | 32KB of which 2 KB used by bootloader * |
SRAM | 2 KB * |
EEPROM | 1 KB * |
Clock Speed | 8 MHz (3.3V versions) or 16 MHz (5V versions) |
(*) Older boards were equipped with ATmega 168 with this specs:
- Flash memory: 16 KB
- SRAM: 1 KB
- EEPROM: 512 bytes
Pro mini schematic วงจร
ดาวน์โหลดเวอร์ชั่น PDF ที่นี่
Pro mini ขาใช้งาน
ขาใช้งาน Pro Mino ดังรูปนี้
Pro Mini Atmega328P 5V ใช้ไฟกี่โวลต์
1. บอร์ดใช้ไฟเลี้ยง 5V จ่ายไฟ 5 เข้าที่ขา VCC
2. บอร์ดใช้ไฟเลี้ยง 6-12V ได้ โดยจ่ายเข้าที่ขา RAW
วิธีใช้ การอัพโหลดโค้ดลงบอร์ด
โค้ดตัวอย่างสำหรับทดลอง ดังนี้
เนื่องจากบอร์ดไม่มีวงจรภาค USB TTL ที่ใช้ติดต่อกับเครื่องคอมพิวเตอร์ในการสื่อสารหรืออัพโหลดโค้ดลงบอร์ด จึงต้องต่อกับโมดูล USB TTL เพิ่ม ซึ่งสามารถใช้ โมดูล USB TTL รุ่นไหนก็ได้ ในตัวอย่างนี้ มีอยู่ 3 วิธีที่แนะนำ
1. ใช้โมดูล USB TTL สำหรับบอร์ด โดยเฉพาะในการอัพโหลด แนะนำวิธีนี้
ใช้โมดูล USB TTL สำหรับบอร์ดแนะนำตัวนี้
แค่เสียบขา ก็พร้อมอัพโหลดโค้ดลงบอร์ดแล้ว วิธีนี้จะง่ายที่สุด
2. ใช้โมดูล USB TTL รุ่นทั่ว ๆ ไป
ตัวอย่างนี้โมดูล USB TTL รุ่นนี้
จะมีขาหลัก ๆ 2 ขาคือ Rx,Tx และขาไฟ VCC ,GND ต่อขา
USB - บอร์ด
กดปุ่ม reset บนบอร์ด กดปุ่ม Upload ในโปรแกรม Arduno IDE เมื่อขึ้นคำว่า uploading แล้วให้ปล่อยปุ่ม Reset บอร์ดก็จะอัพโหลดเรียบร้อย
3. ใช้บอร์ด Uno ที่สามารถถอด IC Atmega328P ออกได้
ตัวอย่างนี้ใช้บอร์ด Uno รุ่นนี้
วิธีนี้จะเหมือนกับวิธีที่ 2 เพราะในบอร์ด Uno คือ USB TTL + บอร์ด Pro Mini ดังนั้นเราจึงสามารถนำภาค USB TTL ที่อยู่ในบอร์ดมาใช้อัพโหลดบอร์ดได้ แต่สำหรับเฉพาะรุ่นที่ถอด IC ออกได้ เพราะขา IC จะชนกับขา Rx,Tx จึงต้องถอดออกก่อน การอัพโหลดต่อสายดังนี้
Uno - บอร์ด
กดปุ่ม Reset บอร์ดค้างไว
ใน Arduino IDE กดปุ่ม upload
พอขึ้นคำว่า Uploading ให้ปล่อยปุ่ม Reset
ข้อมูลบอร์ดเพิ่มเติม
สอนใช้งาน Arduino บอร์ด Nano 3.0 การใช้งาน Arduino IDE พื้นฐานทุกอย่างที่นี่