A czy to też nie działa : Config Watchdog = 16 Start Watchdog Disable Interrupts być może Bascom odblokowuje przerwania w starcie watchdoga?
Czy ma ktoś pomysł jak zabezpieczyć się przed utratą danych soft zegara wynikająca z resetu? (poza zapisem do pamięci co każdą minutę?)
Witam Chciałbym wreszcie zacząć używać watchdog`a w swoich programach, ale do tej pory miałem problemy ze zrozumieniem go (może nadal mam) Proszę na podstawie poniższego pseudokodu odpowiedzieć czy prawidłowo jest umieszczony w kodzie ?? $noramclear 'dyrektywa zapobiegająca wyzerowaniu zmiennych uzytych w programie Config Watchdog = 2048 'konfiguracja...
Problem w pewien sposob rozwiazany, moze komus sie przyda Dodano linie: $initmicro ........ _init_micro: Config Watchdog = 1024 Start Watchdog Return W tej postaci watchdog poprawnie resetuje uP: $crystal = 7372800 $regfile = "m168def.dat" $initmicro Config Aci = Off Config Lcd = 40 * 2 Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.3...
chciałem zrobić wstawkę asemblerową dla watchdoga ale to już nie istotne bo nauczyłem się ustawiać poszczególne bity w rejestrach i rozumiem że to wystarczy... ale problem istnieje przesiadłem się na atmega1284p tu jest watchdog do 8 s no i dla 8 nie działa 4,2 i 1s również nie działa, działa dla 0,5 i mniej - dlaczego??? dla 0,5 s wdr Wdtcsr = &B00011101...
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ć...
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 =...
Witam wszystkich Forumowiczow, do tej pory nigdy nie miałem potrzeby pisać postu bo wszystkie problemy rozwiązywałem opcja search ;-) az do tej chwili. buduje układ przetwornika AD 24 bitowego, ktory komunikuje sie z Atmega8 po SPI hardware a ta z kolei z moim PC po RS232. Docelowo maja byc 2/3 przetworniki, poki co jest jeden i walka trwa ;-) Całość...
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ć...
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
Program piszę w kompilatorze BASCOM_AVR
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...
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...
czy używasz A(akumulator) świadomie(świadczyło by o tym użycie komendy asemblera inc). Jeżeli robisz to przypadkowo to może tłumaczyć dlaczego ci się proc resetuje. Daj dłuższe nazwy(jak ala zamiast A). Może uC ma włączonego watchdog'a?
... 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?
witam... moze mi kotos pomoc ustawic watchdog tak aby uP resetowal sie po 2sekundach... uzywam bascoma i procek resetuje mi sie po 16ms /przynajmn iej tak wynika z symulacji/ z pdf'a wyczytalem, ze mozna czas ustawic za pomoca s0,s1,s3 w WDTRST - Watchdog Reset Register (0A6h) moze mi ktos pomoc jak mam to zrobic, pewnie w asm, ale z tego to ja jestem...
To nie w bascomie tkwi problem, tylko w kompilatorze C, według symulatora na wyjściu powinien być stan wysoki, czyli 5V, wygląda to tak jakby port był w stanie wysokiej impedancji. Sprawdź częstotliwość na tym pinie, bo podejżewam że procesor nie wchodzi prawidłowo w pętle i się resetuje co chwile, najlepiej byłoby to zrobić na oscyloskopie, ale częstotliwościomierz...
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...
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)...
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.
Wpisanie w watchdoga każdej innej liczby niż 2048 czyli 2 sekundy nie daje żadnego rezultatu. Takie kwiatki to tylko w sprytnej wiedzy użytkowników Bascom wyskakują... W rejestrze Watchdog-a, który jest 8-bitowy nie wpiszesz większej liczby niż 255. Można jedynie ustawić konkretne, zaprojektowane z góry przez twórców mikrokontrolera czasy licznika....
...Urządzenie zawiera dwa MCU - każdy ma możliwość resetowania drugiego - innymi słowy - jeden nadzoruje drugi (komunikują się po RS232) i w razie jeśli któryś się by "powiesił" wtedy kolega go podnosi :) Właśnie do tego służy watchdog i nie trzeba zdublowanego systemu resetów, który moim skromnym jest konstrukcją błędną. Ale chyba się nie zrozumiemy....
'---------------------------------------... ' 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 '---------------------------------------...
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...
rejestr: MCUCSR: Bit 3 - MCUCSR.3 - WDRF - Watchdog reset flag Bit 2 - MCUCSR.2 - BORF - Brown-out reset flag Bit 1 - MCUCSR.1 - EXTRF - External reset flag Bit 0 - MCUCSR.0 - PORF - Power-on reset flag Nie znam dokładnie architektury tych procesorów, ale z mojej znajomości mikroprocesorów, wnioskuje że te rejestry flagowe służą to rozpoznania co było...
Witam ponownie No ja walczę z całym kodem, żeby go trochę zoptymalizować, ale nie bardzo się daje. zajęte 77% a nie mam konwersji danych z sht11 jeszcze zrobionych, coś mi się wydaję, że będzie trzeba się przesiąść na M32. Przykładem może być np. zapis temperatury z dokładnością do jednego miejsca po przecinku. Przecież wystarczy do tego zwykły, dwubajtowy...
Po podłączeniu LCD4BUSY wydaje się działać troszkę lepiej. Zastanawia mnie tylko : Dlaczego na M8 działa bezproblemowo a na M168 nie? I dla czego jeśli Uc jest kasowany przez WATCHDOG to nie zawsze dobrze się uruchamia, jeśli natomiast skasuje resetem to odpala za każdym razem? Cały program do M168 zajmuje 71% przy kompilacji. Jeśli dołożę coś do kodu,...
To nie tak. Faktycznie Bascom i AVR. Watchdog wyłączyłem. Normalnie soft pracował bez problemu. Po tym jak na początku użyłem rejestru do wyłączenia Rx i Tx zwarłem do masy pin Rx, włączyłem ładowanie, przywróciłem jedynki w rejestrze dla RxEN i TxEn, procek się resetował przy próbie wysłania dłuższego SMS'a. Ten restart następował po lub w trakcie...
P.S. Zapomniałem napisać że programuję w BASCOM AVR Mozna sie domyslic.. po tym: unikam jak ognia poleceń GOTO w polaczeniu z Używam mikrokontrolerów AT90S2313 i ATMEGA8 Ale do rzeczy. Licznik watchdoga musisz zerowac, jak juz wspomniano, w kazdym podprocesie, ktory wykonywalby sie w najmniej sprzyjajacych warunkach dluzej niz max czas dopuszczalny...
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...
Twoje działa, ale moje nie działa. Wklej mój kod w kompilator i zobacz co się dzieje [syntax=Bascom] $sim $regfile = "m8def.dat" $crystal = 16000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Rs = Portc.2 , E = Portc.3 , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 Cursor Off Noblink Cls Dim Cool As Word ' zmienna określająca wypełnienie...
Fusebity rozumiem że zmieniłeś na zewnętrzny kwarc. Spróbuj jeszcze wyłączyć watchdoga w programie , może gdzieś się nie wyrabia program i się resetuje.
Są rzeczywiście sytuacje, gdzie hardware'owe i2c/twi potrafi się zawiesić. Nie jestem specem od AVR niemniej kiedyś bawiłem się w atmega interfejsem TWI. Wykonywałem losowe zwarcia linii SDA zarówno w trakcie transmisji jak i gdy linia jest wolna. Czasem gdy rozwierałem linię SDA ona zamiast podciągnąć się do 5V pozostawała na 0V a w rejestrze statusowym...
acid12 -> jak zajrzysz do kodu bootloader.c to zobaczysz, że do resetu procka po załadowaniu już programu właściwego do pamięci flash stosuję metodę: asm volatile( "clr r30" "\n\t" "clr r31" "\n\t" "ijmp" ::); jeśli chodzi o możliwości zdalnego resetowania to: 1. można sobie podłączyć...
No własnie zgłupiałem do reszty ale jedno sie zgadza jestem poczatkujący i naprawde duzo czasu mi zajmuje za nim cos napisze i to zadziała. [syntax=basic4gl] $regfile = "m8def.DAT" $crystal = 8000000 'CONFIG---------------------------------... Config Lcd = 20 * 4 Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portd.6...
Nie ma pętli głównej bo chciałem wpisać dane do LCD raz aby go nie odświeżać. nawet jak mam w pętli wpisywanie i Wait 5 to resetuje sie ekran po okolo sekundzie. Sprawdze trop z watchdogiem
Jeśli chodzi o temperatury to w zasadzie ma to być tylko jeden czujnik, procedura obsługi była zaczerpnięta z mojego poprzedniego programu dlatego tak zostało. Usunąłem też podział na etapy, który tutaj nie będzie potrzebny i poprawiłem resztę wg. Twoich wskazówek. Co do deklaracji portów, przyciski mam podciągnięte sprzętowo do 1. Wygląda to tak: [syntax=basic4gl]'----------------------...
wylacz watchdoga i naucz sie czytac dokumentacje. bascom tego za ciebie nie zrobi. 0x41 0x56 0x45!!
znów przydałaby się szklana kula :D A nie masz przypadkiem włączonego watchdoga i nie resetuje uP zanim wyśle drugi tekst?
Witam :) Mam problemy z programem analizatora widma z obsługą RC5. Na lcd wyświetla głupoty albo resetuje się Atmega32.Czy w programie wszystko OK jest? Oczywiście sam program analizatora widma akustycznego działa poprawnie. $regfile = "m32def.dat" $crystal = 16000000 Config Pinb.2 = Input Config Int2 = Falling Enable Interrupts 'obsługi RC5...
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...
Jakie zakłócenia na AVR ? :D watchdog i po problemie, pamięć SRAM się nie przeprogramowuje... Oczywiście nie należy elektronice w odpowiedzialnych automatach ufać i należy stosować zabezpieczenia, zarówno przed zakłóceniami, jak i w przypadku padu mikrokontrolera. Oddzielna kwestia, ze osobiście nie ryzykowałbym stosowaniem Bascoma do bardziej skomplikowanej...
Witam Chciałm zrobić automatyczną regulację obrotów silnika. Pierwszy silnik napędza drugi silnik który pracuje jako prądnica i muszę wraz ze zmianą obciążenia prądnicy regulować obroty silnika tak aby uzyskać stałe napięcie na wyjściu prądnicy. Do sterowania zastosowałem Atmegę 8. Napisałem taki programik i niby działa, ale ... regulacja jest zbyt...
Powinieneś tak napisać program, aby taki reset nie był potrzebny a jeśli upierasz się przy tym to wykorzystaj WATCHDOGa. a jak wprowadzisz procek w tryb bootloadera (myślałem, że tego chce autor)? Jeśli chcesz resetować procka to faktycznie najłatwiej watchdogiem.
Moim zdaniem: 1. w ogóle nie potrzebujesz trybu CTC. Normal w zupełności wystarczy, ale to szczegół. 2. Watchdog resetuje Ci procka. Od momentu uruchomienia do 1 resetu masz "waitms" na co najmniej 1100ms a ustawiłeś go na 1024ms. Ale ja nie znam/nie używam BASCOMa więc moje uwagi sam zweryfikuj na poprawność.
z tego co wiem programowo tego się nie da zrobić(jakimś poleceniem)..najlepiej wykorzystać watchdoga(tego z bascoma).. a najlepiej chyba sprzętowego watchdoga. Bo rozumiem, że chcesz żeby się resetował jak się zawiesi ? Czy po co w ogóle?
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...
https://obrazki.elektroda.pl/4136220100_... Witam. Chciałbym przedstawić mój system sterowania roletami i oświetleniem w domu jednorodzinnym. System powstawał stosunkowo długo. Ewoluował wraz z budową domu. Niestety nie mogę poświęcić mu tyle czasu ile bym chciał dlatego nadal nad nim pracuje. Część komponentów doczekała się kolejnych...
Ostatnie czasy na Elce coraz więcej nie działających procesorów/Programatorów/za szybko wykonywujących się opóźnień... W związku z tym może warto by było zrobić coś w stylu "Kompedium" co zrobić, jeśli nie działa...Jeśli macie jakieś z życia przykłady piszcie, będę uzupełniał:) Nie działa procesor: 1) sprawdź czy jest zasilanie na WSZYSTKICH Nóżkach...
Zbyt wolne ale dlaczego?Układ zasilam z stabilizatora 7805, teraz mam podłączony do pinu reset 100n do masy i 10k to +5V a procesor dalej nie startuje po wlaczeniu zasilania.Jak zewre Reset to masy to procesor startuje.Jak to wyeliminiwac-może to być wina programu albo ustawienie wewnetrznego kwarcu? Wydaje mi się ze wpływ na działanie układu resetu...
Mam problem z programatorem ze strony http://pinokio3000.narod.ru/my_designs/A... Zastosowałem z nim drobne przeróbki. Nie dawałem tylko diody VL3 i Rezystora R9. Nie dawałem tez elementów R8 i C6 bo ten układ raczej nie wykorzystuje przetwornika ADC. Zasilanie AVCC podłączyłem bezpośrednio do VCC. I nie dawałem rezystora R7 bo...
Wiec tak coś mi nie idzie ze schematem :| Chce obrobic wszystko na jednej plytce a program dopisywac. Wiec ma byc taz ze 5 klawiszy i jeden no hmmm... 1 to bedzie wiecej/mniej jak normalnie temp a w ew. menu bedzie to gora/dol :D Drugie 2 to enter i esc. Kolejny to przycisk opcje. I ostatnie to ze jesli styk zostanie zwarty do masy to zeby odliczal...
watchdog resetuje watchdog bascom bascom watchdog interrupt
wzmacniacz pioneer podlaczenie schemat rekord soundcraft notepad
Zamiennik tranzystora J42CG - łatwo dostępne opcje Volkswagen Tiguan 2013 RNS 315 WinCE Firmware Upgrade: Dealer DVD, Versions, Risks