Hacking EXtreme Burner pentru programarea AVR Atmega Devices: 7 pași
Hacking EXtreme Burner pentru programarea AVR Atmega Devices: 7 pași
Anonim
Hacking EXtreme Burner pentru programarea AVR Atmega Devices
Hacking EXtreme Burner pentru programarea AVR Atmega Devices
Hacking EXtreme Burner pentru programarea AVR Atmega Devices
Hacking EXtreme Burner pentru programarea AVR Atmega Devices

Acesta este primul meu instructabil pe acest site! Toți oamenii buni, ați postat o mulțime de lucruri pe acest site, multe idei și interese ciudate și ciudate! Multe dintre acestea le-am citit din când în când și m-ai inspirat să le dau înapoi Comunității! Deși titlul este „hacking”, nu este nevoie să te alarmezi! doar modificăm unele fișiere de date utilizate de program și nu sunt ilegale în niciun fel. Software-ul enumerat aici este gratuit de utilizat de către oricine și poate fi descărcat împreună cu orice alte fronturi GUI de programare AVR pentru AVRdude (care în sine este în domeniul public), fără nicio limită. Cumva termenul „hacking” este mai interesant și întâlnim multe astfel de articole acum!

„eXteme Burner” este o interfață GUI populară pentru programul AVRdude folosit pentru a programa seria de microcontrolere ATMEL AVR. (MCU). Al doilea „X” este un capital în numele acestui utilitar! Nu, nu este greșeala mea de tastare. Există și alte instrumente GUI, precum programatorul Khazama și programatorul BitBurner AVR etc. Am folosit eXtreme Burner pentru practica mea AVR și mi-a servit bine pentru popularele microcontrolere Atmega 328, 168, Atmega8 sau 8A etc. Dar într-o zi când am folosit un nou cip ATTINY44A am întâmpinat o problemă. Și alte persoane (în diferite forumuri AVR au raportat acest lucru și au abandonat eXtreme Burner, mergând în căutarea altor programe GUI pentru AVRdude sau coborând la linia de comandă și folosind AVRdude direct cu opțiunile sale.). Acest lucru se datorează lipsei de înțelegere a flexibilității inerente eXtreme Burner! La urma urmei, odată ce te-ai obișnuit cu o interfață grafică care îți poate citi memoria flash AVR, EEPROM și FUSES, de ce ai merge să înveți o altă interfață grafică? Aici detaliați cum să vă modificați instrumentul eXtreme Burner într-un mod extrem! Instrumentul dvs. se va comporta așa cum nu doriți și nu într-un fel care vă va împiedica sau nu funcționează deloc într-un MCU specific.

De ce aveți nevoie: un laptop cu arzător eXtreme, studio AVR orice versiune cu compilator AVR-GCC pentru a compila programul dvs. C într-un fișier Intel Hex pentru încărcare în MPU, Notepad ++ cu add-on instalat pentru vizualizare și editare XML în Limbi de meniu, va afișa XML ca opțiune în lista derulantă, dacă este deja instalat, dacă nu mergeți la site-ul Notepad ++ și îl descărcați, este posibil să o faceți chiar din Notepad ++ pentru a adăuga limbi suplimentare '). Selectați opțiunea XML, un punct va apărea lângă ea. Acest lucru vă permite să vizualizați și să editați fișiere XML, care este formatul pe care îl veți pirata fișierele din acest articol.

Pasul 1: Setarea vizualizării XML în Notepad ++

Setarea vizualizării XML în Notepad ++
Setarea vizualizării XML în Notepad ++

Pasul 2: Înțelegeți fișierele pe care trebuie să le modificați

Înțelegeți fișierele pe care trebuie să le modificați
Înțelegeți fișierele pe care trebuie să le modificați
Înțelegeți fișierele pe care trebuie să le modificați
Înțelegeți fișierele pe care trebuie să le modificați

