Borykam się z problemem kupionej ATmegi328 która ma włączony JTAG. Wiem że wyłącza się to za pomocą fuesbitów ale kompletnie sobie nie umiem z tm poradzić. Muszę wyłączyć JTAG w Atmedze ponieważ blokuje on piny i nie mozna ich wykorzystać do projektu. Po wyłączeniu tej funkcji atmega ma aktywne wszystkie piny.
Obecnie spróbowałem dwów patentów:
====>PATENT1 Za pomocą USBasp - przy tej próbie nie mogłem wyłączyć JTAG ponieważ programy wywalają błąd firmware i każą zaaktualizować firmware w USBasp. I tu pojawia się kolejny problem bo kompletnie nie wiem jak to zrobić. Korzystałem z różnych programów lecz bez skutku. Jesli ktoś wie jak to zrobić korzystając z ArduinoUNO lub jakoś przez edycję programu ArduinoIDE to chętnie bym sie nauczyl.
====>PATENT2 Za pomocą programowego wyłaczenia w ArduinoIDE. Przy tej próbie wklejam w program dwie linijki które jak piszą w internecie bez problemu wyłączają JTAG. Wygląda to następująco:
Kod: Zaznacz cały
"Zmienne i stałe"
MCUCSR|= (1<<JTD); // Linijka odpowadająca za wyłaczenie JTAG przez program
MCUCSR|= (1<<JTD); // Linijka odpowadająca za wyłaczenie JTAG przez program
void setup(){
"Część programu"}
void loop(){
"Część programu"}
Jak zaleca program, usuwam literkę "S" i pojawia się to:OLED_Ar2:15:1: error: 'MCUCSR' does not name a type; did you mean 'MCUCR'?
MCUCSR|= (1<<JTD);
^~~~~~
MCUCR
OLED_Ar2:16:1: error: 'MCUCSR' does not name a type; did you mean 'MCUCR'?
MCUCSR|= (1<<JTD);
^~~~~~
MCUCR
Czy ktoś ma sposób na ten problem? Pozdrawiam :)OLED_Ar2:15:1: error: expected unqualified-id before 'volatile'
MCUCR|= (1<<JTD);
^
OLED_Ar2:15:1: error: expected ')' before 'volatile'
OLED_Ar2:15:1: error: expected ')' before 'volatile'
OLED_Ar2:16:1: error: expected unqualified-id before 'volatile'
MCUCR|= (1<<JTD);
^
OLED_Ar2:16:1: error: expected ')' before 'volatile'
OLED_Ar2:16:1: error: expected ')' before 'volatile'