Ja rozumię jak działa watchdog. Hmm. Konstruktorzy wychodząc naprzeciw najnowszym trendom w konstruowaniu mikrokontrolerów, wbudowali do procesorów AVR układ Watchdog. Jest to specjalny licznik, zliczający impulsy zegarowe 1MHz. Gdy nastąpi przepełnienie tego licznika, generowany jest sygnał RESET by wyzerować procesor. Do programisty zatem należy...
Dotychczas nie zależało mi, żeby jakiś układ zabezpieczać watchdog'iem, ale w miarę rozwoju mojego projektu zaistniała taka potrzeba. Przeczytałem tutorial na "wkrętaku" i wszystko niby jasne, proste a jednak musi być jakieś ale... W moim programie jest funkcja while(1) gdzie mógłbym wstawić _WDR(); ale jest tez funkcja programowania, gdzie na bardzo...
master_pablo ---> gaaaat demit ;) ale odstawiłeś teraz bajerek ;) no coś pięknego !!! - i to makefile - EXTRA! Ciesze sie, ze Ci sie podoba :). .... odnośnie tego if( uart_waitchar(500) < 1 ) goto CallApp; to ma to oczywiście za zadanie oczekiwać na dane z PCta ale max przez okres 500ms, jeśli nie nadlecą to bootloader się wyłącza....
W programie chciałbym umieścić funkcję powrotu do bootloadera. Robię to w ten sposób: void reset() { cli();wdt_enable(WDTO_15MS... } Słyszałem, że watchdog działa tak, jak fizyczne zwarcie linii RESET do masy. Jednak po wywołaniu reset() program wraca do swojego początku, zamiast w pełni resetować urządzenie....
zastąp signal i stary vektor INTERRUPT0 SIGNAL (SIG_INTERRUPT0) { x++; } na nowsze ISR i INT0_vect ISR (INT0_vect) { x++; } tu masz wszystkie przerwania http://www.nongnu.org/avr-libc/user-manu... a co do watchdoga hmm... żeby użyć #include <util/delay.h> musisz dać wcześciej #define...
Jak myślisz o jakimś pojedynczym regulatorze z wyświetlaczem, to proponuję cyfrowe czujniki temperatury Dallas. ATmega32, wyświetlacz LCD, klawiatura (4x4), 1wire (dla czujników), klucze rezystorów w termo-zaworach na tranzystorach Mos-fet, zegar/pamięć RTC z podtrzymaniem bateryjnym (czas i nastawy temperatur). Program powinien zawierać funkcję watchdog,...
Jeżeli chcesz wykorzystać Watchdog jako rodzaj timera, to w rejestrze WDTCR powinno się ustawić bit WDTIE. Ponadto za pomocą bitów WDP3...WDP0 należy ustawić prescaler Watchdog'a. Z tego wynika co jaki czas będzie przerwanie. Jeżeli np. potrzeba 8 s, to ustawić należy WDP3 i WDP0, czyli powinno być: https://obrazki.elektroda.pl/1370064900_...
Włączył Ci się "hardware watchdog". Zrób "mass erase" a następnie albo wyłącz "hardware watchdog", albo skasuj też obszar "option bytes" (lub przywróć tam wartości domyślne).
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...
telekomuna - zajmuje sie mikrokontrolerami wiem jak działa watchdog :) chodziło mi o to że program nie resetuje (zeruje) rejestru watchdoga przez co on sie przepełnia i generuje reset, jak napewno wiesz, watchdog jest licznikiem zliczajacym cały czas impulsy (jakie zalezy od ustawien rejestrów preskalera) programista powinien systematycznie w programie...
Witam! Przepraszam, że tak późno ale sesja... Problem okazał się być banalny -wystarczyło wyłączyć watchdoga na FS i wszystko pięknie chodzi. Dzięki wszystkim za pomoc i uważam temat za zamknięty.
w programie mam config watchdog=32 , resetuję go w przerwaiu co około 2ms i w zasadzie jest ok , ale czasami program się zwiesi (nie reaguje na przyciski) a watchdog nie resetuje procesora , czy to możliwe żeby program wisiał a przerwania działały ? w programie mam kilka pętli DO...LOOP , czy zrezygnować z resetowania watchdoga w przerwaniu i zrobić...
Bascom sam się nie zajmie resetowaniem Watchdog'a, jak słusznie zauważył Holy . Żeby z niego skorzystać najpierw trzeba go skonfigurować (ustawić stopień podziału - od tego zależy czas potrzebny na przepełnienie jego licznika) poleceniem CONFIG WATCHDOG = czas , później uruchomić: Start Watchdog . Teraz w newralgicznych punktach programu musi zostać...
Witam. Koledzy jak ogarnąć watchdog-a sprzętowego w ESP8266? Szukałem czytałem że esp ma watchdog-a programowego i sprzętowego ale nie ogarniam tego. Chciałbym to zrobić tak jak w Bascomie, ustawiam watchdog-a sprzętowego na jakiś czas a później w programie go resetuję jak program stanie to watchdog załatwi resztę. A może ktoś podlinkuje jakiś zrozumiały...
WDTON Fuse Unprogrammed: In this mode, the Watchdog Timer is initially disabled, but can be enabled by writing the WDE bit to 1 without any restriction. A timed sequence is needed when changing the Watchdog Time-out period or disabling an enabled Watchdog Timer . WDTON Fuse Programmed: In this mode, the Watchdog Timer is always enabled , and the WDE...
No ja walczyłem z nano v3.0 i taki sam efekt miałem nie wyłącza WDT po resecie... WDTON Fuse Unprogrammed: In this mode, the Watchdog Timer is initially disabled, but can be enabled by writing the WDE bit to 1 without any restriction. A timed sequence is needed when changing the Watchdog Time-out period or disabling an enabled Watchdog Timer . WDTON...
możesz skorzystać z programu typu "watchdog" np. [url=http://www.kiwimonitor.com/kiwi_app... lub w batchu jak wpiszesz START /WAIT "sciezkado.exe" to interpreter czeka na zakończenie programu. [url=http://ss64.com/nt/start.html]Link
AVE... Watchdog timer to specjalny zegar w mikrokontrolerze, który resetuje układ, jeśli ten się zawiesi. Brown-out reset to z kolei układ, który resetuje i wyłącza mikrokontroler, jeśli napięcie zasilania spadnie poniżej poziomu, przy którym układ pracuje stabilnie... Na moje oko odczytało Ci program poprawnie. Podłącz nowy mikrokontroler do programatora,...
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...
Co do książki : to czy przeoczyłem czy nie ma w niej wzmianki o Watchdog-u ? Jest ale tylko bardzo króciutka i teoretyczna wzmianka, na stronie 53. Jest to dość prosty moduł mikrokontrolera - taki jakby timer, który jak wystartuje i doliczy do końca to BUM czyli reset procka. A jak nie chcemy resetu to wciąż musimy w programie resetować ten timer żeby...
A watchdog masz wyłączony?
Program piszę w kompilatorze BASCOM_AVR
zalezy od tego z jakiego powodu chcesz go resetowac - moze to byc watchdog, który pilnuje czy np. program sie nie zapętla, czy np. brown-out który pilnuje i resetuje uC przy spadkach zasilania.
No ale Panowie jeśli Watchdog daje radę podnieść procesor po zawieszeniu to po co mam szukać buga w programie? Czy nie jest tak że po zawieszeniu się programu watchdog resetuje procesor i ma być on znów włączony od początku poprawnie? Jeśli tak i jeśli mam nawet buga w programie to mimo wszystko sterownik nie powinien umierać jak ma to miejsce u mnie....
Domyślnie jeśli Watchdog jest włączony cały czas to po resecie ma domyślnie ustawiony czas 16ms (bity WDP2..0 w rejestrze WDTCR są zerami) Zatem układ wciąż ci się resetuje po pierwszym przebiegu. Żeby się tego pozbyć wklej sobie przed funkcją main() coś takiego static void __init3( void ) __attribute__ (( section( ".init3"...
Jeśli resetował by prawidłowo to program wgrany do Uc powinien startować od początku. Dzieje się tak tylko kiedy zostanie naciśnięty reset PIN. Gdy układ zresetuje WATCHDOG to program nie startuje od początku, tylko widać przypadkowe znaki na wyświetlaczu. Dopiero po resecie z pinu wszystko wraca do normy.
u mnie nie ma tego problemu z przekaźnikiem, program wczesniej działal na atmega8 i bylo ok
A jeśli "pętla główna" jest właśnie w przerwaniu a w mainie program nie robi nic ( while(1){} zaraz po inicjacji peryferiów ) albo nie robi nic ważnego? A gdzie ląduje program po skończonym przerwaniu? Gdzieś ten reset wachdoga trzeba dać. mianowicie watchdog nie resetuje urządzenia. Jakie mogą być tego przyczyny? Ewentualnie, czy ktoś ma jakąś wskazówkę,...
Wyłącz watchdog-a i bedzie dobrze.
Nie blokuje. To tylko nakazuje skok pod podany adres i jak wskażesz 0 to skoczy na początek flasha gdzie zaczyna się program. To jednak nie resetuje procesora całkowicie. Wszystkie zapisane rejestry zostaną nietknięte a to może nie być pożądaną opcją. Lepiej jest chyba ustawić Watchdog z najkrótszym czasem to zresetuje uC całkowicie i każe mu skoczyć...
Witam, można sprawdzić. Jak wynika z komunikatów wczytały się słowa konfiguracyjne. Normalnie jest to kombinacja znaczników, która człowiekowi niewiele mówi i należałoby to porównać z dokumentacją. Na szczęście MPLAB zamienia to na postać zrozumiałą dla człowieka. Trzeba wejść do menu konfiguracji procesora i obejrzeć ustawienia: typ oscylatora, watchdog,...
Cena uwaga tylko czy przy takiej sekwencji watchdog nie jest nad wyrost ? On tylko resetuje procesor gdy program się zawiesi a tu wystarczy przycisk reset i operator sam zresetuje
No tak ale reset to jest chyba reset i procesor się resetuje. Mam ustawioną opcję tylko resetu sprzętowego, ba ATtina ma możliwość jeszcze generowania przerwania. Bezpieczniki ustawione są jak załączniku. Nawet sprawdzam na początku programu czy reset pochodzi z watchdoga, ale tak nie jest. A co do resetowania watchdoga to wiem o tym po prostu tu watchdog...
Program się resetuje jak go jumpniesz w kosmos, symulator to potwierdza;)
miałem ewidentny błąd w programie: funkcja wykonywała się dłużej niż 2sek i avr resetował się..
Mozna spróbować uruchomić watchdog'a (glodny pies jezeli sie go nie dokarmia resetuje program i odpala go od początku :) ) Jeżeli cały program wykonuje sie w miarę szybko można raz go "dokarmiać" na samym początku jeżeli nie to trzeba to robić kilka razy.
Resetuj WDT tam, gdzie to potrzebne. Zamiast polegać tylko na loop(), warto "karmić" WDT strategicznie, czyli tam, gdzie może wystąpić problem. Warto też skonfigurować Interrupt Vector dla Watchdog Timer (WDT), co pozwala wykonać funkcję przed resetem układu. Funkcja taka może wykonać jakiś zapis stanu do EEPROM czy też wykonać sygnalizację resetu wskutek...
dondu - totalnie mylisz pojęcia. BOD i WD to dwa zupełnie różne układy, wyzwalane zupełnie różnymi bodźcami. WD powinien być stosowany w każdej aplikacji, jako dodatkowe zabezpieczenie. I bynajmniej nie z powodów o których piszesz. Jeśli program może wchodzić w dziwne stany to jest po prostu źle napisany - rozwiązaniem jest napisanie go poprawnie. A...
Należy resetować watchdoga w takich miejscach w programie gdzie wykonywanie programu zajmuje więcej czasu. Nie ma tu znaczenia czy są to pętle,sub-y itd. Po prostu watchdoga należy resetować tak często aby się nie przepełnił i nie dokonał restartu.
Potrzebny mi timer z wyzwalaczem i przerwaniem na ATmega. Takie rzeczy robi sie programowo, albo programowo wydłużając czas zliczania timera sprzętowego w mikrokontrolerze, można też z uzyciem przerwań. Dlaczego chesz to zrobić całkowicie sprzętowo, obawiasz się o to że program przestanie poprawnie pracować? czy nie wiesz jak to zrealizować w programie?...
Ten sterownik nie będzie już bardziej rozbudowywany, gdyż sercem układu jest ATTINY2313, który w zasadzie ma wykorzystaną całą pamięć, by troszkę przyoszczędzić miejsca po zakończonym przejeździe jedna z nóg mikrokontrolera resetuje go, zamiast wracać do początku programu. Podejrzewam że odpalenie watchdog'a wiele miejsca by nie zabrało a nóżka zawsze...
Witam, nie wiem czy to odpowiedni dział więc w razie czego proszę przenieść. Do rzeczy. Na rpi3 mam napisany przez siebie w Pythonie program. Używa on biblioteki pygame. Normalnie działa bez zarzutu ale co 2-4 dni wyrzuca błąd "Fatal Python error: (pygame parachute) Segmentation Fault" i wychodzi z programu. Wydaje mi się, że może za tym stać nieumiejętnie...
Nie rozumiem dlaczego nie możesz skorzystać z resetowania przez watchdoga. Potrzebujesz w pewnym wybranym momencie zresetować procek - tak piszesz, zatem w tym momencie zatrzymaj program aby watchdog zadziałął i po sprawie . Jeśli trzeba to wyłącz również w tym przypadku przerwania. Najlepiej zrobić to w niezależnej procedurze.
Boisz się zawieszenia sterownika, czy usterki wejść/wyjść? Bardziej obawiam się zawieszenia sterownika. Ale poruszyłeś bardzo ważną kwestię z tą usterką wejść/wyjść. Przy moich założeniach, jeśli uszkodzi się wyjście to watchdog będzie namiętnie resetował PLC. :-D Masz możliwość ingerencji w program? Tak. Co to za sterownik i jaka maszyna? Sterbox....
Robiłem z while i też nie działało. W moim projekcie ten plik main.c jest jedynym plikiem. I myslę, że tu może być problem. Dopiero teraz przeczytałem o plikach Cstartup, w których procek jest inicjalizowany. Czy to dlatego, że nie mam tych plików w projekcie, program może nie działać? PS. WDR? :) Chodzi o to, że jeśli mam funkcje while(1) to watchdog...
Mój ulubiony "kwiatek" :) Gosub Wybor Wybor: Potem mamy masę gosub'ów bez poprawnego wyjścia. Generalnie program źle napisany. Piszemy programy tak by subrtyny mogły się kończyć i nie zagnieżdżamy nadmiernie podprogramów. To nie watchdog tylko przepełnienie stosu. Chociaż i watchdog może w kilku przypadkach resetować, zwłaszcza tam gdzie jest WAIT...
Zapytam po raz drugi: co to jest procedura obsługi Watchdoga?? To jest "Watch" ale bez "dog"... ;) Może być ewentualnie obsługa inicjalizacji watchdoga w tych procesorach, w których jest on konfigurowalny. A dla potomności : watchdog to licznik resetujący układ po upłynięciu odliczanego czasu. W celu zapobieżeniu resetowi układu program wykonujący...
Zasilanie całości prawidłowe? Tzn pewnie i tak zasilasz z USB, ale możesz sprawdzić czy napięcia są prawidłowe za stabilizatorem etc. Exception swiadczy o problemie z wykonywaniem programu, jak powoduje to kod od WiFi to może spróbuj wyczyścić pamięć i wgrać nowy firmware. rst cause 2 to wygląda na wciśnięcie przycisku reset. Nie rób tyle delayów bo...
Sprawdzałem na symulacji, program zawiesza się w znanym mi miejscu, z nie do końca znanego powodu, watchdog go resetuje i tak w kółko, jeszcze trochę przy nim posiedzę. Fuse bity prawidłowo ustawione.
Czyli wyłączenie WatchDoga jest na takim samym poziomie bezpieczeństwa jakie zapewnia sam WatchDog, bo zawsze można wyobrazić sobie takie działanie programu że WatchDoga jest kasowany a jednak program nie działa zgodnie z naszym zamiarem. Jak dla mnie prawdopodobieństwo tego, że program wpadnie w pętlę, w której będzie w sposób nieuprawniony resetował...
STM32L011D? Pamięć niestety niezgodna z Twoimi wymaganiami, bo aż 8KiB. Robiw lubi AVR. Praktycznie każdy nowy Tiny czy Mega nadaje się do tego co chce zrobić. Użycie watchdoga ma tą wadę, że resetuje uC. Jeśli jednak watchdog ma możliwość generowania przerwania, to problemu nie ma, trzeba w przerwaniu od watchdoga zresetować go i program będzie kontynuowany.
http://www.elektroda.pl/rtvforum/topic48... Cytat: Nie wiem czy to jeszcze aktualna uwaga, ale miałem ten sam problem, a po wczytaniu się w dokumentacje pisze tam że po włączeniu watchdoga i zresetowaniu układu - watchdog nie jest wyłączonay ( bit WDE w rejestrze WDTCSR nie jest zerowany ). Musisz jako pierwszą instrukcję w programie umieścić...
masz na myśli wdt_enable(WDTO_2S); //Włączenie Watchdog'a z czasem opóżnienia 2s a potem w pętli głównej programu wdt_reset(); natomiast nie resetował mi sie watchdog podczas gdy byłem w menu. Temat zamykam. Dzięki za pomoc.
Kolego WatchDog resetuje uP i raczej nie policzysz 'resetów'. Jak już to w pętli oczekującej wstaw dodatkowy warunek po przekroczeniu, którego program 'pójdzie' dalej. Np: i = 0; while((i<1000) && (!dzwonek)) i++; //dalsza część np. if(i == 1000) { //nie było dzwonka - ale uwaga co w momencie gdy dzwonek...
... Wpisałem bezpośrednio de rejestru WDTCR wartości bitów podane w dataschet a efektu brak, wpuszczam program w pustą pętlę i nie resetuje się procek... A "pochwalisz" się tymi wpisami ;)? Po czym rozpoznajesz że procesor się resetuje?
Tak na szybko, bo wychodzę do pracy. Na przykładzie DS18B20. Zakładam, że komunikację z czujnikiem masz opanowaną, więc odczytałeś z czujnika dane i masz je w dziewięciobajtowej tablicy - u mnie to Sc(9). Do obliczania odebranej temperatury korzystam z funkcji, którą deklaruję tak: Declare Function Decigrades(byval Sc(9) As Byte) As...
Okazało się, że na schemacie, który wcześniej zamieściłem były błędnie podane wartości elementów. Układ z tymi wartościami elementów co prawda działa, ale trzeba dość mocno odjechać z nastawami potencjometrów, żeby to działało. W załączniku zamieszczam poprawiony schemat układu z właściwymi wartościami elementów oraz z dodatkowymi komentarzami dotyczącymi...
Myślę, że błąd nie leży w programie tylko w schemacie elektrycznym i jego implementacji. Pokaż schemat otoczenia MCU i rysunek płytki. Myślę, że coś jest poważnie nie tak z zasilaniem.
Witam. Zadaniem urządzenia jest głównie odpowiadanie na słowa przychodzące na UART, co oznacza, że program większość czasu "wisi" na poleceniu input. Ponieważ urządzenie ma pracować 24h na dobę, i być maksymalnie niezawodne, oczywistym wydaje się użycie watchdoga. Czy w tej sytuacji (program "wiszący" na input, nie mający możliwości zresetowania watchdoga)...
DZIĘKI BARDZO. W końcu działa :) Keil nie chciał wgrywać programu i debugować ponieważ pamięć była zabezpieczona, trzeba było ją odblokować i wszystko jest ok. Rzeczywiście uc resetował się przez układ watchdog. Najciekawsze jest to że był on od początku i nawet o tym nie wiedziałem. Jeszcze raz dziękuję bardzo ;) Pozdrawiam
Sprzwdz czy telefon wyłacza sie bez karty...WatchDog działa przy wlozonej karcieSIM, zazwyczaj telefon resetuje sie po 3,5 lub 15 min.Mozesz to sprawdzic programem MX-key przy odczycie info z telefonu pojawi Ci sie WD Enabled.
Jeżeli PIC resetuje się być może program nie pobudza na czas Watchdog-a. Jeśli chodzi o "krzaczki" na wyświetlaczu to czasami przyczyną mogą być zbyt długi e przewody pomiędzy wyświetlaczem a PIC-em. Pojemność kabelków powoduje, że krótkie impulsy nie zdążą uzyskać wymaganej wartości i są wyłączane przez procesor. Można skrócić kabelki albo wydłużyć...
Moze ten Pies musi ugryzc procesor (zresetowac) jak zasnie (zawiesi sie) :-) ?? Właśnie o to chodzi, jak psu nie dasz co troche kiełbasy to zrobi reset procka (interpretacja panów Gałków). Cały trik polega na tym że instrukcje resetu watchdoga muszą być wykonywane co jakiś czas bo inaczej procek się będzie resetować. Jeśli procek będzie wykonywać z...
Kiedy chciałem przesunąć wskaźnik na adres obok poprzez dodanie do niego wartości 'i' to procesor resetuje się nie wchodząc nawet do tej pętli . Po włączeniu zasilania jest reset, reset, reset , reset........ Ja się tylko zastanawiam, jak to jest możliwe, że się resetuje przed wejściem do tej pętli skoro zakładamy, że błąd jest w pętli. Cztery pytania...
Reset podciągnąć do zasilania rezystorem 10kΩ i odsprzęgnąć zasilanie kondensatorami 100µF (elektrolit) i 100nF(zwykły, może być ceramiczny). Najprawdopodobnie układ się resetuje z jakiegoś powodu. Może Watchdog jest włączony (Zaprogramowany fusebit WDTON ) ?
Sprawdziłem z kwarcami 4,6,20Mhz na każdym działa inaczej ale nie stabilnie. LVP Off. Może procek jest uszkodzony, nie mam drugiego żeby sprawdzić. Może i jest uszkodzony, ale ja bym obstawiał że to chyba szybciej wina błędnego montażu. Opukaj procesor, obstukaj, zrób program żeby dioda migała szybciej. Sprawdź reset, zasilanie, może BOD resetuje układ,...
Rzeczywiście :D Ale to pokręcone. edit: Wydaje mi się że podaję poprawnie tablicę z moim znakiem do funkcji GLCD_DefineCharacter. Ale nie wiem jak wywołać na lcd mój znak. Czy może problemem jest typ zmiennej jaki użyłem? Problem z pikselami rozwiązałem. Okazało się że zbyt szybko pisałem do LCD przez skrócenie czasu funkcji _delay. Petit-ka zdecydowałem...
Witam ! Buduję urządzenie wykorzystujące ATmega644. Natrafiłem na dziwny problem, a w zasadzie dwa. Soft w Bascomie. Jak włącze w programie watchdog'a, to po resecie procka licznik watchddog'a dalej pracuje. Nie reaguje na Disable. W sumie nie wiem czy to dziwne, ale mnie dziwi. Drugi jest dużo gorszy. Jak wyłączam zasilanie trafo i układ zostaje na...
Witam, mam pytanie, chcę dodać do programu obsługę watchdoga, mam STM32F411RE, watchdog jest taktowany zegarem 32kHz, dając pleskaler 32 i ustawiając liczenie do 10000 powinno być że program restartuje się co 10s jak się go nie opóźni. kod: [syntax=c] IWDG_WriteAccessCmd(IWDG_WriteAccess_Ena... IWDG_SetPrescaler(IWDG_Prescaler_32); IWDG_SetReload(10000);...
Mam malutki problemik z jednym z moich układów otóż watchdog tak jakby nie zawsze resetował procka i pomimo że jest włączony, program się po prostu zatrzymuje. W jednym z tematów widziałem że komus pomogła "bezpośrednia" konfiguracja tj. ustawianie bitów. Chciałbym, wiedziec jak ustawic watchdoga na 2 s, uruchomic, zatrzymać i zresetować. Próbowałem...
Niektóre normy bezpieczeństwa nie zezwalają na używanie wewnętrznych watchdogów i obwodów resetujących. (...) bardzo ciekawa sprawa. osobiscie sie nie spotkalem z taka zasada, a mam do czynienia m.in. z aparatura medyczna. watchdog jest ukladem zabezpieczajacym program przed zawieszeniem - a scislej nie zabezpiecza a wykrywa ewentualne zawieszenie...
W tym mikrokontrolerze (tak jak piszesz) możesz ustawić Watchdog tak, że nie resetuje mikrokontrolera, tylko zgłasza przerwanie, które budzi mikrokontroler. Tak ustawiony mikrokontroler po wykonaniu przerwania Watchdoga wraca do miejsca, w którym został uśpiony i wykonuje dalej program, czyli np. pętlę główną. Aby ponownie wszedł w Power Down musisz...
Ratujcie!!! Męczę się z AD7730 już od miesięcy, tak się uparłem, że nie robie nic innego tylko walczę z tym i nic, aż mi się odechciewa całej elektroniki. Wykonałem płytkę pod AD7730 i łącze go z AVR M8, program pisze w Bascom (bo jest prosty) i wygląda on tak: $regfile = "m8def.dat" $crystal = 8000000 Config Lcd = 20 * 4 Config Lcdpin = Pin , Db4 =...
Może WatchDoG chodzi i go resetuje. A jeszcze pokaż program. Możesz mieć zwarcie od jednej z sąsiednich linii. Jak na nich jest przebieg o wypełnieniu powiedzmy 99% to woltomierz pokaże VCC, ale przez ten 1% będzie GND i to wystarczy do zresetowania procesora. Albo inaczej – przebiegu tam nie ma bo proces się resetuje. Tuż po uruchomieniu procesor...
Nieznam się na mikroprocesorach, ale one też robią błędy, wypadają z programów, zawieszają się... Wtedy trzeba reset :D Niektóre układy wyposażone są w tzw. Watchdog (jeśli coś nie popier...), który wykrywa zawieszenie się procka i sam (osobiście) go resetuje. Pozdrawiam.
(at)mzielin może i masz racje z tym watchdogiem (szczerze myślałem że się bez niego obejdzie :) ), jednak chyba nie umiem go prawidłowo zaprogramować, a mianowicie: void reset(void) { asm("cli"); //na wszelki wypadek asm("wdr"); //reset flagi WDRF w rejestrze MCUSR //nie ustawiam bitów WDP0..3, ponieważ...
Wyobraźmy sobie sytuację, w której regulator pracuje w środowisku bogatym w promieniowanie elektromagnetyczne na częstotliwościach kilkaset MHz. Ten regulator to ma przy cyklotronie pracować czy jak? regulator sam jest źródłem zakłóceń i każde jego załączenie pompki powoduje też reset komputera. Nie czarujmy się. Gdyby każde załączenie pompki resetowało...
W kodzie nic nie widać. Być może problem leży w przejściówce UART, programie RealTerm lub jeszcze gdzie indziej. Ciagłe resety mogą byc spowodowane przez watchdog, w kodzie nic nie ma ale moze by włączony fuse bitami. Oczywiście jeśli nie włączałes to same się nie włączyły a więc to hipotetyczna możliwość. To samo z układem BOR - może resetować µC...
WatchDog tylko resetuje komputer (tak jak przycisk reset na obudowie). Żeby komputer wstawał po zaniku zasilania musisz ustawić odpowiednią funkcję w biosie. Po powrocie zasilania komputer odpala się, ładuje system operacyjny i odpala program rejestratora (skrót musi być w autostarcie), i rejestruje tak jak przed zanikiem prądu.
Fuses (hex): D8 23 Jeśli D8 to high fuse to masz RESET VECTOR ustawiony na inny obszar pamięci niż standardowy, a używany zwykle z bootloaderem. Tak ma być? Jeśli nie, to ustaw domyślne czyli D9 Niby BOD masz włączony... a działa chociaż? Atmega przy napięciu np 3V5 powinna być w stanie reset. Dla mnie ta atmega jest niepewna, bo masz watchdog który...
Nie wiem jak to jest konkretnie w AT90xxx a zwłaszcza a Bascomie, ale mogę Ci powiedzieć na czym polega sama idea. Jeżeli to coś to ma być pilot to wystarczy, że od czasu do czasu sprawdzi stan przycisków i wyśle gdzieś jakiś rozkaz. Oznacza to, że w pozostałym czasie urządzenie jest bezrobotne i może iść spać. W większości nowoczesnych procków jest...
Po prostu "kocham" taki zapis :| DDR &= 0b11111110; //1 przesunięte o 0 i zanegowane przesuwanie o 0 nie ma sensu, bo to nie jest przesuwanie, poza tym używanie przesuwania bitowego do ustawiania portów jest jednym z najbardziej nieczytelnych rozwiązań. W każdym razie: powinno działać. Co w takim razie może być źle: - wywołujesz przerwanie, które nigdzie...
Napisalem prosty kod, ktorego zadaniem jest wysylanie na lacze szeregowe literki 'd' z predkoscoia 9600 bodow tak czesto, jak tylko jest to mozliwe. Watchdog jest wylaczony - wszystko gra w najlepszym porzadku. Jednak z watchdogiem zaczynaja dziac sie dziwne rzeczy. Watchdog powinien co okolo seunde resetowac program - ale nie powinien wplywac na dane...
Witam, mam problem z STM32F101CB, nie wiem dlaczego się tak dzieje ale teoretycznie działają program, który wgrywam na płytkę, to w trybie debug'a ciągle się resetuje. Możliwe jest że się resetuje płytka jednak robi to tak szybko że ja na wyjściu cały czas dostaje poprawne dane. Ale do meritum, ustawiam breakpoint'a na samym początku main'a, zapuszczam...
Ok... w takim razie nie mam innych pomysłów, co w programie mogłoby powodować ten problem. Program jest rozległy, ale jednocześnie jest to po prostu długachny ciąg warunków, bez szczególnie dużych rozgałęzień, w nim nigdzie nie ma żadnej możliwości na "zamrożenie" urządzenia, a przynajmniej ja takiej możliwości nie widzę (tak, wiem, to "ja" może być...
złamana ośka w silniczku . Otwierasz wymieniasz i działa dremel wiertełko i kawałek druty i 15 minut Może kolega ma powalającą wiedzę ale z myśleniem nie za bardzo. Jak mechaniczne uszkodzenie silnika może mieć wpływ na działanie drugiego silnika oraz wyświetlacza? Ta ysterka jest zawsze taka sama Życie było by zbyt proste gdyby to było prawdą. Na...
twoj problem wyglada na watchdoga, ktory niby na samym koncu pliku jest jakos dziwacznie wylaczony, albo i nie. jesli programujesz to w MPLABie, to ustaw bity konfiguracyjne recznie - watchdog MUSI byc wylaczony, bo w kodzie nie ma nigdzie resetowania go. jego dzialanie bedzie sie objawiac dokladnie tym o czym mowisz - po krotkiej chwili procek sie...
Nie popełnisz błędu ale dodasz element, który w zasadzie niczemu nie będzie służył. Pisząc o programowym resecie, chodziło mi o programowe generowanie sygnału resetu dla zewnętrznego urządzenia ATAPI. ATMegi nie potrzebują żadnych układów generowania resetu, same się resetują po podaniu zasilania i posiadają sprzętowe układy BOD oraz Watchdog, które...
Nie mogę Musi być sprzętowo bo układ jest zbudowany z kilku procków które w czasie startu przekazują sobie dane i z tego powodu trzeba restartować wszystko jednocześnie. To czego szukasz to Zewnętrzny Watchdog. Pewno uda się go zrobić na 555, ale można też kupic gotową kostkę do tego przeznaczoną. Możesz użyć wewnętrznego WatchDoga, a na początku programu...
hej! Wiem, że jest sporo postów,a każdy z krótkim opisem watchdoga, ale nie znalazłem takie na temat 8051, w którym jest opisane wyłączenie watchdoga. Tak wogóle to nie wiem czy standardowo watchdog w at89s52 jest włączony czy wyłączony. Jeżeli jest włączony to prosze o pomoc w zakresie jego wyłączenia. A problem ten wyniknął dlatego, że mam program,...
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...
Program bez watchdoga zasadniczo zawieszac sie nie powinien - jezeli robi to regularnie albo bardzo czesto to znaczy, ze problem jest w Twoim sofcie albo w wadliwym ukladzie (zasilanie, prowadzenie masy, odsprzeganie zasilania - mikrokontroler natomiast na pewno jest w porzadku). Watchdog jest dodatkowym zabezpieczeniem w razie jakichs bardzo niezwyklych...
Tak jak napisałeś powinno być dobrze. Jeszcze jedna uwaga. Poprzednio miałeś ustawione bity na Interrupt and System Reset Mode. To może obecnie skomplikować ci możliwość przestawienia nastaw WatchDoga.Jeśli po wpisaniu tych wartości do rejestru nadal działanie WatchDoga nie będzie zgodne z oczekiwaniami to dzieje się tak dlatego iż w sterowaniu WatchDogiem...
Watch-doga włącza się po to aby urządzenie nie zwisło dokumentnie. W przerwaniu nie spełni on swojej funkcji zabezpieczenia. Przcież nie włączasz go tylko po to aby aby był włączony. W programie głównym mimo skomplikowania możesz wielokrotnie umieszczać resetowanie, w każdej pętli i po kłopocie. Wcale nie trzeba liczyć tych 16000 cykli. W ten sposób...
Układ jest prawidłowy. Oczywiście na emiter Q1 musi być przyłożone +5V. Możesz mieć jakieś kłopoty z softem. W zasadzie może wydaje Ci się, że procek (powinienem pisać mikrokontroler...) się resetuje ? Na Twoim miejscu zrobiłbym możliwie najprostszy program, który będzie np. załączał i wyłączał wentylator co kilka sekund. Po wgraniu tego softu można...
Witam Mam komputer z kartą wizyjną Novus NVB200 -8MPG Komputer pracuje stabilnie i bezproblemowo do chwili kiedy nie podłącze się zdalnie tj; przez LAN (dokładnie WIFI) programem DVR NET lub przez IE7 do komputera. Po podłączeniu w losowym czasie buzzer karty zaczyna piszczeć i watchdog resetuje komputer. Czasem jest tak, że po podłączeniu się wszystko...
Podrzucę swoje dość mocno rozbudowane w możliwości urządzenie na bazie ESP-01. Kod napisany w C (ARDUINO) . Zdalne sterowanie przekaźnikiem: Kod pozwala na zdalne włączanie i wyłączanie po zdefiniowanym czasie przekaźnika za pomocą połączenia Telnet. Dzięki temu możesz zdalnie kontrolować urządzenie Router / modem . Automatyczna aktualizacja DNS: Jeśli...
Po zakomentowaniu funkcji ekrany() program zawsze działa dobrze. Dopisanie w głównej pętli wyświetlania jakiś kontrolnych znaków też jest ok. Błąd jest gdzieś w funkcji ekrany(), ale ja go nie widzę. Co ciekawe program wisi na tej funkcji w taki sposób że watchdog go nie resetuje?! Zdarzyło mi się kilka razy że po resecie bez wyłączenia zasilania program...
Dzieje się coś dziwnego z mikrokontrolerem i już sam nie wiem co ja z tego wnioskuję, na pewno wnioskuję, że nie działa tak jak powinien, prosty program, który ma inkrementować zmienną nie zlicza do końca, tylko wcześniej się resetuje, jak dodałem te kilka linijek z watchdogiem to problem się połowicznie rozwiązuje, ale nie uważam tego za rozwiązanie,...
Mam dziwny problem z debugowaniem programu (assembler) na PIC16F876A w srodowisku MPLab 7.60. Otoz program sie kompiluje prawidlowo, linker nie wyrzuca bledaw a co wiecej - generowany hex jest poprawny i dziala w rzeczywistym urzadzeniu poprawnie. Jednakze w symulacji MPLabowskiej program czesto wraca do adresu 0x0000, tak jakby byl resetowany. Watchdog...
resetować watchdog watchdog bascom resetować programie victoria
montaż zasilacza antenowego rejestrator point stiga kosiarka silnik
Kamera cofania Acesse 66445306 – napięcie zasilania 12 V DC, pobór prądu, podłączenie Szarpak nie działa: luźny sznurek - przyczyny i naprawa