สารบัญ:
- ขั้นตอนที่ 1: คำไม่กี่คำ
- ขั้นตอนที่ 2: Bootloader คืออะไร (ออปติบูต)
- ขั้นตอนที่ 3: Arduino Sketches Master
- ขั้นตอนที่ 4: การตั้งค่าฮาร์ดแวร์
- ขั้นตอนที่ 5: การเขียนโปรแกรม
- ขั้นตอนที่ 6: ตัดการเชื่อมต่อ
- ขั้นตอนที่ 7: เชื่อมต่อ
- ขั้นตอนที่ 8: สถานะการเขียนโปรแกรม
- ขั้นตอนที่ 9: ความสนุกเริ่มต้นขึ้น!:)
- ขั้นตอนที่ 10: ชิปใหม่
- ขั้นตอนที่ 11: การปฏิเสธความรับผิด !
- ขั้นตอนที่ 12: เมื่อสิ่งแปลก ๆ เกิดขึ้น
วีดีโอ: Atmega328P-PU Bootloader (Optiboot) คู่มือการเผาไหม้: 12 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:03
อีก Atmega bootloader กำลังเบิร์น giude แต่คราวนี้ฉันเดิมพันที่ความพยายามครั้งแรกที่คุณจะประสบความสำเร็จ!!
นี่คือบทแนะนำการเบิร์น Bootloader ของ Nick Gammons สำหรับบอร์ด Arduino
ขั้นตอนที่ 1: คำไม่กี่คำ
ไมโครคอนโทรลเลอร์ Atmega328P-PU เป็นหนึ่งในชิป Arduino ที่ได้รับความนิยมมากที่สุดที่ใช้กันทั่วโลก แต่ที่สำคัญที่สุดคือ Atmega ที่เปลือยเปล่ายังคงทำในสิ่งที่ Uno R3 มาตรฐานสามารถทำได้ เหตุผลหลักที่ฉันชอบไมโครคอนโทรลเลอร์นี้คือโหมด "พลังงานต่ำ" ฉันได้เขียนภาพร่างใหม่สำหรับเซ็นเซอร์สองสามตัว และตอนนี้ฉันกำลังทดสอบพวกมันอยู่
ย้อนกลับไปเมื่อไม่กี่ปีที่ผ่านมา เมื่อฉันเริ่มเล่นกับ Arduino คำสั่งแรกของฉันคือไมโครคอนโทรลเลอร์ Atmega328P ต่อมาฉันรู้ว่าสิ่งที่ฉันสั่งจาก Aliexpress เป็นชิปเปล่า ชิปราคาถูกมากใน Ali คุณสามารถซื้อได้ตั้งแต่ 1.40 ดอลลาร์ แต่พวกเขาไม่มี Uno Bootloader (Optiboot) และหากไม่มีมันฉันก็ไม่สามารถอัปโหลดภาพร่างได้ แตกยากแฮะ??!! มันเป็นการอาบน้ำที่เย็นมากสำหรับฉัน ……. ดังนั้นฉันจึงค้นหาวิธีที่จะเบิร์น bootloader ลงในชิป ฉันได้ลอง 5 หรือ 6 วิธี แต่ไม่มีโชค หลังจากผ่านไปหนึ่งสัปดาห์ฉันพบหัวข้อในฟอรัมเว็บไซต์ที่กล่าวถึงบทแนะนำการเบิร์น bootloader ของ Nick Gammon ความพยายามครั้งแรกและความสำเร็จ!!:D ตอนนี้ฉันจะแสดงวิธีเบิร์น bootloader ให้กับชิป Atmega328P-PU เปล่าอย่างง่ายดายโดยไม่ต้องยุ่งกับ Arduino IDE
ขั้นตอนที่ 2: Bootloader คืออะไร (ออปติบูต)
bootloader เป็นโปรแกรมขนาดเล็ก (ไฟล์ HEX, 0.5Kbyte) ที่ให้คุณอัปโหลดภาพสเก็ตช์ไปยังหน่วยความจำแฟลชได้โดยตรงจาก Arduino IDE ไฟล์ HEX จะทำงานก่อนโปรแกรมหลักเสมอ และนั่นเป็นเหตุผลที่จำเป็น
ไม่มี bootloader:
- ไมโครคอนโทรลเลอร์ยังสามารถตั้งโปรแกรมได้! (ใช่ เป็นไปได้) แต่คุณจะต้องใช้โปรแกรมเมอร์ AVR โดยเฉพาะเพื่อทำเช่นนั้น และไม่ถูก!
- ไม่สามารถตั้งโปรแกรมผ่าน Arduino IDE ได้
bootloaders ที่รองรับของวิธีนี้:
Atmega8 (1024 ไบต์)
Atmega168 Optiboot (512 ไบต์)
Atmega328 Optiboot (สำหรับ Uno ฯลฯ ที่ 16 MHz) (512 ไบต์)
Atmega328 (8 MHz) สำหรับ Lilypad เป็นต้น (2048 ไบต์)
Atmega32U4 สำหรับ Leonardo (4096 ไบต์) Atmega1280 Optiboot (1024 ไบต์)
Atmega1284 Optiboot (1024 ไบต์)
Atmega2560 พร้อมการแก้ไขปัญหาตัวจับเวลาจ้องจับผิด (8192 ไบต์)
Atmega16U2 - bootloader บนชิปอินเตอร์เฟส USB ของ Uno
Atmega256RFR2 - bootloader บนบอร์ด Pinoccio Scout
รหัสสำหรับโปรแกรมโหลดบูตต่อไปนี้รวมอยู่ในภาพร่าง และจะถูกดาวน์โหลดโดยขึ้นอยู่กับว่าตรวจพบลายเซ็นใด
ดังนั้นเราจึงมีทุกสิ่งที่เราต้องการ
ขั้นตอนที่ 3: Arduino Sketches Master
ก่อนอื่นคุณต้องมีห้องสมุด Arduino
ดาวน์โหลดได้จากที่นี่:
หรือดาวน์โหลดได้จากที่นี่
หลังจากที่คุณดาวน์โหลดแตกไฟล์ไปยังห้องสมุด Arduino แล้วมองหา Board Programmer เปิดและเรียกใช้ Board Programmer.ino
ขั้นตอนที่ 4: การตั้งค่าฮาร์ดแวร์
มี 3 วิธีในการต่อสายก่อนตั้งโปรแกรม:
- ใช้โล่ AVR ISP
- Arduino A ถึง Arduino B
- และวิธีการเขียงหั่นขนม
ในภาพคุณสามารถดูวิธีการวางสาย บนเขียงหั่นขนม ตัวเก็บประจุเซรามิกไม่จำเป็นจริงๆ แต่ต้องเพิ่มคริสตัล 16Mhz
ฉันใช้โล่ AVR ISP ของฉันในครั้งนี้
เป้าหมายของวิธีนี้คือโปรแกรมใช้มอนิเตอร์แบบอนุกรมเพื่อเข้าถึงหน่วยความจำแฟลชเพื่อเขียน Optiboot (bootloader)
ขั้นตอนที่ 5: การเขียนโปรแกรม
หลังจากตั้งค่าฮาร์ดแวร์เสร็จแล้ว ให้รัน Board Programmer.ino!
รวบรวมและอัปโหลดไปยัง Arduino ของคุณ แต่อย่าปิดหน้าต่าง !! คุณจะต้องการมัน:)
การอัปโหลดจะใช้เวลาสองสามวินาที
ขั้นตอนที่ 6: ตัดการเชื่อมต่อ
หลังจากที่คุณอัปโหลดภาพสเก็ตช์แล้ว ยกเลิกการเชื่อมต่อ Arduino จากพีซีของคุณและเชื่อมต่อทุกอย่างหากคุณวางแผนที่จะทำเช่นนี้บนเขียงหั่นขนม
หากคุณใช้ตัวป้องกัน AVR ให้ใส่ชิป Atmega ลงในซ็อกเก็ต ZIF และ "ล็อค" ไว้
สำคัญมาก: ตราบใดที่ไม่ได้ตั้งค่าฮาร์ดแวร์ โปรเซสเซอร์จะต้องไม่ได้รับ VCC!! ด้วยวิธีนี้คุณจะเสี่ยงเสียหาย!!
ขั้นตอนที่ 7: เชื่อมต่อ
ตกลง! ฮาร์ดแวร์ได้รับการตั้งค่าและทุกอย่างอยู่ในตำแหน่งที่เราเชื่อมต่อ Arduino กับพีซี
ถัดไปเปิด Serial monitor และตั้งค่า baud rate 115200 แล้วคุณจะเห็นสิ่งนี้
ในจอภาพแบบอนุกรม คุณจะเห็นว่า Arduino เข้าสู่โหมดการเขียนโปรแกรมแล้ว เย็น!!:)
เนื่องจากเราต้องการตั้งโปรแกรม Uno (Atmega328P) ให้พิมพ์ "U" ในข้อความแจ้งและกด Enter
ขั้นตอนที่ 8: สถานะการเขียนโปรแกรม
ในหน้าต่างถัดไปคุณจะเห็นสิ่งนี้
เราจะไม่เลิกหรือยืนยัน พิมพ์ G แล้วกด Enter!
ขั้นตอนที่ 9: ความสนุกเริ่มต้นขึ้น!:)
หลังจากกด Enter คุณจะเห็นสิ่งนี้:
กำลังลบชิป …กำลังเขียน bootloader …
ยอมรับหน้าเริ่มต้นที่ 0x7E00 ยอมรับหน้าเริ่มต้นที่ 0x7E80
คอมมิตเพจเริ่มต้นที่ 0x7F00
คอมมิตเพจเริ่มต้นที่ 0x7F80
เขียน. กำลังตรวจสอบ …
ไม่พบข้อผิดพลาด
กำลังเขียนฟิวส์ …LFuse = 0xFF
HFuse = 0xDE
EFuse = 0xFD
ล็อคไบต์ = 0xEF การปรับเทียบนาฬิกา = 0x9E
เสร็จแล้ว.
โหมดการเขียนโปรแกรมปิดอยู่ พิมพ์ 'C' เมื่อพร้อมใช้ชิปตัวอื่นต่อ …
และวันแห่งความสุข!!:D ชิป Atmega328P ของคุณพร้อมที่จะอัปโหลดภาพร่างแล้ว!
มันง่ายใช่มั้ย:)
ขั้นตอนที่ 10: ชิปใหม่
หากคุณต้องการตั้งโปรแกรมชิปตัวอื่นให้ถอด Arduino จากพีซีของคุณ ให้แทนที่ชิปด้วยอันเปล่า เชื่อมต่อ Arduino อีกครั้งและทำตามขั้นตอนอีกครั้ง
หากจอภาพอนุกรมไม่ตอบสนองหลังจากเชื่อมต่อ Arduino อีกครั้ง อย่าตกใจเพียงแค่ปิดและเปิดใหม่
ขั้นตอนที่ 11: การปฏิเสธความรับผิด !
ฉันไม่ได้เป็นเจ้าของสิ่งนี้ !! เครดิตทั้งหมดเป็นของ Nick Gammon !!
ฉันเพิ่งแสดงวิธีนี้ในคำแนะนำนี้
หวังว่าคุณจะพบว่าสิ่งนี้มีประโยชน์
ขอให้เป็นวันที่ดี.
ขั้นตอนที่ 12: เมื่อสิ่งแปลก ๆ เกิดขึ้น
เมื่อเร็ว ๆ นี้ฉันได้รับ Arduino Nano พร้อมโปรเซสเซอร์ Atmega328P-MU
ดังนั้นฉันจึงลองอัปโหลดภาพสเก็ตช์ไปยังมัน แต่ก็ทำไม่ได้ โปรเซสเซอร์ไม่ตอบสนองต่อตัวเลือก Atmega328
ตกลง! ดังนั้น bootloader อาจเสียหายและจำเป็นต้องเขียนใหม่ ฉันต่อสายเข้ากับ Arduino ตัวอื่นและทำการเบิร์น bootloader ยังคงไม่มีอะไร……!!!!
โอเค ฉันต้องการเบรก (กาแฟกับบุหรี่)!! เป็นโอกาสสุดท้ายที่ฉันเลือก Arduino Uno อีกครั้งเป็นเป้าหมาย อัพโหลดเสร็จแล้ว:D
ในเวลานี้ฉันมีนาโนที่ทำหน้าที่เหมือน Arduino Uno ฉันไม่รู้ว่าทำไมสิ่งนี้ถึงเกิดขึ้น แต่ฉันคิดว่านี่เป็นเพราะลายเซ็นโปรเซสเซอร์ อย่างไรก็ตามมันทำให้วันของฉันเป็นจริงและมันค่อนข้างตลก:)
แนะนำ:
แฟลช Arduino Bootloader บน ATMega328: 4 ขั้นตอน
แฟลช Arduino Bootloader บน ATMega328: กวดวิชา Questo ci permette di caricare il Bootloader nel caso ใน cui l'ATmega นำเสนอ su una bord di nostra creazione, sia vergine; โฆษณาในรูปแบบ nel caso ใน cui si vuole realizzare la Drivemall
เบิร์น Bootloader ลงใน Arduino Nano 3.0 Clone Board: 11 ขั้นตอน
เบิร์น Bootloader ลงใน Arduino Nano 3.0 Clone Board: เพิ่งซื้อ Arduino Nano 3.0 Clone จาก AliExpress ซึ่งมาโดยไม่มี bootloader ฉันแน่ใจว่ามีคนอีกหลายคนที่อยู่ในสถานการณ์เดียวกับฉัน และในตอนแรกอาจจะรู้สึกตกใจเล็กน้อย ! ไม่ต้องกังวลในคำแนะนำนี้
ดังนั้น คุณโหลด STM32duino Bootloader ใน "Blue Pill" ของคุณแล้วตอนนี้ล่ะ: 7 ขั้นตอน
ดังนั้นคุณโหลด STM32duino Bootloader ใน "Blue Pill" ของคุณ…แล้วตอนนี้ล่ะ?: หากคุณอ่านคำแนะนำของฉันแล้วอธิบายว่าโหลด STM32duino bootloader หรือเอกสารอื่นใดที่คล้ายคลึงกันคุณลองโหลดตัวอย่างโค้ดและ…. อาจไม่มีอะไร เกิดขึ้นเลย ปัญหาคือ หลายๆ ตัวอย่างสำหรับ "ทั่วไป" STM32 จะ
วิธีเบิร์น Bootloader ไปยัง Atmega328p-AU (SMD): 5 ขั้นตอน
วิธีเบิร์น Bootloader ไปยัง Atmega328p-AU (SMD): สวัสดีทุกคน!! ในคำแนะนำนี้ฉันจะแสดงวิธีเบิร์น Bootloader ontp Atmega328p-AU (SMD) ชิปและวิธีสร้าง Arduino NANO ตั้งแต่ต้นจนจบ ขั้นตอนที่เขียนใน คำแนะนำนี้สามารถใช้เพื่อสร้างบอร์ด Arduino สำหรับคุณ
Bootloader บน ATMEGA328P-PU: 6 ขั้นตอน
Bootloader บน ATMEGA328P-PU: ใน questo articolo faremo l'upload del bootloader ใน un ATMEGA328P-PU utilizzando un Arduino Mega 2560 ในส่วนนี้ เราจะอัปโหลด bootloader ไปยัง ATMEGA328P-PU โดยใช้ Arduino Mega 2560