หน้าแรก
วิธีการสั่งซื้อสินค้า
แจ้งชำระเงิน
บทความ
เว็บบอร์ด
เกี่ยวกับเรา
ติดต่อเรา
หน้าแรก
>
บทความ
>
[Tips] เบิร์น Bootloader ให้กั…
ค้นหาบทความที่นี่
บทความทั้งหมด
[Tips] เบิร์น Bootloader ให้กับ ATmega328P
5 ปีที่ผ่านมา
โดย
เจ้าของร้าน
บางครั้งมีน้อง ๆ เข้ามาซื้อของที่ร้านก็จะถามว่า Arduino UNO R3 เนี่ย แบบชิป ATmega328P-PU ตัวถัง PDIP ที่แพงกว่านิด กับแบบ ATmega328P-AU ตัวถัง SMD ควรเลือกแบบไหน เจ้าของร้านมักแนะนำแบบแรก ไม่ใช่เพราะมันราคาแพงกว่าจะขายของ แต่เนื่องด้วยหากเกิดเหตุอะไรขึ้นทำให้ชิปต้องเสียหายไป เราก็สามารถดึงตัวเก่าทิ้งและใส่ตัวใหม่เข้าไปได้ โดยไม่ต้องซื้อบอร์ดใหม่ ซื้อเฉพาะตัวชิป ATmega328P มาใส่แทนได้เลย ราคาถูกกว่าบอร์ดใหม่ ลดขยะอิเล็กทรอนิกส์ช่วยสิ่งแวดล้อมอีกด้วย
แต่การจะทำให้ ATmega328 ใช้งานเป็น Arduino ได้นั้น จำเป็นที่จะต้องมี Bootloader ก่อนครับ ซึ่งเจ้า Bootloader นี่มันคือ firmware ที่ทำหน้าที่ช่วยในการ upload sketch ที่เราเขียนผ่านทางสาย USB โดยไม่ต้องมีเครื่องโปรแกรมนั่นเอง ซึ่งก็ไม่เพียง Arduino เท่านั้น แต่เราคลุกคลีกับ Bootloader กันโดยไม่รู้ตัวครับ อย่าง Smart Phone ที่พกไปมากันนี่ก็มี Smart Device ทั้งพวก Band พวก Watch หรืออุปกรณ์อื่น ๆ ก็ล้วนมี Bootloader ของตัวเองทั้งนั้นเลย
หากใครต้องการอ่านเพิ่มเติมเรื่องนี้แบบละเอียด ๆ หน่อยก็ไปตามลิงค์ที่ผู้เขียนไปศึกษามา
คลิกที่นี่เลยครับ
(เป็นบทความภาษาอังกฤษ)
ซึ่งเจ้า Bootloader ของ Arduino นี้ก็ไม่ใช่เฉพาะ ATmega328P เท่านั้น แต่ชิปในกลุ่ม 328 ตั้งแต่ ATmega8 ATmega48 ATmega88 ATmega168 ATmega328 ล้วนแต่ลง Bootloader ของ Arduino ได้ทั้งสิ้น (
สำหรับ ATmega8 ต้องใช้ IDE 1.0.x เท่านั้น
ใน IDE รุ่นใหม่ ๆ จะไม่รองรับแล้ว)(ชิปที่นิยมนำมาใส่ Bootlaoder อีกเบอร์นอกจาก ATmega328 คือ ATmega168) โดยวิธีในการเบิร์น Bootloader เพื่อทำให้ชิป ATmega กลายเป็นชิป Arduino มีหลายวิธี ดังนี้
1 ใช้ Arduino UNO ตัวอื่น
วิธีนี้คาดว่าน่าจะเป็นวิธีที่ส่วนใหญ่คงเลือกใช้กัน เพราะว่าก็คงมีเจ้า Arduino UNO กันอยู่แล้วหล่ะ ส่วนวิธีการนั้นก็มีหลายวิธีย่อยอีก ดังนี้
1.1 ใช้ AVRISP Shield
วิธีนี้เป็นวิธีที่ยุ่งยากน้อยที่สุด ซึ่งทางร้านก็ใช้วิธีนี้ในการลง Bootloader ให้กับลูกค้าที่สั่งซื้อ ATmega328P แล้วต้องการให้ลง Bootloader ให้เลย(หนึ่งในนั้นคือตัวตามรูปด้านล่าง สภาพฝุ่นพอสมควรเพราะพกไปไหนมาไหนด้วย)
มีวิธีการทำคือเตรียม Arduino UNO ไว้ 1 ตัว ใส่ AVRISP Shield ลงไปให้เรียบร้อย เปิดโปรแกรม ArduinoISP จาก File > Examples > 11.ArduinoISP > ArduinoISP แล้วทำการอัพโหลดโปรแกรมนี้ลงไปใส่ไว้ใน Arduino UNO ของเรา ทีนี้เจ้า Arduino UNO ตัวนี้ก็จะกลายเป็นเครื่องโปรแกรมแล้วครับ
เมื่อเจ้า Arduino UNO กลายเป็นเครื่องโปรแกรมไปแล้ว จะทำ Bootloader อีกกี่พันตัวก็แค่ทำขั้นตอนต่อไปนี้เลยครับ เตรียมชิปเปล่าใส่ลงไปใน Texttool ดูขาให้ตรงด้วยนะครับ ในตัว Texttool จะมีที่โยกล็อคขาชิป ขา 1 ของชิปต้องอยู่กับตัวโยกนี้(สังเกตุจากรอยบากบนตัวชิป)
เมื่อใส่ชิปลงไปกดคันโยกล็อคเรียบร้อย เปิด ArduinoIDE กด Tools เลือก Port ที่ Arduino UNO ตัวโปรแกรมเราเสียบอยู่ตามปกติ มีสิ่งที่ต้องตั้งค่าเพิ่มเติมคือบรรทัดรองสุดท้าย ตรง Programmer ให้เลือก Arduino as ISP จากนั้นคลิกที่บรรทัดล่างสุด Burn Bootloader ได้เลย
รอซักครู่ โปรแกรมจะขึ้นว่า Done Burn Bootloader เพียงเท่านี้เจ้าชิปเปล่า ๆ ก็กลายเป็นชิป Arduino เรียบร้อย
1.2 ใช้บอร์ด Arduino UNO(ที่ใช้งานได้)
จากวิธีแรกนี้หลายท่านก็คงคิดว่าถ้าเราเป็นแค่ Maker ที่ไม่ได้ลง Bootloader บ่อย ๆ อย่างปีละครั้งนี่ก็ถือว่าถี่แล้วหล่ะครับ(บอร์ด Arduino ที่เจ้าของร้านใช้หมุนเวียนทดลองต่าง ๆ อยู่ บางบอร์ด 6-7 ปีแล้วยังไม่มีปัญหาเลยครับ) การที่จะซื้อ AVRISP Shield มาเพื่อใช้ปีละครั้งมันคงไม่คุ้ม เราจะมาใช้วิธีนี้กันครับ ใช้แค่เจ้า Arduino UNO ตัวอื่นที่ยังใช้งานได้ของเรานั่นแหละ แล้วมีสิ่งที่ต้องเตรียมเพิ่มเติมคือ Breadboard, ตัวต้านทาน 10k, Crystal 16MHz และตัวเก็บประจุ 22pF อีก 2 ตัว
ก่อนอื่น นำชิปเปล่าที่ไปซื้อมาใหม่ ๆ ต่อวงจรตามรูปข้างล่างนี้ก่อนครับ โดยต่อตัวเก็บประจุกับ Crystal เข้ากับ XTAL1, XTAL2 (ขา 9 และขา 10) และตัวต้านทานต่อเป็น Pull-Up ให้ RESET (ขา 1)
จากนั้นนำบอร์ด Arduino UNO ตัวที่ยังใช้ได้มาต่อขาของบอร์ด UNO เข้ากับชิปเปล่าที่เราเตรียมไว้เมื่อกี๊ตามรูปข้างล่างนี้เลย
จากนั้นก็ลง ArduinoISP ให้กับบอร์ดตัว Arduino กด Burn Bootloader ตามขั้นตอนเหมือนแบบแรก เท่านี้ก็เสร็จเรียบร้อยครับ (เหมือนเราสร้าง AVRISP บน Breadboard ของเราเอง แบบนี้ประหยัดแต่ไม่สะดวก)
2 ใช้เครื่องโปรแกรม
ทีนี้ใครมี Arduino UNO แค่บอร์ดเดียว เอาไงดีหว่า คริสตัล ตัวเก็บประจุก็ไม่มี ซื้อมาแค่ชิปเปล่า ๆ ตัวเดียว ไม่ต้องตกใจครับ เราใช้เครื่องมือโปรแกรมต่าง ๆ ที่เรามีลง Bootloader ก็ได้ ในที่นี้ผู้เขียนจะขอกล่าวถึงเฉพาะ
AVRISP
อย่างเดียวก็แล้วกัน เนื่องจากที่กล่าวตลอดว่าแนวทางบทความของเราจะเน้นง่าย หากเรื่องซับซ้อนมันอธิบายเป็นตัวหนังสือยากก็ไม่เข้าใจเปล่า ๆ เอาหล่ะเริ่มกันเลย โดยเจ้า AVRISP ก็มีหน้าตาดังนี้
ซึ่งตามชื่อมันก็บอกอยู่แล้วครับว่ามันออกแบบมาสำหรับชิป AVR เลย หากดูตรงหัวต่อของมันก็จะมีขาตามรูปข้างล่างนี้ ซึ่งขาต่าง ๆ ก็คือขาเชื่อมต่อแบบ SPI ที่เราคุ้นเคยกันนั่นเอง
กลับมาดูที่ Arduino UNO (หรือตัวอื่น ๆ อย่าง MEGA, LEONARDO, NANO ก็มีเหมือนกัน) ก็จะมีขา ISP นี้มาให้แล้วเหมือนกัน(รูปล่างวงกลมแดง) โดยจะสังเกตุเห็นจุดเพื่อบอกตำแหน่งขาที่ 1 ด้วย
มาถึงวิธีการก็แสนง่ายเหมือนกันครับ ดึงชิปตัวเก่าออกจากซอกเก็ต(อาจต้องใช้ไขควงปากแบนค่อยๆแงะขึ้นมา) จากนั้นจึงใส่ชิปตัวใหม่ที่เป็นชิบเปล่า ๆ ลงไปแทน(ไอซีทุกตัวทุกเบอร์จากโรงงานจะมีขาทำมุมเฉียงออกหมด ขามันจะกว้างกว่าซอกเก็ตก็ค่อย ๆ ดัดขาเข้ามาให้ขาตั้งฉากจะได้ใส่ได้) อย่าลืมดูตำแหน่งขาให้ถูกด้วยนะครับ
จากนั้นใช้หัวแปลง
10pin to 6pin Adapter
เพื่อแปลงหัว 10 ขาให้เหลือ 6 ขา จากนั้นเสียบลงไปบน Arduino UNO ของเรา ดูขาให้ตรงด้วยนะครับ ใครใช้ Adapter ก็สังเกตุตามรูปเลย
เรียบร้อยแล้วก็ทำเหมือนเดิม ฉากเดิมซ้ำ ๆ ตามขั้นตอนวิธีบนสุด เปิด ArduinoIDE ขึ้นมา เลือกบอร์ด Arduino UNO เลือก Port ที่ AVRISP เสียบอยู่ จากนั้นกด Burn Bootloader รอจนขึ้นว่า Done Burn Bootloader เป็นอันเรียบร้อย
ตัว LED_BUILTIN ที่ขา 13 ก็จะกระพริบ เราได้บอร์ด Arduino UNO ตัวใหม่มาใช้งานแล้ว
หวังว่าจะได้ความรู้กันบ้างนะครับกับวิธีเปลี่ยน ATmega328 ธรรมดาให้เป็น Arduino เอาไว้ครั้งต่อไปเราจะใช้เจ้าชิปที่มี Bootloader นี้ไปทำอะไรกันก็ติดตามกันต่อนะครับ
tips
,
Arduino
,
arduino bootloader
,
bootloader
,
ลง bootloader
,
สอนลง bootloader
,
สอน arduino
Share
Share :
COPY
Privacy Policy
|
Cookie Policy
|
Copyright © 2025
fitrox.lnwshop.com
All rights reserved.
ตะกร้า
(
0
)
▲
▼
รายการสั่งซื้อของฉัน
เข้าสู่ระบบด้วย
เข้าสู่ระบบ
สมัครสมาชิก
ยังไม่มีบัญชีเทพ
สร้างบัญชีใหม่
ไม่มีค่าใช้จ่าย
สมัครสมาชิก (ฟรี)
รายการสั่งซื้อของฉัน
ข้อมูลร้านค้านี้
Fitrox Electronics
ไฟทร็อก อิเล็กทรอนิกส์ จำหน่ายอุปกรณ์อิเล็กทรอนิกส์ บอร์ดไมโครคอนโทรลเลอร์ และอุปกรณ์สำหรับโปรเจคต่างๆ อ.เมือง จ.เชียงใหม่ (หลัง มช.)
เบอร์โทร :
0897245633
อีเมล :
fitrox.electronics@gmail.com
ส่งข้อความติดต่อร้าน
เกี่ยวกับร้านค้านี้
ค้นหาสินค้าในร้านนี้
ค้นหา
หรือค้นหาอย่างละเอียด
ค้นหาสินค้า
สินค้าที่ดูล่าสุด
{{pdata.name}}
ดูสินค้าทั้งหมดในร้าน
สินค้าที่ดูล่าสุด
บันทึกเป็นร้านโปรด
Join เป็นสมาชิกร้าน
แชร์หน้านี้
แชร์หน้านี้
↑
TOP
เลื่อนขึ้นบนสุด
คุณมีสินค้า
0
ชิ้นในตะกร้า
สั่งซื้อทันที
สินค้าในตะกร้า ({{total_num}} รายการ)
ขออภัย ขณะนี้ยังไม่มีสินค้าในตะกร้า
ราคาสินค้าทั้งหมด
฿ {{price_format(total_price)}}
- ฿ {{price_format(discount.price)}}
ราคาสินค้าทั้งหมด
{{total_quantity}} ชิ้น
฿ {{price_format(after_product_price)}}
ราคาไม่รวมค่าจัดส่ง
ดูสินค้าในตะกร้า
เริ่มการสั่งซื้อ
➜
เลือกซื้อสินค้าเพิ่ม
พูดคุย-สอบถาม
อีเมล fitrox.electronics@gmail.com
โทร 0897245633
channel/UCnHfpCdqN1RkzAfEH_lRLvw?
1924052434588436
Add @zpq2828r