สารบัญ:

การเขียนโปรแกรมชิปด้วย Arduino ของคุณ - AVR ISP ที่ครอบคลุม ATTiny85, ATTiny2313 และ ATMega328: 3 ขั้นตอน
การเขียนโปรแกรมชิปด้วย Arduino ของคุณ - AVR ISP ที่ครอบคลุม ATTiny85, ATTiny2313 และ ATMega328: 3 ขั้นตอน

วีดีโอ: การเขียนโปรแกรมชิปด้วย Arduino ของคุณ - AVR ISP ที่ครอบคลุม ATTiny85, ATTiny2313 และ ATMega328: 3 ขั้นตอน

วีดีโอ: การเขียนโปรแกรมชิปด้วย Arduino ของคุณ - AVR ISP ที่ครอบคลุม ATTiny85, ATTiny2313 และ ATMega328: 3 ขั้นตอน
วีดีโอ: how to Program 8051 bootloader ICs (3/3) 2024, พฤศจิกายน
Anonim
ชิปการเขียนโปรแกรมด้วย Arduino ของคุณ - AVR ISP ครอบคลุม ATTiny85, ATTiny2313 และ ATMega328
ชิปการเขียนโปรแกรมด้วย Arduino ของคุณ - AVR ISP ครอบคลุม ATTiny85, ATTiny2313 และ ATMega328
ชิปการเขียนโปรแกรมด้วย Arduino ของคุณ - AVR ISP ครอบคลุม ATTiny85, ATTiny2313 และ ATMega328
ชิปการเขียนโปรแกรมด้วย Arduino ของคุณ - AVR ISP ครอบคลุม ATTiny85, ATTiny2313 และ ATMega328

ฉันพบสิ่งนี้เป็นฉบับร่างเมื่อหลายปีก่อน อย่างน้อยก็ยังมีประโยชน์สำหรับฉัน ดังนั้นฉันจะเผยแพร่มัน!

คำแนะนำนี้เป็นการรวบรวมความรู้ที่รวบรวมจากทั่ว 'เน็ตและ' 'nstructables ครอบคลุมการเขียนโปรแกรมไมโครคอนโทรลเลอร์ AVR โดยใช้ตัวอย่างของ ATTiny85, ATTiny2313 และ ATMega328 กับ Arduino ฉันได้ใช้เทคนิคนี้เพื่อสร้าง Gizmos ต่างๆ ในช่วงหลายปีที่ผ่านมา และได้ใช้มันเพื่อเรียกคืน Arduinos ที่สูญหายไปในโครงการต่างๆ แทนที่ด้วย ATMega328 ที่ "บูตโหลด" และส่วนประกอบจำนวนหนึ่ง คำแนะนำนี้เหมือนกับหลาย ๆ คนที่สร้างขึ้นบนไหล่ของยักษ์ มีแหล่งข้อมูลมากมายและฉันหวังว่าจะรวมไว้ทั้งหมด ผู้มีส่วนร่วมที่ใหญ่ที่สุดบางคนคือ:Arduino to Breadboardบล็อกไฮเทคระดับสูงของ Lady Ada AVR Dude TutorialRandal Bohn's Arduino Sketch หากคุณต้องการเรียนรู้เกี่ยวกับกระบวนการนี้จริงๆ คุณควรตรวจสอบแหล่งที่มาทั้งหมด ระบุไว้เนื่องจากมีกลเม็ดและเคล็ดลับที่เป็นประโยชน์เมื่อสิ่งต่างๆ หยุดทำงาน ตกลงเราพร้อมหรือยัง? มารวบรวมเครื่องมือของเรากัน ต่อจากนี้ไป เราจะดูโค้ดที่ทำงานหนักทั้งหมด จากนั้นดูตัวอย่างบางส่วนด้วย Arduino IDE และเราจะเดินทางสั้น ๆ สู่ด้านมืดด้วย AVRDude!

ขั้นตอนที่ 1: รวบรวมเครื่องมือของคุณ