În Extreme Burner, accesați intrarea programului Fișiere la: C: / Program Files / eXtreme Burner - AVR, există mai multe foldere aici: Date, Ajutor, Imagine, Driver etc. Cel cu care începem este folderul numit „Date . Odată ce te uiți în acest folder, Deja-Vu! Deci, aici este stocată informația de configurare! Fișierele XML sunt acolo: Chips.xml, Fuselayout.xml, clocksystems.xml, acestea sunt fișierele XML pe care le-ați modifica în acest instructabil. Ai avea nevoie de un editor XML. Există multe pe Web, dar eu folosesc și recomand Notepad ++ (programul de completare pentru vizualizarea și editarea fișierelor XML este deja instalat în instalarea implicită a Notepad ++, dacă nu, descărcați și instalați acest program de completare). Vedeți captura de ecran pentru unde trebuie să bifați „Vizualizare XML” în notepad ++. în etapa anterioară.

Pasul 3:

Imagine
Imagine
Imagine
Imagine

Dacă aruncați o privire în fișierul chips.xml din folderul de date în care este instalat eXtreme Burner și derulați în jos până la descriptorul de secțiune pentru dispozitivul dvs. Attiny44A sau orice chip cu care vă confruntați cu o problemă, veți observa dimensiunea paginii greșite i (64 octeți în loc de 32 de octeți, așa cum este dat în foaia sa de date) în fișierul XML din secțiunea Attiny44, acest lucru cauzează erorile și imposibilitatea de a bloca fișierul program / hex în microcontrolerul nostru folosind USB-ASP. Uneori, linia de semnătură poate conține informații incorecte. Trebuie să citiți această secțiune și să vă asigurați că conține informații corecte și valide pentru cipul dvs., în comparație cu foaia sa de date oficială.

Acest fișier XML poate fi citit numai cu un editor de fișiere XML.

De asemenea, ori de câte ori primiți ORICE fel de erori în timpul utilizării arzătorului extrem, trebuie doar să faceți clic pe „CHIP INFO” în meniul instrumentului arzătorului și să vedeți dacă informațiile despre chip afișate sunt corecte (după ce ați setat cipul în meniul de sub Chip (vezi capturile de ecran 1 și 2). Când observați această diferență în informațiile afișate despre cipul pe care l-ați selectat și fișa tehnică a cipului (sau chiar în cazul în care cipul pe care încercați să-l clipiți nu este afișat în dialogul de selectare a cipului în eXtreme Burner) trebuie să modificați XML în modul descris în instructable. Puteți face acest lucru mai întâi fără a utiliza niciun editor XML sau a deschide chips-urile.xml!

Pasul 4: Efectuarea corecțiilor în fișierul XML Chips.xml

Efectuarea corecțiilor în fișierul XML Chips.xml
Efectuarea corecțiilor în fișierul XML Chips.xml

Folosind fereastra Notepad ++, veți face aceste corecții, în principal dimensiunea paginii setată la 32 de octeți, așa cum este dată în foaia de date pentru Attiny44). V-ați confrunta cu o problemă în timp ce utilizați un cip diferit, dar pașii sunt aceiași.

Acum va trebui să adăugați o altă secțiune sub aceasta, pentru MCU-ul dvs. specific Attiny44A. Deoarece acest cip este identic în registre, dimensiunea memoriei și orice altceva, copiem și lipim secțiunea 44A de sub aceasta, în această nouă secțiune, redenumim numele cipului, la ATTINY44A în locul ATTINY44. Doar pentru a recaptula, nu am eliminat secțiunea ATTINY44, am schimbat doar linia de dimensiune a paginii din ea! Doar adăugăm încă o secțiune sub aceasta pentru microcontrolerul nostru 44A.

Vezi fotografiile.

Pasul 5: S-a adăugat o nouă secțiune pentru Attiny44A

S-a adăugat o nouă secțiune pentru Attiny44A
S-a adăugat o nouă secțiune pentru Attiny44A

