Sisukord:

Kuidas keelata JTAG enne Atmegas 40DIP alglaadimist Arduino IDE Mightycore'iga: 4 sammu
Kuidas keelata JTAG enne Atmegas 40DIP alglaadimist Arduino IDE Mightycore'iga: 4 sammu

Video: Kuidas keelata JTAG enne Atmegas 40DIP alglaadimist Arduino IDE Mightycore'iga: 4 sammu

Video: Kuidas keelata JTAG enne Atmegas 40DIP alglaadimist Arduino IDE Mightycore'iga: 4 sammu
Video: Kuidas kasutada kehakuppu? 2024, Detsember
Anonim
Kuidas keelata JTAG enne Atmegas 40DIP alglaadimist Arduino IDE Mightycore'iga
Kuidas keelata JTAG enne Atmegas 40DIP alglaadimist Arduino IDE Mightycore'iga

Hiljuti sain tööstussüsteemide juhtimiseks kasutada atmegas 40 DIP -d, kuna selline mikrokontroller toidab paljusid analoog- või digitaalseid väljundeid, nii et te ei vaja laiendusi.

Atmegas32/644p/1284p sisaldab võimalust teie loodud visandi allalaadimiseks, mida nimetatakse JTAG -ks (vt

en.wikipedia.org/wiki/JTAG, et saada rohkem selgitusi). Kui kasutate Arduino IDE või LDmicro (IEC 61-131), laadivad visandid alla SPI-pordi kaudu ja JTAG-tihvtid (4 tihvti: PC2 (D18) PC3 (D19) PC4 (D20) PC5 (D21) pole millegi jaoks saadaval Nii et peate oma programmis JTAG keelama.

Arduino IDE -ga peate lihtsalt seadistusjaotisesse lisama 3 koodirida järgmiselt:

uint8_t tmp = 1 << JTD;

MCUCR = tmp;

MCUCR = tmp;

Kaks korda MCUCR liinimeetod.

LDmicroga ei suutnud ma midagi teha.

Nende probleemide vältimiseks laadisin pärast MCUCR registri manipuleerimist oma atmegas Arduino IDE abil Mightycore'i alla. Üks võimalus kaitsmete põletamiseks, kui JTAG on välja lülitatud.

1. samm: teie 40DIP -ahela kaitsme arvutamine:

Teie 40DIP vooluahela kaitsme arvutamine
Teie 40DIP vooluahela kaitsme arvutamine
Teie 40DIP vooluahela kaitsme arvutamine
Teie 40DIP vooluahela kaitsme arvutamine
Teie 40DIP vooluahela kaitsme arvutamine
Teie 40DIP vooluahela kaitsme arvutamine

Minge veebisaidile:

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

Valige hea vooluring (minu näites atmega1284p, kuid samamoodi teiste 40 DIP -atmega) ja vaadake "U hfuse: w: 0x99: m" ja tühjendage märkeruut JTAGEN, nii et see annab "U hfuse: w: 0xD9: m". Pidage meeles 0xD9 väärtust.

Samm: otsige faili Boards.txt Mightycore kataloogist:

Fail Boards.txt otsimine Mightycore'i kataloogist
Fail Boards.txt otsimine Mightycore'i kataloogist
Fail Boards.txt otsimine Mightycore'i kataloogist
Fail Boards.txt otsimine Mightycore'i kataloogist

Otsige oma arvutist kataloogist Mightycore. Minu jaoks kaustas C: / kasutaja / mina / AppData / Local / Arduino15 / paketid / Mightycore / Harware / avr / 2.0.0 / boards.txt.

Samm: muutke faili Boards.txt ja alglaadimist rakendusega Mightycore:

Boards.txt ja alglaadimise muutmine Mightycore abil
Boards.txt ja alglaadimise muutmine Mightycore abil

Vaadake Notepad ++ abil atmega1284p kella sagedusplokki.

Muutke iga suurt kaitset, näiteks „1284.menu.clock.16MHz_external.bootloader.high_fuses = 0xd6” väärtuseks „1284.menu.clock.16MHz_external.bootloader.high_fuses = 0xd9” (0xd9 eelmine väärtus, mida pidite meeles pidama). Salvestage see.

Siis peate lihtsalt järgima kirjeldatud alglaadimismeetodit

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

See on kõik.

4. samm: järeldus:

Nüüd teenite 4 I/O -d ja te ei pea oma visanditel registrit manipuleerima. Samuti saate minna tagasi ja lubada JTAGEN ning taaskäivitada üks kord.

Tänan kõiki veebis huvitavaid õpetusi, mis andsid mulle mõned võtmed selle projekti õnnestumiseks.

Soovitan: