Szybkie linki:
 
Galeria serwisu:

Widzisz łapkę - kliknij w obrazek, aby zobaczyć więcej.

Fusebity mikrokontrolerów UPDI.

Fusebity mikrokontrolerów UPDI - ATTINY 816
Grupy fusebitów mikrokontrolerów UPDI - ustawienia bezpieczników tego typów mikrokontrolerów zostały rozdzielone i pogrupowane w kilka grup. Czas na opis fuse nowych mikrokontrolerów. Zaczynamy od popularnego Attiny816. Opis, jak wyglądaja grupy fuse tego układu UPDI?
Mikrokontroler ATtiny816 należy do nowoczesnej rodziny tinyAVR-1 (seria 1). W układach z interfejsem UPDI konfiguracja fusebitów wygląda zupełnie inaczej niż w starych układach typu ATtiny13 czy ATmega328P. Fusebity nie są już osobnymi rejestrami LOW, HIGH i EXTENDED. Znajdują się one w przestrzeni adresowej pamięci EEPROM (sekcja FUSES). Każdy fusebit ma teraz swój własny, czytelny adres i nazwę.
Poniżej znajdziesz pełny opis najważniejszych fusebitów dla ATtiny816, również podobnych (ATTiny 416, ATTiny 1616).

FUSE ATTINY 816 - ustawienia bezpieczników mikrokontrolera:
Fabryczne (domyślne), kolejno grupy FUSE0 - FUSE8: 00, 00, 02, FF, 00, C9, 07, 00, 00.
NumerNazwaWartośćOpis
Fuse0WDTCFG0x00Konfiguracja timera nadzorującego Watchdog.
Tryb okienkowy (WINDOW), jak i główny czas działania (PERIOD) są całkowicie wyłączone (OFF), nie zresetuje mikrokontrolera.
Fuse1BODCFG0x00Wykrywanie niebezpiecznych spadków napięcia zasilania.
Tu jest całkowicie wyłączony (DISABLED), zarówno podczas pracy, jak i w trybach uśpienia.
Fuse2OSCCFG0x02Ustawione na wewnętrzne źródło zegara. Wybrana jest częstotliwość 20 MHz (opcja 20MHZ).Alternatywą byłoby 0x01 dla 16 MHz.
Fuse3REZERWA0xFFTen bajt nie ma przypisanej żadnej funkcji w ATtiny816. Domyślnie i zawsze odczytuje się jako 0xFF
Fuse4TCD0CFG0x00Konfiguracja zaawansowanego licznika Timer D (Timer Counter D), dedykowanego m.in. do sterowania zasilaczami impulsowymi lub silnikami.
Co oznacza 0x00: Wszystkie opcje mapowania pinów generatora i synchronizacji są wyłączone lub ustawione na wartości domyślne. Brak wymuszonej synchronizacji zewnętrznej.
Fuse5SYSCFG00xC9To najważniejszy bajt w całym mikrokontrolerze. Odpowiada za konfigurację systemu, w tym za to, czym jest pin programowania.
Co oznacza 0xC9 (binarnie 11001001):RSTPINCFG ma wartość 0x3 – pin PA0 działa jako czysty interfejs UPDI.CRCSRC ma wartość 0x0 – automatyczne sprawdzanie sumy kontrolnej pamięci Flash podczas startu jest wyłączone. Można bez problemu programować zwykłym programatorem UPDI.
Fuse6SYSCFG10x07Ten bajt ustala czas startu mikrokontrolera (SUT – Start-Up Time).
Co oznacza 0x07: Czas oczekiwania po włączeniu zasilania wynosi 64 milisekundy. Po podaniu zasilania procesor "czeka" 64 ms na ustabilizowanie się napięcia.
Fuse7APPEND 0x00Ten bajt określa rozmiar i koniec sekcji Bootloadera w pamięci Flash.
Co oznacza 0x00: Koniec sekcji chronionej (Application Code Section End) jest ustawiony na adres 0.Efekt: Cała pamięć Flash jest traktowana jako jedna, jednolita przestrzeń dla zwykłego programu użytkownika. Brak specjalnych blokad zapisu/odczytu sekcji.
Fuse8BOOTEND 0x00Ten bajt służy do zarządzania podziałem pamięci Flash na sekcje dla kodu aplikacji..
Co oznacza 0x00: Rozmiar sekcji Boot (Boot Section End) wynosi 0.Efekt: Sekcja Bootloadera jest wyłączona. Cała pamięć Flash jest wolna i dostępna dla Twojej aplikacji od pierwszego adresu.

Część z tych ustawień jest modyfikowana podczas konfiguracji i wgrywania projektów. Powinna być dostosowana dla aktualnych potrzeb i wymagań projektu.

Jakie fuse ustawić dla mojego projektu Eclipse? - opis podejrzenia jakie fusebity przewidział Eclipse.

Będziemy przedstawiać, opisywać kolejne fusebity mikrokontrolerów. Postaramy się przybliżyć użytkownikom fusebity mikrokontrolerów UPDI. W sposób prosty i przystępny dla każdego.




Licznik serwisu: 12611 , Aktualnie: 3 , Admin kontakt: admin@progel.pl