สารบัญ:
- ขั้นตอนที่ 1: การตั้งค่าที่จะทำ:
- ขั้นตอนที่ 2: การตั้งค่าประเภทอุปกรณ์ของคุณ
- ขั้นตอนที่ 3: ออก READ ALL หรือ READ FLASH
- ขั้นตอนที่ 4: เขียนลง Flash (ไฟล์ Hex ของคุณแฟลชเป็น ROM บนชิป)
- ขั้นตอนที่ 5: ฟิวส์: วิธีตั้งค่าใน EXtreme Burner
- ขั้นตอนที่ 6: การตั้งค่าฟิวส์โดยใช้เครื่องคำนวณฟิวส์ EXtreme Burner
- ขั้นตอนที่ 7: ค่าสุดท้ายของ Fuse Bits
- ขั้นตอนที่ 8: เสร็จสิ้น
วีดีโอ: การใช้ EXtreme Burner สำหรับการเขียนโปรแกรมไมโครคอนโทรลเลอร์ AVR: 8 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:06
พี่น้องผู้ใช้ AVR ทั้งหมดของคุณและผู้ที่เพิ่งเข้าสู่สตรีม พวกคุณบางคนเริ่มต้นด้วยไมโครคอนโทรลเลอร์ PIC และบางคนเริ่มต้นด้วย ATMEL AVR สิ่งนี้เขียนขึ้นสำหรับคุณ!
คุณจึงซื้อ USBASP เนื่องจากราคาถูกและมีประสิทธิภาพในการแฟลช ROM บนอุปกรณ์ Atmega ของคุณ หรืออาจเป็นช่วง ATTINY สามารถรับได้ในราคาต่ำกว่า 5$ เป็นโคลนจีนของโอเพ่นซอร์ส USB-ASP ! AVRdude เป็นซอฟต์แวร์สำหรับตั้งโปรแกรม
คุณไม่ต้องสงสัยเลยว่าจะสร้างไฟล์ Hex โดยใช้ Atmel Studio ได้อย่างไร (ฉันยังคงใช้ AVR Studio v4.19 แทน v7 ล่าสุด เพราะมันเร็วกว่าและเร็วกว่าบนแล็ปท็อปซีพียูแบบ single core ของฉัน)/ ติดตั้งเน็ตบุ๊กและ WINAVR หากคุณกำลังอ่านข้อความนี้.สิ่งที่เขียนใน DotNet ทำงานช้า ! และรุ่นที่ใหม่กว่าได้รับการออกแบบมาเพื่อให้แล็ปท็อปของคุณทำงานเหมือนเต่า ! คุณสามารถใช้ Studio v4.19 ซึ่งเป็นเวอร์ชันที่ดีที่สุดของ Studio จาก ATMEL สำหรับไมโครคอนโทรลเลอร์ AVR สลับไปใช้เวอร์ชัน 7 เมื่อคุณต้องการจริงๆ สำหรับชิปในภายหลัง และทำให้เวลาของคุณบนแล็ปท็อปมีประสิทธิผลมากขึ้น ทำงานแทนการรอ ! นี่คือสิ่งที่ฉันแนะนำ
บรรทัดคำสั่ง AVR ทั่วไปสำหรับโปรแกรม Atmega ด้วยไฟล์ Hex ทำงานดังนี้:
เขียนเป็นแฟลช:AVRdude -s -c avrisp -p t44 -P usb -U "flash:w:D:\ARDUINO\pwmeg1.hex:a"
ที่นี่ pwmeg1.hex เป็นไฟล์ Intel hex ที่จะ "เบิร์น" หรือ "กะพริบ" ลงใน "MCU เป้าหมาย" ในไมโครคอนโทรลเลอร์ Lingo
นั่นเป็นคำที่ต้องจำ ! คุณสามารถเขียนไฟล์แบตช์และเรียกใช้ในบรรทัดคำสั่งใน windows โดยตั้งชื่อเป็น write_flash.bat ในทำนองเดียวกันสำหรับการอ่านฟิวส์ อีกหนึ่งบรรทัดที่ต้องจำ ! มันน่าเบื่อ
สำหรับอ่านแฟลช + eeprom:AVRdude -s -c avrisp -p t44 -P usb -U "flash:r:D:\ARDUINO\pwmeg1.hex:i" -U "eeprom:r::i"
วิธีแก้ปัญหาคือการใช้หนึ่งในเครื่องมือส่วนหน้า GUI ที่เป็นมิตรกับผู้ใช้กับ AVRdude เช่น Bitburner โปรแกรมเมอร์ Khazama ซึ่งเกือบจะคล้ายกันในด้านบุญ เอ็กซ์ตรีม เบิร์นเนอร์ ฉันได้ใช้เครื่องมือที่ใช้งานได้ฟรี: eXtreme Burner ใช้งานได้หลากหลาย เชื่อถือได้ และบทช่วยสอนนี้เกี่ยวกับเรื่องนี้ มันไม่เพียงแต่สามารถแฟลชไฟล์ hex / โปรแกรมของคุณไปที่ MPU โดยใช้คำสั่งที่ออกให้กับ AVRdude ในพื้นหลัง มันยังช่วยให้คุณตั้งค่า FUSES ซึ่งเป็นหัวข้อที่ซับซ้อนซึ่งมักจะสร้างความสับสนให้กับผู้เริ่มต้นในการเขียนโปรแกรม AVR นี่คือลิงค์ไปยังบทช่วยสอนที่ยอดเยี่ยมเกี่ยวกับ FUSES ที่คุณสามารถอ่านหรือทบทวนได้ คำเตือน: ATMEL ใช้สถานะ '1' ของบิต FUSE เพื่อระบุสถานะ 'เริ่มต้น' (สถานะไม่ได้ตั้งค่าหรือไม่ได้ตั้งโปรแกรมไว้) และ '0' เพื่อระบุสถานะที่ตั้งโปรแกรมหรือตั้งค่าหรือเปิดใช้งาน! สิ่งนี้ตรงกันข้ามกับสิ่งที่คุณทำกับ FUSE bits ในไมโครคอนโทรลเลอร์ PIC โปรดใช้ความระมัดระวังเมื่อคุณปรับเปลี่ยนบิตฟิวส์นาฬิกา เช่น ทำให้นาฬิกา RC ภายในเปลี่ยนเป็นคริสตัลภายนอก เนื่องจากจะทำให้เกิดปัญหาในการเชื่อมต่อกับชิปโดยไม่ต้องตั้งค่าคริสตัลภายนอก ระวังเช่นเดียวกันเมื่อคุณเปลี่ยนสถานะของฟิวส์บิตที่สำคัญ เช่น SPIEN และ RESET DISABLE (ควรตั้งค่าเหล่านี้เป็น SPIEN = 0 และ RESET DISABLE = 1 เสมอ หากคุณต้องการสื่อสารกับ MCU ด้วย USB-ASP ของคุณในโหมด ISP / SPI ต่อไป หากคุณทำสิ่งนี้ผิดพลาด คุณจะต้องใช้โปรแกรมเมอร์ไฟฟ้าแรงสูงเพื่อ 'ปลดเปลื้อง' AVR ของคุณ
หากคุณสงสัยว่า "ฟิวส์คืออะไร" และ "มันทำอะไร" ? อ่านบทความดีๆ แบบนี้:
หัวข้อที่เกี่ยวข้องอีกหัวข้อหนึ่งคือวิธีตั้งค่าความเร็วนาฬิกาของ AVR MPU ของคุณซึ่งมีความเร็วตั้งแต่ 1Mhz สูงสุด 16 หรือ 20Mhz นอกจากนี้ยังมีตัวเลือกคริสตัลความถี่ต่ำพลังงานต่ำพิเศษ 31.25kHz ซึ่งหากได้รับการออกแบบอย่างเหมาะสมจะทำให้ AVR ของคุณหมดแบตเตอรี่ AA เป็นเวลา 3 เดือน!
ทั้งสองสิ่งนี้ บิตฟิวส์นาฬิกา (ทั้งความถี่และประเภทของนาฬิกา RC ภายใน/คริสตัลภายนอก และบิตฟิวส์อื่นๆ) สามารถตั้งค่าได้ผ่านแท็บ FUSES ใน eXtreme Burner ขั้นแรก เราจะแสดงให้คุณเห็นอ่าน ROM แล้วจึงจะแฟลชไฟล์ hex โดยใช้ eXtreme Burner ได้อย่างไร แน่นอน คุณสามารถใช้เว็บไซต์ฟิวส์ AVR ออนไลน์ได้เช่นกัน แต่ตัวเลือกที่ฉันอธิบายสามารถใช้ได้เมื่อคุณออฟไลน์เช่นกัน ทุกที่
ขั้นตอนที่ 1: การตั้งค่าที่จะทำ:
รูปภาพแสดงการตั้งค่าที่ต้องทำก่อนเริ่มงาน (มีเพียงครั้งเดียวเท่านั้น) ภายใต้รายการเมนูย่อย 'การตั้งค่าฮาร์ดแวร์' เราเลือก 375Hz เนื่องจาก MCU ส่วนใหญ่จากโรงงาน ATMEL ถูกตั้งค่าเป็นการตั้งค่าเริ่มต้นของนาฬิกา CPU 1 Mhz บนออสซิลเลเตอร์ RC ภายใน ความเร็วของ ISP คือหนึ่งในสี่ของ F_cpu นั่นทำให้เรามีความเร็วที่ใกล้ที่สุด 375 Khz คุณสามารถลดความเร็วลงได้เช่นกัน มันจะไม่สร้างความแตกต่างมากนัก คุณสามารถลองเชื่อมต่อโดยปล่อยให้สิ่งนี้เป็นค่าเริ่มต้นและออก 'read all' หากล้มเหลวคุณสามารถมาที่นี่และเปลี่ยนความเร็วทำให้ต่ำลงได้
เพราะหากคุณไม่สามารถเชื่อมต่อได้ (จะมีข้อความขึ้นในหน้าต่างโปรแกรมเมอร์ว่า "ไม่สามารถสื่อสารกับชิป ไม่สามารถ SCK" หมายความว่าสัญญาณนาฬิกาจากพีซีของคุณไม่สามารถซิงโครไนซ์กับชิปของคุณที่คุณกำลังพยายามอ่านหรือ โปรแกรม) คุณจะไม่สามารถเปลี่ยนความเร็วนาฬิกาของ CPU หรือเปลี่ยนความเร็วและประเภทได้ ! ดังนั้นการเชื่อมต่อจึงเป็นพื้นฐานของทุกสิ่ง ! มันเหมือนกับ "FIRST CONTACT" อย่างที่คุณเห็นในภาพยนตร์ของสปีลเบิร์ก หากคุณทำสำเร็จ คุณสามารถเพิ่มความเร็วสัญญาณนาฬิกาของ MCU ได้เสมอโดยตั้งโปรแกรมฟิวส์ให้สอดคล้อง จากนั้นใช้ความเร็วสูงขึ้นในการเชื่อมต่อในภายหลัง
ไปที่ภาพรวมการตั้งค่าฮาร์ดแวร์ที่มีให้ที่นี่ จากนั้นตั้งค่าประเภทอุปกรณ์ด้วย (ชิปที่คุณพยายามตั้งโปรแกรม หมายเลขรุ่น)
ขั้นตอนที่ 2: การตั้งค่าประเภทอุปกรณ์ของคุณ
ดูภาพหน้าจอ Pic 1 เราได้ตั้งค่า "ATTINY44A" นี่คือไมโครคอนโทรลเลอร์ 14 พิน sans UART ฉันเพิ่งใช้เวอร์ชัน SSU นี้ หากคุณติดตั้งเวอร์ชันสต็อก Extreme burner คุณจะไม่เห็น Attiny44A ในรายการแบบเลื่อนลงการเลือกอุปกรณ์ คุณจะเห็น Attiny44 ซึ่งสำหรับวัตถุประสงค์ทั้งหมดที่เราสามารถใช้เพื่อตั้งโปรแกรม Attiny44A ได้เช่นกัน เพื่อแนะนำอุปกรณ์ใดๆ ที่ไม่อยู่ในรายการแบบเลื่อนลงนี้, อ่านคำแนะนำอื่น ๆ ของฉัน "การแฮ็ก eXtreme Burner"
ฉันใช้ Atmega88PA-AU กับ eXtreme Burner แล้ว แต่ในคำแนะนำนี้เราพูดถึง "Attiny44A" ทุกที่ ตอนนี้คุณจะทำรุ่นเขียงหั่นขนมของชิป SMD สี่เหลี่ยมจัตุรัสขนาดเล็ก 7 มม. และทดสอบกับโปรแกรมของคุณได้อย่างไร (ดูรูปที่แสดงขนาดชิป) สำหรับสิ่งนี้ ดูคำแนะนำอื่น ๆ ของฉันที่ฉันสาธิตวิธีทำให้ Breadboard เหมาะสมกับโมดูลปลั๊กอินโดยใช้ Attiny44A-SSU และ ATmega88PA-AU
เมื่อคุณเรียนรู้เทคนิคนี้แล้ว คุณจะสามารถตรวจสอบชิปใดๆ ที่คุณอยากรู้ได้ ไม่ว่าจะเป็นแพ็คเกจ SMD หรือ DIL ตัวอย่างเช่น ฉันเคยใช้แม้กระทั่งชิป SMD ที่มาในแพ็คเกจ Quad pitch ขนาดพินพิทช์ขนาด 32 พิน 0.8 มม. (Atmega88A) ในลักษณะเดียวกัน!
. หรือคุณสามารถใช้ Attiny44A รุ่น 28pin DIL สำหรับคำแนะนำนี้หรือ AVR ใดก็ตามที่คุณใช้อยู่ในขณะนี้เพื่อทดลองใช้ eXtreme Burner สำหรับการเขียนโปรแกรม AVR
ขั้นตอนที่ 3: ออก READ ALL หรือ READ FLASH
เชื่อมต่อ USBasp ของคุณเข้ากับพอร์ต USB ของแล็ปท็อป ฉันคิดว่าคุณได้โหลดไดรเวอร์ที่ถูกต้องซึ่งมาพร้อมกับโปรแกรมเมอร์ของคุณแล้วและตรวจพบอย่างถูกต้อง ควรปรากฏภายใต้ 'อุปกรณ์และเครื่องพิมพ์' ในเมนูเริ่มต้นของ windows หากเป็นเช่นนั้น ทันทีที่เสียบเข้ากับพอร์ต USB! เชื่อมต่อชิปเป้าหมายของคุณบนบอร์ดกับ USBasp ของคุณ (ต้องเชื่อมต่อพิน SDI// ISP ที่เกี่ยวข้องโดยใช้สายเคเบิล 6 พินหรือ 10 พินระหว่างสองพิน ได้แก่ MOSI, RESET, MISO, SCK, Vcc, Ground)
ออก READ ALL จาก MENU ของ Xtreme Burner ดูภาพและข้อความที่เราได้รับ ในขั้นต้น หน้าจอของคุณแสดง 'FF' สำหรับ ROM ในแท็บแรกของตัวเบิร์น หลังจากอ่านทั้งหมดแล้ว มันจะแสดงเนื้อหา ROM จริงบนชิป หากคุณใช้ชิปใหม่จากโรงงานหรือชิปที่ถูกลบ คุณจะเห็น FF ในเนื้อหาหลังจาก "อ่านทั้งหมด" ชิปที่ไม่ได้ตั้งโปรแกรมจะแสดง 'FF' ในหน่วยความจำ ดังนั้น EEPROM (แท็บที่สองในโปรแกรมเมอร์) จะแสดง 'FF' แท็บสุดท้ายจะแสดงฟิวส์
หลังจากอ่านทั้งหมด 3 แท็บจะแสดงข้อมูลที่ถูกต้องในชิป ก่อนหน้านั้นจะไม่เป็นเช่นนั้น ให้ออก Read all ก่อน ทันทีที่คุณเชื่อมต่อทุกอย่าง
ขั้นตอนที่ 4: เขียนลง Flash (ไฟล์ Hex ของคุณแฟลชเป็น ROM บนชิป)
เลือกไฟล์โดยใช้กล่องโต้ตอบเรียกดูที่เปิดขึ้นเมื่อคุณคลิกที่ไอคอนแรกในแถบเมนูด้านบน เราเลือกหนึ่งไฟล์ตามที่คุณเห็นในรูป เมื่อคุณเลือกไฟล์ฐานสิบหก (รูปแบบ intel hex) แถบเมนูที่แสดงว่า "ไม่มีการโหลดไฟล์" จะเปลี่ยนเป็นชื่อไฟล์ที่คุณโหลด
ตอนนี้ออก Write Flash จากเมนูของซอฟต์แวร์ ข้อความจะแสดงให้คุณเห็นว่าเกิดอะไรขึ้น ดูภาพ
หลังจากเขียนสำเร็จแล้ว คุณจะเห็น 'FF' ที่ทำเครื่องหมายการเปลี่ยนแปลง ROM ใหม่หรือที่ถูกลบไปยังสิ่งที่โปรแกรมหรือไฟล์ hex มีอยู่ ขนาดหรือจำนวนไบต์ที่ไฟล์ของคุณใช้ใน ROM นั้นรู้จักคุณเช่นกันโดยดูที่หน้าจอนี้ ซึ่งจะแสดงเนื้อหา ROM จริงของชิปเป้าหมายที่คุณเพิ่งแฟลชเมื่อกี้
ขั้นตอนการตรวจสอบทำได้โดยการอ่านชิปตามการตั้งค่าที่เราทำในขั้นตอนแรก สิ่งนี้เห็นได้ในข้อความที่ยืนยันว่าการตรวจสอบสำเร็จด้วย
ขั้นตอนที่ 5: ฟิวส์: วิธีตั้งค่าใน EXtreme Burner
เมื่อคุณออก READ ALL ฟิวส์จะถูกอ่านจากชิป นั่นคือรูปแรกที่แสดง fuses.jpg
ตอนนี้บางทีคุณอาจต้องเปลี่ยนเป็นอย่างอื่น ฟิวส์ประกอบด้วยกล่อง 4 กล่องในแท็บสุดท้ายบนหน้าจอ eXtreme Burner ของคุณ กล่าวคือ LOW FUSE BYTE, HIGH FUSE BYTE, EXTENDED FUSE BYTE, LOCK FUSE BYTE และ CALIBRATION BYTE ตามลำดับที่แสดง
คุณสามารถใช้เครื่องคิดเลขฟิวส์ออนไลน์และกรอกข้อมูลได้เช่นเดียวกับที่
eleccelerator.com/fusecalc/fusecalc.php?
หรือคุณสามารถใช้ eXtreme burner ทำเพื่อคุณ ออฟไลน์ได้ตลอดเวลา: เลือกจากรายการดรอปดาวน์ที่ปรากฏขึ้นเมื่อคุณคลิกที่ปุ่ม DETAILS ซึ่งอยู่ด้านล่างฟิวส์แต่ละประเภท เพียงดับเบิลคลิกที่บรรทัดใดก็ได้ในหน้าจอ DETAILS และดูมันเปลี่ยนจาก SET เป็น CLEARED และสลับสถานะด้วยการคลิกเมาส์ของคุณในแต่ละบรรทัด Fuse Byte ในกล่องด้านบนจะเปลี่ยนไปตามนั้น
หากคุณสงสัยว่า "ฟิวส์คืออะไร" และ "มันทำอะไร" ? อ่านเขียนที่ยอดเยี่ยมนี้:
www.instructables.com/id/Avr-fuse-basics-Running-an-avr-with-an-external-cl/
ขั้นตอนที่ 6: การตั้งค่าฟิวส์โดยใช้เครื่องคำนวณฟิวส์ EXtreme Burner
คุณสามารถดูหน้าจอรายละเอียดที่ปรากฏสำหรับแต่ละไบต์ฟิวส์ (LOW, HIGH, EXTENDED, LOCK และ Calibration) ไบต์การสอบเทียบควรไม่เปลี่ยนแปลง เนื่องจากจะแสดงไบต์ข้อมูลการสอบเทียบใน AVR ที่ใช้กับ RC oscillator ภายใน ไบต์ LOCK มักจะเป็น FF เท่านั้น (ไม่ได้กล่าวถึงในรูปด้านบน) เนื่องจากคุณจะไม่ล็อก Flash หรือ EEPROM ขณะอยู่ในขั้นตอนการเรียนรู้ คุณจะเปลี่ยนเฉพาะไบต์ LOW, HIGH และ EXTENDED ระวัง !
หากคุณเปลี่ยนบิต SPIEN เป็น 1 (สถานะที่ไม่ได้ตั้งโปรแกรมคือ 1 ในไมโครคอนโทรลเลอร์ AVR) คุณจะไม่สามารถสื่อสารกับชิปของคุณโดยใช้ USBASP หรือโปรแกรมเมอร์ใด ๆ ได้! สถานะเริ่มต้นจะแสดงในหน้าจอของคุณสำหรับฟิวส์แต่ละบิตด้วย สิ่งนี้เตือนคุณว่าค่าเริ่มต้นของ SPIEN เป็น 0 เสมอ (สถานะที่ตั้งโปรแกรมไว้) เพื่อให้คุณสามารถใช้โหมด SPI สำหรับการเขียนโปรแกรม ISP Debug-wire หรือ DW bit จะเหลือ 1 เสมอ (ไม่ได้ตั้งโปรแกรมไว้) เมื่อ SPIEN ถูกตั้งค่าเป็น 0 นี่เป็นสถานะเริ่มต้นเช่นกัน นอกจากนี้ ใน Extended Fuse bits 'Self Programming Enable ควรเป็น '1' (ไม่ได้ตั้งโปรแกรมไว้) หากคุณใช้ USB-ASP เพื่อตั้งโปรแกรมชิปเป้าหมายของคุณ (ไม่ใช้ bootloader ROM เหมือนใน ARDUINO)
คุณสามารถเปลี่ยนบิต CLOCK (ตัวเลข 3 ตัว) เพื่อเลือก RC ภายในหรือคริสตัลภายนอก ปกติแล้วฉันจะปล่อยให้ RC ภายในซึ่งช่วยให้คุณได้รับ 2 พินพิเศษที่ทำให้คริสตัลภายนอกว่างเพื่อใช้เป็นพิน PORT สำหรับโครงการ AVR ของคุณ โดยปกติจำเป็นต้องใช้คริสตัลภายนอกเมื่อคุณต้องการเวลาที่มีความแม่นยำสูงในโครงการของคุณ สำหรับผู้เรียน RC ภายในก็เพียงพอแล้ว
โดยปกติเมื่อคุณใช้ฟิวส์แบบผสมแล้วคุณจะไม่ทำการเปลี่ยนแปลง มันจะเป็นครั้งเดียว คุณจะกระพริบเฉพาะ ROM หรือบางครั้ง EEPROM ด้วย สำหรับการแฟลชไฟล์.eep ที่แยกจากกันของ EEPROM จะถูกสร้างขึ้นโดยสตูดิโอ WINAVR / ATMEL ของคุณ หากโปรแกรมของคุณใช้ EEPROM เพื่อจัดเก็บข้อมูล มิฉะนั้น EEPROM จะไม่ถูกใช้งาน ซึ่งเต็มไปด้วยข้อมูล 'FF' ที่แสดง 'NO DATA state' ของ EEPROM
ขั้นตอนที่ 7: ค่าสุดท้ายของ Fuse Bits
หลังจากตั้งค่า Fuse bits ทั้งหมด และปิดกล่อง DETAILS ที่คุณใช้ คุณจะเห็นค่าของ Fuse bits ตามที่โปรแกรมคำนวณ (ดูรูป) ที่เหลือก็แค่ออก "เขียนฟิวส์" โดยใช้เมนู แล้วดูข้อความที่รายงานเขียนสำเร็จ ต่อมา คุณยังสามารถออกคำสั่ง READ ALL จากเมนู และตรวจดูว่าฟิวส์ที่อ่านใน TAB สุดท้ายของหน้าจอเครื่องเขียนนั้นตรงกับที่คุณต้องการเขียนไปยังชิปหรือไม่ (การตรวจสอบฟิวส์).
คุณจะสังเกตเห็นว่าในตอนเริ่มต้นของคำแนะนำนี้เมื่อเราทำ READ FUSES หน้าจอจะแสดงค่า FUSE เดียวกันกับที่เราเห็นที่นี่ ! นั่นเป็นเพราะฟิวส์เหล่านี้เป็นฟิวส์ที่ฉันมักใช้และไม่ค่อยเปลี่ยนเมื่อฉันตั้งค่าไว้ใน MCU ของฉัน เว้นแต่ฉันจะเปลี่ยนความถี่จาก 1 Mhz เป็น 4Mhz สำหรับบางโครงการ AVR สามารถตั้งค่าได้สูงสุด 20Mhz (ชิปบางตัวไม่เกิน 16Mhz) ความถี่ที่คุณตั้งไว้สำหรับ F_cpu ก็ขึ้นอยู่กับแรงดันไฟที่คุณจ่ายให้กับชิปด้วย ! ตัวอย่างเช่น หากชิปของคุณทำงานตั้งแต่ 1.8V ของ Vcc จนถึง 5.5V ของ Vcc (เอกสารข้อมูลอ้างอิง) คุณจะไม่คาดหวังว่าจะใช้ Chip ของคุณที่ 20 mhz หากคุณจ่ายไฟเพียง 1.8V ให้กับมัน! คุณคาดหวังกับมันมากเกินไป! ตารางในแผ่นข้อมูลจะบอกคุณว่าความถี่ของแรงดันไฟฟ้าอยู่ที่ตัวเลขใด ยิ่งความถี่ในการทำงานของชิปสูงเท่าใด ความร้อนก็จะยิ่งมากขึ้นและใช้พลังงานมากขึ้นเท่านั้น คิดถึงความถี่เหมือนการเต้นของหัวใจของสัตว์ นกฮัมมิงเบิร์ดที่มีอัตราการได้ยินสูงจะมีอัตราการเผาผลาญพลังงานต่อนาทีสูงกว่าเมื่อเทียบกับวาฬหรือช้างที่มีการเต้นของหัวใจต่ำกว่ามาก ! แต่ก็สามารถทำได้มากขึ้นในเวลาอันสั้น MCU เป็นเช่นนั้น
ขั้นตอนที่ 8: เสร็จสิ้น
ตอนนี้คุณได้ทำตามขั้นตอนทั้งหมดใน eXtreme burner แล้ว คุณได้อ่าน ROM ของชิปแล้ว คุณเปิดไฟล์ HEX แล้วแฟลชไปที่ชิปและตรวจสอบว่าแฟลชใช้ได้ คุณยังได้เรียนรู้วิธีตั้งค่าฟิวส์และแฟลชไปยังชิป.
หากคุณมีคำถามใด ๆ ฉันยินดีที่จะตอบหรือแก้ไขบทช่วยสอนเพื่อให้ชัดเจนยิ่งขึ้น
สำหรับชิปบางตัว คุณอาจพบว่ารายการของชิปนั้นหายไปในรายการดรอปดาวน์การเลือกชิปในเมนู หรือคุณอาจพบข้อผิดพลาดในการเขียนและตรวจสอบข้อผิดพลาด ในกรณีเช่นนี้ โปรดอ่าน "การแฮ็ก eXtreme Burner" ที่สอนได้อื่นๆ ของฉันเพื่อแก้ไขปัญหา
การเขียนโปรแกรมอย่างมีความสุข
แนะนำ:
การใช้ Pimoroni Enviro+ FeatherWing กับ Adafruit Feather NRF52840 Express: 8 ขั้นตอน
การใช้ Pimoroni Enviro+ FeatherWing กับ Adafruit Feather NRF52840 Express: Pimoroni Enviro+ FeatherWing เป็นบอร์ดที่อัดแน่นไปด้วยเซ็นเซอร์ที่ออกแบบมาเพื่อทำงานร่วมกับบอร์ดรุ่น Adafruit Feather เป็นจุดเริ่มต้นที่มีประโยชน์สำหรับทุกคนที่สนใจในการตรวจสอบด้านสิ่งแวดล้อม มลภาวะในชั้นบรรยากาศ และการทำลายข้อมูล ผม
การใช้ Guitar Hero Guitar เพื่อควบคุมการซูม (Windows เท่านั้น): 9 ขั้นตอน
การใช้กีตาร์ฮีโร่กีตาร์เพื่อควบคุมการซูม (เฉพาะ Windows): เนื่องจากเราอยู่ท่ามกลางการระบาดใหญ่ทั่วโลก พวกเราหลายคนติดอยู่กับการทำความสะอาดบ้านและเข้าร่วมการประชุมบน Zoom หลังจากนี้ไปสักพัก มันอาจจะดูจืดชืดและน่าเบื่อหน่าย ขณะทำความสะอาดบ้าน ฉันพบกีตาร์ Guitar Hero ตัวเก่าที่ถูกโยนทิ้งใ
[2020] การใช้ IPhone หรือ IPad และ Micro:bit Game Pad App เพื่อควบคุมรถ RC: 23 ขั้นตอน
[2020] การใช้ IPhone หรือ IPad และแอพเกมแพด Micro:bit เพื่อควบคุมรถ RC: คุณเคยคิดหรือไม่ว่าจะใช้ iPhone หรือ iPad เพื่อควบคุม micro:bit ของคุณ คุณรู้หรือไม่ว่า Micro:bit Educational Foundation มีแอพ iOS ใน แอพสโตร์? ค้นหา "micro:bit" ใน App Store และคุณสามารถดาวน์โหลดแอปได้ฟรี NS
การใช้ Python เพื่อเรียนรู้เค้าโครงแป้นพิมพ์ที่ไม่ใช่ภาษาอังกฤษ: 8 ขั้นตอน
การใช้ Python เพื่อเรียนรู้รูปแบบแป้นพิมพ์ที่ไม่ใช่ภาษาอังกฤษ: สวัสดี ฉันชื่อ Julien! ฉันเป็นนักเรียนวิทยาศาสตร์คอมพิวเตอร์ และวันนี้ฉันจะแสดงให้คุณเห็นว่าคุณสามารถใช้ Python เพื่อสอนรูปแบบแป้นพิมพ์ของภาษาที่ไม่ใช่ภาษาอังกฤษได้อย่างไร ทุกวันนี้การเรียนรู้ภาษาเกิดขึ้นมากมายทางออนไลน์ และสิ่งหนึ่งที่ผู้คนสามารถเข้าใจ
การแฮ็ก EXtreme Burner สำหรับการเขียนโปรแกรม AVR Atmega Devices: 7 ขั้นตอน
การแฮ็ก EXtreme Burner สำหรับการเขียนโปรแกรม AVR Atmega Devices: นี่เป็นคำแนะนำแรกของฉันในเว็บไซต์นี้! พวกคุณทุกคนโพสต์สิ่งต่าง ๆ มากมายบนเว็บไซต์นี้ ความคิดและความสนใจที่แปลกประหลาดและแปลกประหลาดมากมายเช่นกัน ! หลายๆ เรื่องที่ฉันได้อ่านเป็นครั้งคราว และคุณได้แรงบันดาลใจให้ฉันตอบแทนชุมชน ! อัลธ