(...) Ktoś potrafi ocenić czy to problem z softem czy sprzętowy, może ktoś miał z takim komunikatem do czynienia? Może być sprzętowy (moduł PPC) lub programowy (ataki).
Watchdog nie musi generować sygnału RESET. W AVRach sam wybierasz czy zgłoszenie od Watchdoga ma zresetować procka czy też tylko wywołać przerwanie od niego, bądź jedno i drugie w kolejności - przerwanie a przy wyjściu z niego reset. http://obrazki.elektroda.pl/1548346700_1...
1. TJAxxxx losowo wysyła jakieś ramki do procka powodując błąd software i reset wewnętrznego watchdoga 2. TJAxxxx odbiera po sieci info nakazujące reset IPC 3. TJAxxxx robi coś czego konstruktor nie przewidział i robi w/w ;) to razem z 300 pkt ;P nie przelewaj tych 100 , mam chyba zapas :) tak na poważnie, do tego licznika idzie niewiele sygnałów, wypinuj...
W wielu nowszych AVRach jeśli watchdog był źródłem resetu to zostaje włączony automatycznie, bo bit WDE jest ustawiany tak jak WDF z rejestru MCUSR. Pozostałe bity rejestru WDTCSR są wyzerowane, a to oznacza, że ustawiony jest minimalny czas. Wyłączenie watchdoga należy wykonać przed funkcją main. Służą do tego sekcje .initx. Ponieważ będzie to funkcja...
Mozesz sprobowac za pomoca watchdog'a. Wada jest to ze reset nastapi dopiero po min. 16ms Config Watchdog = 16 Start Watchdog watims 20 'oczekiwanie na reset z watchdoga Masz do dyspozycji jeszcze polecenia: Stop watchdog - zatrzymanie Reset watchdog - kasowanie Zamiast 'waitms 20' mozesz tez dac jakies polecenie "usypiajace" procesor (IDLE, POWERDOWN)
Dla konfiguracji resetowania się watchDoga po 4 sekundach : Mcusr = &B00000000 'Zerowanie rejestru aby wyłączyć bit 3 czyli WDRF. 'Dokonywanie jakichkolwiek zmian w WatchDogu musi dokonywać się w ściśle określonej sekwencji wpisów do rejestru 'WDTCSR. Jako pierwszy krok trzeba zrobić wpisanie wartości 1 do bitu numer 4 nazywanego WDCE.Pozostałe bity...
Funkcje wait (waitms) w BASCOM nie blokują i nie resetują watchdoga. Wyłączanie watchdoga w czasie odczekania może prowadzić do sytuacji, gdy wchodzące w tym czasie zakłócenie zablokuje nam na stałe procesor. Dlatego lepiej wstawić pętelkę z resetowaniem watchdoga i zostawić watchdog włączony: for i=1 to 3 reset watdog wait 1 next
Mógłbyś odpalić watchdoga i żywić go przez 47 dni a potem zagłodzić bestię. To wywoła reset procesora.
A spróbuj tak #include <avr/wdt.h> #define LED_PIN 13 void setup() { // Blink LED to signal reset pinMode(LED_PIN, OUTPUT); digitalWrite(LED_PIN, HIGH); delay(1000); digitalWrite(LED_PIN, LOW); } void loop() { wdt_enable(WDTO_8S); // Infinite loop to simulate a crash while (1); } Dodano po 3 Ledy oczywiście możesz pominąć
Jeśli piszesz w WinAVR i otworzysz plik w asemblerze to zobaczysz, że każde nie używane przerwanie prowadzi do resetu. Nieużywane tzn. nie posiada funkcji obsługi przerwania. Przerwanie takie od np. przepełnienia timera może nastąpić jeśli zostanie odblokowane, ale jak mówisz w tym przypadku to nie to. Możesz po prostu wyłączyć watchdoga i upewnić się...
Jeśli WD ma być "tylko" do budzenia to się zgodzę. Przyzwyczaiłem się WD zostawiać sobie też dla bezpieczeństwa aplikacji. If WDE is set, the Watchdog Timer is in Interrupt and System Reset Mode. The first time-out in the Watchdog Timer will set WDIF. Executing the corresponding interrupt vector will clear WDIE and WDIF automatically by hardware (the...
Watchdog - to układ czasomierza zerowanego programowo, np. odpowiednim rozkazem procesora. Rozkaz ten umieszcza się np. w głównej pętli programu lub podprogramie, który ma być wywoływany okresowo. Jeżeli z jakiegoś powodu (np. zakłócenia) program pójdzie w maliny to licznik watchdoga nie zostanie wyzerowany i zostanie wygenerowany sygnał RESET procesora...
Watchdog nie jest programowy tylko sprzętowy Możesz mi powiedzieć co tu miałeś na myśli? Watchdog nie jest programowy? pierwsze słyszę. programowo: 1. ustawiam watchdoga na jak najkrótszy czas 2. wyłączam przerwania (na wszelki wypadek) 3. pętla nieskończona. i masz programowy PEŁNY reset i skok do adresu ustawionego za pomocą fusebitów. (to jest najpełniejszy...
IWDG ma timeout dopiero po 1,6s, a jest resetowany w tasku FreeRTOSa, który pstryka co 1ms, oraz w innym, który pstryka co 1s lub częściej, jeśli ma coś w kolejce... Jeśli używasz w ten sposób watchdoga, to w sumie możesz go nie używać wcale. Nie zabezpieczy Cię to wcale przed tym, że zawiesi się jakikolwiek inny task, a nawet jeśli zawiesi się jeden...
Oczywiście że można resety policzyć, bez mniejszego problemu. xury poczytaj sobie o MCUCSR.
Jest kilka możliwości. Tak samo w Bascomie jak i w każdym innym języku/kompilatorze. Można uruchomić WATCHDOGa i odczekać w pustej pętli aż zresetuje, można połączyć dowolne wyjście mikrokontrolera z wejściem resetu i zresetować, gdy potrzeba. Np tak: CONFIG WATCHDOG = 16 start watchdog do:loop A dlaczego chcesz resetować? Nie lepiej napisać program...
To będziesz musiał się trochę napocić. Po pierwsze jak używasz watchdoga w programie, to musisz w jakiś sposób sprawdzić czy reset aby na pewno służył do upgrade'u. Możesz to zrobić np przez zapis do eepromu jakiejś wartości, odczyt i odczyt jej bootloaderze (pamiętaj żeby bootloader ją resetował). Dobry by był też mechanizm który by pozwolił na zrezygnowanie...
Twoj hex ma wlaczonego watchdoga a powinien byc wylaczony - dokladnie tak jak mowi Freddie Chopin. Natomiast na koncu listingu watchdog nie jest "dziwacznie wylaczany" jak ten Kolega pisze tylko podany jest w komentarzu (za srednikiem) opis jakie fuse-bity ustawic ; Fuses (CP=Off, PWRTE=Enabled, WDTE=Disabled, OSC=XT) BF
Kilkanaście mega przez modem jest zdecydowanie złym pomysłem. Zajęło by to kilka godzin i nie wiadomo czy transmisja nie zostałaby zerwana. Na 99% wymiana softu rozwiąże problem.
Czy ATmega8535 ma tylko mierzsyć napięcie i wysyłać? Jeśli tak to po co taki duży uK do tego? :) Program może wyglądać tak: $regfile = "m8535.dat" $crystal = 16000000 $hwstack = 32 $swstack = 10 $framesize = 40 Dim W As Word Config Watchdog = 2048 Start Watchdog Reset Watchdog Config Adc = Single , Prescaler = Auto , Reference = Internal Start...
Oto szkielet programu *** .dseg .include "2313def.inc" ; Jaki procesor ;.......................................... SEGMENT DANYCH W SRAM ; Twoje dane ;.......................................... SGMENT DANYCH W EEPROM .eseg .org $0000 ; Twoje dane w EEPROM ;..........................................
1. Na poczatku użyłeś obecnie obowiązująca formę w odniesieniu do przerwania INT1 : ISR(INT1_vect) a teraz starszą w odniesieniu do przerwania INT0 SIGNAL(SIG_INTERRUPT0) Czy zainstalowałeś starszą wersję WinAVR ? 2. O co chodzi z : asm volatile ("WDR"::); i jak to się ma do _delay_ms(); skoro w programie...
(at)divadiow Setstartvalue 1 -1 jest tym, czego szukałem. Dzięki. Ale jak mogę zobaczyć, który parametr jest aktualnie ustawiony? Losowy reset Watchdoga wydaje się być problemem nie tylko z moimi urządzeniami. Czytałem, że inni mają ten sam problem. Wygląda na to, że jest to specjalistyczny problem z chipem bl602? Więc dla mojej pracy wystarczy ustawić...
http://obrazki.elektroda.pl/8534166600_1... http://obrazki.elektroda.pl/9676194100_1... Z niezbadanych przyczyn :), producenci komputerów nie umieszczają w popularnych pectach bardziej zaawansowanych układów typu watchdog, umożliwiających restartowanie komputera w przypadku zawieszenia, lub niepoprawnego działania poszczególnych...
Tak oczywiscie reset podciagniety. Okrojony do minimum program: $crystal = 7372800 $regfile = "m168def.dat" Config Aci = Off Config Lcd = 40 * 2 Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.3 , Db6 = Portb.0 , Db7 = Portb.1 , E = Portb.4 , Rs = Portb.5 Config Timer1 = Timer , Prescale = 64 On Timer1 Timer1_int Config Pinc.4 = Input '...
Bardzo ciekawa sprawa. Nie mam niestety aktualnie dostępu do tego tunera. Jak tylko będę miał możliwość to oczywiście spróbuję to zabootować. Można by to też skompresować przez LZMA, przez co może obraz ten zmieściłby się we flashu Można by, choć z mojej perspektywy na ten moment nie ma sensu. Mam pendriva który ma ogromny rozmiar w stosunku do wewnętrznego...
Zobacz sobie do rejestru RSTCTRL.RSTFR. (at)ElektrodaBot W poniższym fragmencie kodzie w C dla AVR128DA32: int main(void) { CCP = CCP_IOREG_gc; CLKCTRL.OSCHFCTRLA = CLKCTRL_FRQSEL_8M_gc;// OK init_Uc(); // initialization mikrokontrolera TWI1_init(); ; init_MCP(); // initialization MCP23017 lcd_init(); lcd_gotoxy(5,0); lcd_puts("dziala OK"); _delay_ms(500);...
Aplikacja i reset watchdoga działa na standardowym bootloaderze, zawiesza się przy wywołaniu resetu przez watchdoga tylko na AVR231 bootloader. Bez usunięcia fragmentu kodu z deklaracją dostaje komunikat, że ta funkcja jest już zadeklarowana w innym miejscu.
podciagnoles cos do pinu reset?
Witam; mam pewny dylemat. Zastosowałem watchdoga z największym preskalerem /1024. W Atmega644P licznik watchdoga jest taktowany z częstotliwością 128KHz. Czy zatem reset watchdoga nastąpi po 1024/128000 sek , czyli co 8ms? Czy nie da się ustawić go aby się kasował po kilku sekundach?
Tak. ADM690 niekoniecznie musi być uszkodzony. Reset może być spowodowany też przez działanie Watchdoga z ADM690. Sprawdź gdzie jest podłączony PIN6 tego układu.
'---------------------------------------... ' Solar v9 z pomiarami i watchdogiem '---------------------------------------... ' ustawiono napiêcia od³aczenia 1,17V ' napiêcie ochrony 1,45V ' led red lutowana do b1 ' opornik do b2 '---------------------------------------...
Witam! chciałbym użyć watchdoga w mojej aplikacji. Program działa tak, że jest sobie pętla główna programu i wykonywane są w niej pewne rzeczy a pozostała część działa na przerwaniach. Watchdoga chciałbym resetować w pętli głównej tak aby zawieszenie programu w procedurach obsługi przerwań również powodowało resetowanie procesora. Problem jaki napotkałem...
http://obrazki.elektroda.pl/4301568800_1... Autor poniższej konstrukcji przedstawiał już podobny układ - miniaturowy zegarek oparty o ATtiny ( Krok 1: Przygotowania http://obrazki.elektroda.pl/4194769400_1... Mikrokontroler Układ oparty jest o mikrokontrolery AVR firmy Atmel ATtiny85. Autor wykorzystał element w obudowie...
https://obrazki.elektroda.pl/9342271000_... Dzień dobry, Urządzenie powstało w celu monitorowania poziomu wilgotności w pewnej zamkniętej przestrzeni. Przekroczenie zadanego poziomu jest sygnalizowane sygnałem dźwiękowym (buzzer) i świetlnym (LED). Wartości z ostatniego pomiaru można w każdej chwili odczytać, po naciśnięciu przycisku,...
Witaj, Co - ponownie napiszę - jest BARDZO głupie! Dlaczego? Bo gdy w momencie soft-resetu były włączone przerwania, DMA albo inne peryferia, to... nikt nie wie co się stanie (; Nie twierdze że to jest najlepsze rozwiązanie i najpiękniejsze. Zaznaczyłem w swojej odpowiedźi gdybyś sobie nie poradził. A poza tym to przecież przed wykonaniem instrukcji...
Witam, Uruchomiłem watchodoga w ten sposób: [syntax=c]RCC_APB1ENR.B11 = 1; // Enable clock gating for Watchdog Timer 0 module WWDG_CFR = 1; // Write window value to be compared to the downcounter WWDG_CR = 0b10000000; // Enable the watchdog while (1) // Endless loop, WatchDog_Timer will reset ARM[/syntax] Procesor pieknie sie resetuje, co widzę po tym,...
http://obrazki.elektroda.pl/6151182100_1... Witam wszystkich, zapewne większość forumowiczów ceni sobie prywatność, a może nawet ma młodsze rodzeństwo które niczym siostra Dextera sieje spustoszenie w jego wynalazkach i za nic ma wszelkie zakazy grzebania w nie swoich rzeczach. Tak właśnie zrodził się pomysł stworzenia prostego zabezpieczenia...
witam, napisałem dwa kody na obsługę i2c master(atmega644p): /* * main.c * * Created on: 16 lut 2018 * Author: Mirosław Kardaś * web: www.atnel.pl */ #include <avr/io.h> #include <avr/interrupt.h> #include <string.h> #include <util/delay.h> #include <avr/wdt.h> #include <avr/pgmspace.h> #include <avr/eeprom.h>...
Zamieniłem Atmega8 procesor Atmega168 i po resecie watchdoga, program się zawiesza procesor nie reaguje na zewnętrzny reset dopiero po odłączeniu zasilania i włączeniu ponownym układ działa poprawnie do ponownego resetu watchdoga. Czy może ktoś się z tym uporał, bo ja wypróbowałem już wszystko, co mi przez parę tygodni przyszło do głowy... Zamieszczam...
CPI r24, 4BRSH wylacz_usypianie...wylacz_usypianie:CLI.... Kod: avrasm ] CPI r24, 4BRSH wylacz_usypianie...wylacz_usypianie:CLI.... Powiem szczerze, że nie bardzo rozumiem. Obecny kod wygląda w ten sposób: [syntax=c]/* * main.c * * Created: 2/14/2022 1:11:10 PM * Author: Maciej */ #include <xc.h> #include <avr/wdt.h> #include <avr/interrupt.h>...
Rozumiem doskonale ale zrobiłem coś innego, mianowicie przy resecie watchdoga zmienne sie resetują ale można zdefiniować zmienna w ten sposób : [syntax=c] uint8_t cycle __attribute__ ((section (".noinit"))); [/syntax] Stan zmiennej jest zapamiętywany nawet po resecie watchdoga. Dlatego można zliczac cykre uruchomienia resetu. [syntax=c] int main(void)...
NIestety poprzednicy mają rację 2313 ma trzy źródła sygnału zerującego: 1. Power on reset - gdy napięcie zasilania spadnie poniżej 1.0 - 1.4V dla zbocza narastającego (wł. zasilania) i 0,4 - 0,6 dla opadającego (wył. zasilania). 2. External reset - stan niski na wejściu RESET przez 50us 3. Watchdog - gdy jest uaktywniony Powyższe sygnały zerujące zerują...
Mam taki problem z PIC16F876A: chce wyslac odpowiednia informacje na lacze szeregowe gdy wystapi reset WDT. Prosty ponizszy kod coprawda powoduje, ze uklad sie resetuje (co ok 2 sekundy wysylane jest " start OK ") ale nie chce wyslac informacji o resecie watchdoga. Wg pdfa (ktorego prawdopodobnie zle rozumiem) bit TO jest zerem po restarcie WDT. Ale...
Detektor prądu upływu, zwany częściej wyłącznikiem bądź bezpiecznikiem różnicowoprądowym, to układ zabezpieczający obwód przed upływem prądu do masy alternatywnymi do dedykowanej ścieżki. Tego rodzaju wyłącznik rozłącza układ w momencie, gdy różnica prądu wpływającego do obwodu i wypływającego z niego przekroczy zaprogramowany próg. Odmiennie niż typowe...
http://obrazki.elektroda.pl/7154876600_1... Boberov Unbelievable Boot Loader V0.1 2013 Na wstępie skrócone informacje na temat projektu którego szerszy opis znajduje się w dalszej części tekstu. Program bootloadera przeznaczony jest dla ATMEGA8 (po minimalnych zmianach każdy AVR z wystarczającą ilością pamięci), umożliwia programowanie...
Witam wszystkich, proszę o pomoc w rozwiązaniu problemu w kodzie w języku C ale ze wstawką asemblerową. Poniżej zamieszczam kod. [syntax=c]/* * main.c * * Created: 2/14/2022 1:11:10 PM * Author: Maciej */ #include <xc.h> #include <avr/wdt.h> #include <avr/interrupt.h> #include <util/delay.h> #define WDT_ENABLE ISR(WDT_vect)//przerwanie...
Wprowadzić uC w tryb POWER_DOWN możesz zawsze, tylko jakie będą tego efekty, jak mówi datasheet: -zatrzymywany jest oscylator zewnętrzny - z trybu tego uC może zostać wybudzony poprzez zewnętrzny reset, reset od watchdoga oraz reset od układu Brown out detector,zewnętrzne przerwanie od INT0/INT1 - Ten tryb uśpienia w zasadzie zatrzymuje wszystkich generowanych...
W skrocie: watchdog to jest taki licznik (niezaleznie taktowany) ktory po przepelnieniu powoduje reset procesora, zapobiega tym samym zawieszeniu sie go. Zerujac co pewien czas licznik watchdoga powodujemy ze program bedzie sie nam nadal wykonywal, a w przypadku gdy procek nam sie gdzies _zamysli_ i nie wyzeruje w odpowiednim momencie watchdoga nastapi...
Roznica pomiedzy skokiem pod adres $0000 a reset przez watchdoga jest i to spora. Watchdog sprzetowo linie RESET na jakis czas aktywuje. Wtedy wewnetrznie wszystkie rejestry opisane w dokumentacji przyjmuja swoj stan poczatkowy. Przy skoku pod adres $0000 ciagle dzialaja przerwania, sa poustawiane rozne rejestry wczesniej zainicjalizowane wiec moga...
wyłączenie watchdoga układ watchdoga rejestr watchdoga
satel sabotaż sygnalizator toledo świateł procesor szybkość komputer
Oznaczenia kabli na prądnicy SHL M17 Gazela Struktura pliku MIDI: nagłówek i ścieżki