Ar trebui doar să copiați secțiunea anterioară pentru ATTINY44 (după ce ați corectat dimensiunea paginii la 32 de octeți în secțiunea XML) și ați schimba numele cipului din linia XML în „ATTINY44A”, adică doar introduceți „A”! Toate celelalte linii sunt la fel. Aveți grijă să nu faceți erori de tastare în XML și nu omiteți niciun caracter de ghilimele! Dacă faceți asta este o poveste diferită, veți afla ce se va întâmpla data viitoare când deschideți „Xtreme Burner” va spune „eroare la încărcarea fișierului XML chips.xml la linia nr. ----”, așa că veți ști și atunci puteți redeschideți fișierul XML și verificați ce greșeală ați făcut! Salvați fișierul în Notepad ++ și ieșiți. Munca ta este terminată!

Pasul 6: Verificați-vă munca

Verificându-vă munca!
Verificându-vă munca!
Verificându-vă munca!
Verificându-vă munca!
Verificându-vă munca!
Verificându-vă munca!
Verificându-vă munca!
Verificându-vă munca!

Acum trebuie să gustăm plăcinta sau budinca așa cum doriți să o numiți!

Deschideți arzătorul eXtreme și căutați în jetoane sub Meniu, ar trebui să apară noul dvs. cip Attiny44A! selectați-l.

faceți clic pe Chip Info și verificați dacă detaliile sunt corecte! Vezi imaginile.

Conectați programatorul USBASP la portul USB și placa de dezvoltare la USBASP și așteptați până când acesta este recunoscut de drivere, acesta va apărea în „Dispozitive și imprimante”. Acum dați un „Citiți TOATE” de la Burner. Veți vedea o citire reușită a Flash, EEPROM și siguranțe, dacă totul este în regulă! Mesajele de diagnosticare vor fi afișate ca în imagine.

Pasul 7: Scrieți pe Chip Your Program / Hex File

Scrieți la Chip Your Program / Hex File
Scrieți la Chip Your Program / Hex File
Scrieți la Chip Your Program / Hex File
Scrieți la Chip Your Program / Hex File
Scrieți la Chip Your Program / Hex File
Scrieți la Chip Your Program / Hex File
Scrieți la Chip Your Program / Hex File
Scrieți la Chip Your Program / Hex File

Acum deschideți orice fișier hexagonal de pe laptop din folderul de proiecte AVR și urmăriți-l fulgerând dând „Write Flash” din meniul Burner.

Urmăriți mesajele care indică scrierea către Chip și verificați că opțiunile au mers OK!

Dacă nu, verificați firele și conexiunile de pe placa de dezvoltare care găzduiește cipul și programatorul USBasp. Asta e !

Articolul următor vă voi spune cum să hack și celelalte fișiere XML! și cum să vă plasez imaginea personalizată (am plasat imaginea fidelă a câinelui meu Tom în meniu, ultima pictogramă în dreapta, pentru a personaliza arzătorul meu eXtreme, afișat în ultima imagine de mai sus) în bara de meniu pentru a vă asigura că este versiunea modificată potrivită nevoilor dvs. pe care le utilizați și nu versiunea stoc! Consultați secțiunea din bara de meniu cu fotografie în ea (ultima, dar o singură pictogramă).

Pentru siguranțe, folosiți un calculator de siguranțe online? Puteți face acest lucru și în Extreme burner, există un calculator de siguranțe în fila FUSES pentru setarea vitezei ceasului și a opțiunilor de siguranță! Uneori nu funcționează pentru cipul dvs., vă voi spune cum să hackați și asta, este destul de simplu, folosind fișierele fuselayout.xml și clocksystems.xml.

Programare fericită MCU! Dacă doriți mai multe sfaturi despre utilizarea eXtreme Burner, postați-l în comentarii și voi fi bucuros să vă dau ideile și sugestiile. Împărtășiți-vă și ideile!