นี่เป็นการตั้งค่าที่ค่อนข้างง่าย ฉันไม่เคยพบว่าตัวเก็บประจุเป็นปัญหาเมื่อใช้ Arduino uno อย่างเป็นทางการเป็นฐาน ดังนั้นสิ่งนี้อาจดูเปล่าประโยชน์สำหรับบางคนที่มีประสบการณ์เกี่ยวกับการเขียนโปรแกรม AVR คุณจะต้องการ:

  • Arduino Uno
  • เขียงหั่นขนม
  • สายจัมเปอร์
  • ไฟ LED สามดวงและตัวต้านทานสามตัวสำหรับ 5V

และชิป AVR ที่คุณเลือก

  • ATTiny85
  • ATTiny2313
  • ATMega328

คุณไม่ต้องการไฟ LED จริง ๆ แต่มีประโยชน์มากที่จะรู้ว่าโปรแกรมเมอร์ของคุณทำงานหรือหากคุณมีข้อผิดพลาด เกี่ยวกับชิป AVR คุณสามารถตั้งโปรแกรม AVR ส่วนใหญ่ด้วยวิธีนี้ได้ตราบเท่าที่คุณรู้ว่า RST, MISO, MOSI และ SCK อยู่ที่ใด ข้อยกเว้น (ที่นึกได้) คือ ATTiny10 และที่คล้ายคลึงกัน พวกเขาใช้วิธีอื่น

ขั้นตอนที่ 2: ตั้งค่าโปรแกรมเมอร์ของคุณ

ตั้งค่าโปรแกรมเมอร์ของคุณ
ตั้งค่าโปรแกรมเมอร์ของคุณ

มาตั้งค่าฮาร์ดแวร์กันก่อน เราจะเชื่อมต่อไฟ LED เพื่อดูว่ากระดานจะฟื้นคืนชีพเมื่อใด ตรวจสอบไดอะแกรมด้านล่าง ใส่ขาที่สั้นกว่าของไฟ LED ลงใน -ve หรือสายกราวด์บนเขียงหั่นขนมนั่นคืออันที่มีลวดสีดำเข้าไป ขออภัยหากสิ่งที่ฉันพูดไปดูเหมือนเป็นการอุปถัมภ์ในทางใดทางหนึ่ง แต่ฉันจำได้จริงๆ ว่าการเริ่มต้นใช้งานอุปกรณ์อิเล็กทรอนิกส์เป็นอย่างไร ความรู้มากมายและสิ่งเล็กๆ น้อย ๆ ทำให้ฉันอดใจไม่ได้อยู่พักหนึ่ง! หากคุณยังไม่ได้ดาวน์โหลด ให้ดาวน์โหลด Arduino IDE เวอร์ชันล่าสุดจากเหล่าคนหล่อที่ Arduino หากคุณไม่ได้ใช้ Arduino อย่างเป็นทางการ คุณอาจพบปัญหาบางอย่างในวิธีนี้หรืออาจไม่ใช่ คุณอาจต้องการส่งเงินเบียร์ให้พวกเขาด้วย เนื่องจากพวกเขาทำผลงานได้ดี และในฐานะชุมชน เราก็เป็นหนี้พวกเขาอยู่มาก! แล้วคุณมี IDE หรือไม่? (นั่นคือซอฟต์แวร์ที่คุณเพิ่งดาวน์โหลด - IDE ย่อมาจาก Integrated Development Environment btw) ติดตั้งและเสียบ Arduino ของคุณ คุณสามารถใช้ไดรเวอร์ที่มาพร้อมกับ IDE หากคอมพิวเตอร์ของคุณไม่รับ Uno ทันที ตอนนี้เปิดไฟ IDE Arduino IDE มาพร้อมกับภาพร่าง AVRISP ที่พร้อมใช้งานใน >ตัวอย่าง แต่มันเก่ามาก ตรงไปที่ Github ผ่านลิงค์นี้ คลิกบนหน้าจอที่มีข้อความทั้งหมด กด Control ค้างไว้ กด A เพื่อเลือกทั้งหมด ตอนนี้กด control ค้างไว้แล้วกด C เพื่อคัดลอกข้อความทั้งหมด กลับไปที่ Arduino IDE ของคุณและ Control V เพื่อวาง ตรวจสอบให้แน่ใจว่าได้เลือกพอร์ต COM ที่ถูกต้องแล้ว (หากคุณไม่ทราบว่าอันไหนถูกต้อง คุณสามารถคลิกขวาที่คอมพิวเตอร์ในเมนูเริ่มของ Windows (ขออภัยที่ไม่สนับสนุนระบบปฏิบัติการอื่นในขณะนี้!) จากนั้นคลิกตัวจัดการอุปกรณ์และคลิกซ้ายเพื่อ ขยายเมนู Ports (COM & LPT) และควรแสดง Arduino ของคุณเป็น COM อะไรก็ตาม) ตอนนี้อัปโหลดร่าง ทุกอย่างเรียบร้อยดีและไฟ LED ทั้งหมดของคุณควรกะพริบตามลำดับ จากนั้นหนึ่งดวง (ฉันเลือกสีน้ำเงิน) จะเริ่มเต้น พยายามอย่าสะกดจิต ไม่ทำงาน? แสดงความคิดเห็นด้านล่าง แล้วเราจะมาดูกันว่าเราจะช่วยคุณได้อย่างไร! เมื่อคุณใช้งานได้แล้ว ให้บันทึกภาพสเก็ตช์ลงในสมุดสเก็ตช์ของคุณ โดยใช้บันทึกเป็น คุณจะต้องเก็บสิ่งนี้ไว้เพื่อใช้อ้างอิงในอนาคต

