Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
Ostatnio wykorzystałem atmegas 40 DIP do sterowania systemami przemysłowymi, ponieważ ten rodzaj mikrokontrolera dostarcza wiele wejść/wyjść analogowych lub cyfrowych, więc nie są potrzebne żadne ekspandery.
Atmegas32/644p/1284p zawiera sposób na pobranie utworzonego szkicu, który nazywa się "JTAG" (patrz
en.wikipedia.org/wiki/JTAG, aby uzyskać więcej wyjaśnień). Jeśli używasz Arduino IDE lub LDmicro (IEC 61-131), szkice są pobierane przez port SPI, a piny JTAG (4 piny: PC2(D18) PC3(D19) PC4(D20) PC5(D21) nie są dostępne dla niczego Więc musisz wyłączyć JTAG w swoim programie.
Z arduino IDE wystarczy dodać 3 linie kodu w sekcji konfiguracji w następujący sposób:
uint8_t tmp = 1<< JTD;
MCUCR = tmp;
MCUCR = tmp;
Metoda podwójnej linii MCUCR.
Z LDmicro nie mogłem nic zrobić.
Aby uniknąć tych problemów, załadowałem po manipulacji rejestrem MCUCR moje atmegas z Arduino IDE pod Mightycore. Sposób na spalenie bezpieczników przy wyłączonym JTAG.
Krok 1: Obliczanie bezpiecznika obwodu 40DIP:
Przejdź do strony internetowej:
eleccelerator.com/fusecalc/fusecalc.php?chi…
Wybierz dobry obwód (atmega1284p w moim przykładzie, ale w ten sam sposób z innymi atmegazami 40 DIP) i spójrz na "U hfuse:w:0x99:m" i odznacz JTAGEN, więc daje "U hfuse:w:0xD9:m". Pamiętaj o wartości 0xD9.
Krok 2: Poszukaj pliku Boards.txt w katalogu Mightycore:
Na komputerze przeszukaj katalog Mightycore. Dla mnie w C:\user\myself\AppData\Local\Arduino15\packages\Mightycore\Harware\avr\2.0.0\boards.txt.
Krok 3: Zmodyfikuj plik Boards.txt i bootload za pomocą Mightycore:
Spójrz na blok częstotliwości zegara atmega1284p z Notepad++.
Zmodyfikuj każdy wysoki bezpiecznik, np. „1284.menu.clock.16MHz_external.bootloader.high_fuses=0xd6” na „1284.menu.clock.16MHz_external.bootloader.high_fuses=0xd9” (0xd9 to poprzednia wartość, którą musiałeś zapamiętać). Zapisz go.
Następnie wystarczy postępować zgodnie z metodą ładowania podaną w
www.instructables.com/id/Arduino-18x-Clone…
Otóż to.
Krok 4: Wniosek:
Teraz zarabiasz 4 I/O i nie musisz wykonywać żadnych manipulacji rejestrami w swoich szkicach. Możesz także cofnąć się i włączyć JTAGEN i ponownie uruchomić komputer ponownie.
Dziękuję wszystkim ciekawym tutorialom w sieci, które dały mi kilka kluczy do sukcesu w tym projekcie.