Sadržaj:

Kako onemogućiti JTAG prije pokretanja sistema Atmegas 40DIP s Arduino IDE Mightycore: 4 koraka
Kako onemogućiti JTAG prije pokretanja sistema Atmegas 40DIP s Arduino IDE Mightycore: 4 koraka

Video: Kako onemogućiti JTAG prije pokretanja sistema Atmegas 40DIP s Arduino IDE Mightycore: 4 koraka

Video: Kako onemogućiti JTAG prije pokretanja sistema Atmegas 40DIP s Arduino IDE Mightycore: 4 koraka
Video: Стеки технологий – информатика для руководителей бизнеса 2016 2024, Juli
Anonim
Kako onemogućiti JTAG prije pokretanja sistema Atmegas 40DIP s Arduino IDE Mightycore
Kako onemogućiti JTAG prije pokretanja sistema Atmegas 40DIP s Arduino IDE Mightycore

Nedavno sam morao koristiti atmegas 40 DIP za upravljanje industrijskim sistemima jer ova vrsta mikrokontrolera opskrbljuje mnoge analogne ili digitalne I/O pa vam ne trebaju nikakvi proširivači.

Atmegas32/644p/1284p uključuje način za preuzimanje skice koju kreirate koja se naziva "JTAG" (vidi

en.wikipedia.org/wiki/JTAG za dodatna objašnjenja). Ako koristite Arduino IDE ili LDmicro (IEC 61-131), skice se preuzimaju putem SPI porta, a JTAG pinovi (4 pina: PC2 (D18) PC3 (D19) PC4 (D20) PC5 (D21) nisu dostupni za bilo što Dakle, morate onemogućiti JTAG u svom programu.

S arduino IDE -om samo trebate dodati 3 retka koda u odjeljak za postavljanje ovako:

uint8_t tmp = 1 << JTD;

MCUCR = tmp;

MCUCR = tmp;

Metoda dvostruke linije MCUCR.

Sa LDmicro -om nisam mogao ništa učiniti.

Da bih izbjegao ove probleme, ponovo sam se učitao nakon što je MCUCR registar manipulirao mojim atmegama s Arduino IDE -om pod Mightycore -om. Način spaljivanja osigurača sa onemogućenim JTAG -om.

Korak 1: Proračun osigurača vašeg 40DIP kruga:

Proračun osigurača vašeg 40DIP kruga
Proračun osigurača vašeg 40DIP kruga
Proračun osigurača vašeg 40DIP kruga
Proračun osigurača vašeg 40DIP kruga
Proračun osigurača vašeg 40DIP kruga
Proračun osigurača vašeg 40DIP kruga

Idite na web stranicu:

eleccelerator.com/fusecalc/fusecalc.php?chi…

Odaberite dobro kolo (atmega1284p u mom primjeru, ali na isti način s ostalih 40 DIP atmega) i pogledajte "U hfuse: w: 0x99: m" i poništite oznaku JTAGEN tako da dobije "U hfuse: w: 0xD9: m". Imajte na umu vrijednost 0xD9.

Korak 2: Traženje datoteke Boards.txt u direktoriju Mightycore:

Tražite datoteku Boards.txt u direktoriju Mightycore
Tražite datoteku Boards.txt u direktoriju Mightycore
Tražite datoteku Boards.txt u direktoriju Mightycore
Tražite datoteku Boards.txt u direktoriju Mightycore

Na svom računaru pretražite direktorij Mightycore. Za mene u C: / user \self / AppData / Local / Arduino15 / packages / Mightycore / Harware / avr / 2.0.0 / Board.txt.

Korak 3: Izmijenite Boards.txt i Bootload pomoću Mightycore -a:

Izmijenite Boards.txt i Bootload pomoću Mightycore -a
Izmijenite Boards.txt i Bootload pomoću Mightycore -a

Pogledajte blok frekvencije sata atmega1284p sa Notepad ++.

Promijenite svaki visoki osigurač kao što je “1284.menu.clock.16MHz_external.bootloader.high_fuses = 0xd6” na “1284.menu.clock.16MHz_external.bootloader.high_fuses = 0xd9” (0xd9 prethodnu vrijednost koju ste morali zapamtiti).

Zatim morate samo slijediti metodu podizanja sustava koja je navedena u

www.instructables.com/id/Arduino-18x-Clone…

To je to.

Korak 4: Zaključak:

Sada zarađujete 4 I/O i ne morate raditi nikakve manipulacije registra u skicama. Takođe se možete vratiti i omogućiti JTAGEN i ponovo pokrenuti sistem još jednom.

Hvala svim zanimljivim vodičima na webu koji su mi dali neke ključeve za uspjeh u ovom projektu.

Preporučuje se: