สารบัญ:
- ขั้นตอนที่ 1: ข้อกำหนด
- ขั้นตอนที่ 2: เชื่อมต่อ Arduino กับพีซี
- ขั้นตอนที่ 3: อัปโหลดรหัส
- ขั้นตอนที่ 4: เชื่อมต่อวงจร
- ขั้นตอนที่ 5: ปักหมุดความเข้าใจ
- ขั้นตอนที่ 6: ดาวน์โหลดไฟล์ Zip
- ขั้นตอนที่ 7: ค้นหารหัสคอนโทรลเลอร์ของคุณ
- ขั้นตอนที่ 8: ตรวจจับการควบคุม
- ขั้นตอนที่ 9: ตั้งค่า Fuse
- ขั้นตอนที่ 10: อัปโหลดไฟล์ Hex
วีดีโอ: Arduino เป็น ISP -- เบิร์นไฟล์ Hex ใน AVR -- ฟิวส์ใน AVR -- Arduino ในฐานะโปรแกรมเมอร์: 10 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:03
………………………
กรุณาสมัครสมาชิกช่อง YouTube ของฉันสำหรับวิดีโอเพิ่มเติม……..
บทความนี้เกี่ยวกับ Arduino เป็น isp
หากคุณต้องการอัปโหลดไฟล์ hex หรือหากคุณต้องการตั้งค่าฟิวส์ใน AVR คุณไม่จำเป็นต้องซื้อโปรแกรมเมอร์ คุณสามารถทำได้ด้วย Arduino
ในบทความนี้ ฉันได้อัปโหลดไฟล์ hex ใน atmega8 หากคุณต้องการอัปโหลดไฟล์ hex ใน AVR อื่น ให้เข้าใจกระบวนการและทำตามขั้นตอนเดียวกัน
……………………
ขั้นตอนที่ 1: ข้อกำหนด
- Arduino uno
- สายจัมเปอร์บางส่วน
- เขียงหั่นขนม
- Crystal oscillator (เป็นทางเลือกหากคอนโทรลเลอร์ของคุณตั้งค่าไว้ที่ออสซิลเลเตอร์ภายนอก)
*** หากคอนโทรลเลอร์ของคุณไม่อยู่ในกล่อง ไม่จำเป็นต้องเชื่อมต่อ Crystal oscillator นี้ ****
ขั้นตอนที่ 2: เชื่อมต่อ Arduino กับพีซี
- เชื่อมต่อ Arduino ของคุณกับ PC
- เปิด arduino IDE แล้วคลิกที่เครื่องมือ
- จากนั้นคลิกที่บอร์ด เลือก Arduino uno
- ตอนนี้คลิกที่พอร์ตด้านล่างบอร์ด เลือกพอร์ตที่ Arduino เชื่อมต่อที่นี่
***** Arduino ของฉันเชื่อมต่อกับ COM2 จำไว้ว่าเราจะใช้ในภายหลัง
ขั้นตอนที่ 3: อัปโหลดรหัส
- ไปที่ไฟล์แล้วตัวอย่าง
- ค้นหาตัวอย่าง ArduinoISP
- อัพโหลดโปรแกรม ArduinoISP
- ไปที่เครื่องมือและเลือกโปรแกรมเมอร์ "arduino as isp"
อย่าสับสนเกี่ยวกับ arduino isp และ arduino เป็น isp ในโปรแกรมเมอร์
ขั้นตอนที่ 4: เชื่อมต่อวงจร
- ที่นี่เราเบิร์นไฟล์ Hex และตั้งค่าฟิวส์ใน Atmega8 โปรดเข้าใจแนวคิดเพื่อให้คุณสามารถเบิร์นไฟล์ hex ใน avr ทุกประเภทผ่าน Arduino
- ต่อวงจรตามภาพ
- Crystal oscillator เป็นตัวเลือกหาก Avr ของคุณตั้งค่าไว้บนฟิวส์ภายนอก ถ้า AVR อยู่นอกกล่อง ก็ไม่จำเป็นต้องเชื่อมต่อสิ่งนี้
ขั้นตอนที่ 5: ปักหมุดความเข้าใจ
- ดังที่คุณเห็นในภาพแรกมีพิน MISO, MOSI และ SCK ซึ่งเราจะเชื่อมต่อกับ Arduino 13, 12, 11 พินตามลำดับ
- ดังที่คุณเห็นในภาพที่สองมีรีเซ็ตพิน ซึ่งเราจะเชื่อมต่อกับพินที่ 10 ของ Arduino
- ในรูปที่สามคุณสามารถดูพิน VCC, AVCC และ GND เชื่อมต่อ AVCC และ VCC กับ 5v ของ arduino, GND ถึง GND ของ arduino
ขั้นตอนที่ 6: ดาวน์โหลดไฟล์ Zip
- ดาวน์โหลดไฟล์ zip ที่ระบุด้านล่าง
- แตกไฟล์ zip
มิเรอร์ Github:
codeload.github.com/vishalsoniindia/Arduin…
ขั้นตอนที่ 7: ค้นหารหัสคอนโทรลเลอร์ของคุณ
วางไฟล์ Hex ของคุณในโฟลเดอร์เดียวกับที่เราดาวน์โหลด ซึ่งคุณจะเห็นไฟล์ cmd.txt
- เปิดไฟล์ cmd.txt ในโฟลเดอร์
- คัดลอกบรรทัดแรกซึ่งก็คือ "avrdude -c arduino -b 19200 -p xyz"
- พิมพ์ cmd ที่แถบด้านบนของพีซีของคุณตามที่แสดงในรูปภาพ
- ที่นี่เทอร์มินัลคำสั่งเปิดขึ้น
- วางสายของคุณและกด Enter
- ในรูปสุดท้ายคุณสามารถเห็นชื่อที่ควบคุมและรหัสควบคุมของฉันคือ m8 สำหรับ atmega8
ขั้นตอนที่ 8: ตรวจจับการควบคุม
- คัดลอกบรรทัดที่สองในไฟล์ taxt ซึ่งก็คือ "avrdude -c arduino -b 19200 -p m8 -P COM2 -n"
- วางในเทอร์มินัลคำสั่ง
- ตอนนี้เปลี่ยนพอร์ต com ของคุณเป็น COM2 ที่ Arduino ของคุณเชื่อมต่ออยู่
- เปลี่ยนรหัสควบคุมของฉันคือ m8
- กดเข้า.
- เมื่อคุณเห็นลายเซ็นของอุปกรณ์และฟิวส์ตกลง แสดงว่าตรวจพบคอนโทรลเลอร์ของคุณ
ขั้นตอนที่ 9: ตั้งค่า Fuse
- คัดลอกบรรทัดนี้ซึ่งก็คือ "avrdude -c arduino -b 19200 -p m8 -P COM2 -U lfuse:w:0xE2:m -U hfuse:w:0xD9:m"
- วางในเทอร์มินัลคำสั่ง
- ตอนนี้เปลี่ยนพอร์ต com ของคุณเป็น COM2 ที่ Arduino ของคุณเชื่อมต่ออยู่
- เปลี่ยนรหัสควบคุมของฉันคือ m8
- ฟิวส์นี้ตั้งค่าไว้ที่ 8MHZ ภายใน หมายความว่าคุณไม่จำเป็นต้องเชื่อมต่อ Crystal oscillator ภายนอก
- กดเข้า.
- ตอนนี้ฟิวส์ถูกตั้งค่าเป็นกระบวนการครั้งเดียวไม่จำเป็นต้องทำในครั้งต่อไป
หากคุณต้องการเปลี่ยนฟิวส์ E2 จะเป็นฟิวส์ที่ต่ำกว่า และ D9 เป็นฟิวส์ที่สูงกว่า คุณสามารถเปลี่ยนได้ตามความต้องการของคุณ
ขั้นตอนที่ 10: อัปโหลดไฟล์ Hex
- คัดลอกบรรทัดสุดท้ายแล้ววางในเทอร์มินัลคำสั่ง
- ที่บรรทัดสุดท้าย คุณจะเห็นชื่อไฟล์ ให้แทนที่ด้วยชื่อไฟล์ฐานสิบหกของคุณ
- กดเข้า.
- หากคุณเห็นการนวดแบบเดียวกับในรูปที่สามของฉัน แสดงว่าไฟล์ฐานสิบหกของคุณถูกเบิร์นใน AVR
ก่อนหน้านี้ให้วางไฟล์ hex ของคุณในโฟลเดอร์เดียวกัน ซึ่งคุณจะเห็นไฟล์ cmd.txt
ตอนนี้เปลี่ยนพอร์ต com ของคุณเป็น COM2 ที่ Arduino ของคุณเชื่อมต่ออยู่
เปลี่ยนรหัสควบคุมของฉันคือ m8
….ทุกอย่างเสร็จเรียบร้อย……. โฮ้โฮ้โฮ้..