ขั้นตอนที่ 3: การบูตเครื่อง ATMega328 - การสร้าง Arduino Clone

การบูตเครื่อง ATMega328 - การสร้าง Arduino Clone!
การบูตเครื่อง ATMega328 - การสร้าง Arduino Clone!

ตอนนี้ฉันเริ่มด้วย ATMega328 เนื่องจากเป็นวิธีที่ง่ายที่สุดที่จะทำ "นอกกรอบ" และมีแอปพลิเคชันทันที เบิร์น bootloader เพื่อทำบอร์ด Arduino หรือ Shrimp ของคุณเอง ตรวจสอบภาพด้านล่าง อย่ากังวลว่าตอนนี้จะดูซับซ้อนกว่าขั้นตอนที่แล้วอย่างทวีคูณ เพราะสมองของคุณกำลังหลอกหลอนคุณ สงบสติอารมณ์แล้วมองใหม่อีกครั้ง สายสีน้ำเงินกับ LED เหมือนกัน คุณทำเสร็จแล้ว ไม่ต้องกังวลกับมัน สายไฟสีดำและสีแดงจาก Arduino ก็เช่นกัน มันคือสายไฟของคุณ เราต้องการเพิ่มพลังงานให้กับชิป ดังนั้นเพิ่มสิ่งเหล่านั้น ตอนนี้เหลือ 4 เส้นครับ สิ่งเหล่านี้จะเชื่อมต่อกับพิน 10 ถึง 13 ของคุณและสำหรับผู้ที่อยากรู้อยากเห็นเหล่านี้คือ:

  • ดิจิตอล 10 - RST (รีเซ็ต)
  • ดิจิตอล 11 - MOSI (มาสเตอร์เอาท์ - สเลฟอิน)
  • ดิจิตอล 12 - MISO (มาสเตอร์อิน - สเลฟเอาต์)
  • ดิจิตอล 13 - SCK (นาฬิกาแบบอนุกรม)

สิ่งที่เรากำลังทำจริงๆ คือการเขียนโปรแกรมชิปโดย SPI Serial Peripheral Interface ซึ่งครอบคลุมอยู่ในบทช่วยสอนที่ยอดเยี่ยมนี้โดย Sparkfun อันยิ่งใหญ่ ตอนนี้ด้วยเหตุผลที่เราดูอันนี้ก่อน ไปที่ >เครื่องมือบน IDE ของคุณ ตอนนี้ >โปรแกรมเมอร์>Arduino เป็น ISP เมื่อตรวจสอบแล้วเราสามารถกลับไปที่ >เครื่องมือ>เบิร์น Bootloader ตอนนี้เราจะเห็นไฟ LED กะพริบและรอสักครู่ ข้อความที่ด้านล่างของ IDE ของคุณควรเปลี่ยนเป็น Bootloading เสร็จสมบูรณ์ในที่สุด เฮ้ presto ชิปบนเขียงหั่นขนมนั้นสามารถเปลี่ยนเป็น Arduino เปล่าได้แล้ว!

แนะนำ: