A czy to też nie działa : Config Watchdog = 16 Start Watchdog Disable Interrupts być może Bascom odblokowuje przerwania w starcie watchdoga?
Funkcja Wait nie blokuje Watchdog -a, zrób to co zaproponowałeś - Stop Watchdog - Wait - Start Watchdog Pozdrawiam
Jakoś czarno to widzę- nawet jak jest $noinit to i tak kasuje watchdoga. W Bascomie. Może jakoś zrobić swoje $noinit_1 swoje. Ale jak- to nie wiem. Wystarczyło by usunąć polecenia kasowania watchdoga.
Spróbuj dać $noramclear na początku programu.
tak jak napisał kolega bascoma AVR czeka na początku instrukcji writeeprom czy pamięc jest gotowa do zapisu. a tak wogółe to ja stosuje zmienne typu eprom gdy chce zapisaccoś do eproma. oczywiście należy uważać z ich wykożystaniem (nigdy w pętlach) dim XXX as Eram Word na zmiennych eRam nie mozna stosować operacji tylko XXX = coś lub coś = XXX
AVR nie traci zawartości pamięci przy resecie. Więc jeżeli program nie będzie jej zerował, rozwiązanie jest pewne. Inna sprawa, że w tym wypadku sugerowałbym, by watchdog nie robił resetu, tylko wywoływał przerwanie. Co to będzie za układ?
Jak już tak uparłeś się na liczenie to rozwiązanie masz w tematach przyklejonych w tym dziale: Dim Mcureg As Byte Dim Watchdog_flag As Byte Mcureg = Peek(0) If Mcureg.wdrf = 1 Then ' Czy uruchomienie wywołał WATCHDOG ? Watchdog_flag = 1 End If
witam Watchdog
Config Watchdog = 2048 Zdaje sie że największy preskaler dla WatchDoga w M168 to 1024 a nie 2048. Tak ale "Config Watchdog = 2048" to znaczy że układ Watchdoga uaktywni sygnał reset procesora po 2048 milisekundach. Dla procesora Atmega168 możliwe są ustawienia: 16, 32 64, 128, 256, 512, 1024, 2048, 4096, 8192, czyli od 16ms do 8 sekund. Zamieszczam...
Witam, Program w zasadzie jest ok, jedyne do czego bym się doczepił to umieszczenie polecenia "Start Watchdog" w głównej pętli programu, zamiast przed, a w pętli tylko polecenie "Reset Watchdog". Po drugie widać, ze za bardzo nie zależy Ci na oszczędności prądu (zegar 8MHz) to ja bym nie wyłączał przetwornika adc, bo po włączeniu pierwszy pomiar jest...
Witam Od 3 dni siedze nad problemem z watchdogiem który wydłuza czas resetu procesora. Metodą kolejnych wykluczeń ustaliłem ze przyczyną jest odwołanie do instrukcji zwiazanych z obsługą LCD. Najlepiej jak podam przykład. Program uprosciłem do minimum : [syntax=basic4gl] $crystal = 1000000 $regfile = "attiny2313.dat" Config Portd = Output Config Watchdog...
Niepotrzebnie kombinujesz z pinami. Wystarczy że odpalisz watchdoga, na minimalnym liczniku i poczekasz chwilkę, watchdog zaserwuje prockowi odpowiedni sprzętowy RESET. Chyba że procek nie ma watchdoga (napisz jaki to procek, bo 8bitowe nie mają PB.8) ale watchdog pewnie w nim siedzi
Jak w BASCOMIE zaprogramować WATCHDOG dla Tiny2313?
trzeba pozbyć się LF przy nadawaniu - i już - a w Bascomie to bardzo proste PRINT "jakieś dane" ; Char(13) ; istotny jest ten średnik na końcu
Powinieneś tak napisać program, aby taki reset nie był potrzebny a jeśli upierasz się przy tym to wykorzystaj WATCHDOGa.
wylacz watchdoga i naucz sie czytac dokumentacje. bascom tego za ciebie nie zrobi. 0x41 0x56 0x45!!
... 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?
Jeśli chcesz zrestarotować program to wystarczy wpisać jmp 0 i po sprawie. Zaszyta w programie procedura inicjalizacji wyzeruje całą pamięć RAM. Zatem żadnych danych z uprzednio działającego programu nie będzie. Problem tylko, z działającymi i skonfigurowanymi - przez poprzednio działający program - licznikami i innymi urządzeniami wewnątrz procka....
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 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...
Zrobilem na Inkey() i dałem mu 100 ms czasu na sciagnie dancyh z bufora. Działa niby lepiej. Czy warto użyć watchdoga?
Jest taka możliwaość jesli w programie występuje błąd logiczny i program utkwi w pęntli w której znajduje sie reset wdt.
Można : Stop watchdog Pozdrawiam! to akurat nie dziala.... Bascom wywala nastepujacy blad przy kompilacji... error 102: illegal asm-command
Spróbuj z watchdogiem i $noramclear
No , skojarzyłem z WMCON w AT89S8252
Sprawa nie była do konca przemyślana... WATCHDOG się sprawdził. Temat zamykam.
Do 30 cm testowałem dla LCD i ok. Spróbuj rozkręcić do 8MHz i włącz watchdoga :)
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 wszystkich. Jak skonfigurować mikrokontroler attiny25 tak aby działał u niego pul down. Chwiałbym aby wybudził się po podaniu vcc na int0? Cxu do tego używa się watchdoga? Dzięki.
ok. to watchdog. Thx, bo zglupialem. Temat do usuniecia.
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...
E tam, nic strasznego.... Tu masz błąd: Dim U_wy As String * 2 Zwiększ to na: Dim U_wy As String * 3 I leci aż miło. Nie mieścisz się w zmiennej, that's all:) Poza tym skonfiguruj watchdog oraz TIMER. Pewnie jeszcze coś tam siedzi (wyświetlanie bez wymazywania poprzednich, większych o rząd wartości na przykład) ale to tak na szybko. Pozdrawiam, TD
wybierz 8052 (tak jak to widac na zdjeciu). W zasadzie poza drugim wskaźnikiem DPTR (którego w bascomie i tak nie wykozystasz) i watchdogiem od strony oprogramowania to 8052. :)
hmmm Przede wszystkim: Enable Interrupts On Timer0 Przerwanie Stop Watchdog Config Timer0 = Timer , Prescale = 1024 Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down , Prescale = 256 'PWM=250Hz Load Timer0 = 195 To włączenie przerwania jest wstrętne w tym miejscu:P Co do wniosków... może spróbuj zwiększyć stos o...
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...
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
musisz wziac 89c51 bo 89s51 to jest jego zamiennik tylko ze dodatkowo rozbudowany o isp i watchdog-a.
Watchdog jest wyłączony? ADC itp. także wyłączone?
Prosty program nawet w BASCOMie. Podajemy impuls z PLC na pin startujemy timer i liczymy czas. Jest impuls reset timera nie ma impulsu - reset PLC Start odliczania 60 sekund. I tak w koło. Dziesięć linijek kodu.
Hej chce zrobic a w zasadzie zrobilem pilot na procesorku AT90S2313 i chce jak najbardziej ograniczyć pobór prądu. Paczyłem w helpie opisane jest tam cos takiego jak Watchdog i moze ktoś ma w tym wieksze doświadczenie i chciał sie nim podzielic jak to dziala itp(Pisze w Bascomie). Pzdr
Trochę bez sensu, kontroler ma watchdoga, a jak się uszkodzi to nie ma co go budzić ;-)
Jak się czasem coś potrafi zawiesić to może użyj Watchdoga. W razie zawieszenia się wszystko się zrestartuje.
A gdzie ta funkcje "noramclear" sie ustawia w Bascomie bo nie moge znalezc?????
$crystal = 8000000 Config Lcd = 16 * 1a Config Int0 = Falling Config Timer0 = Timer , Prescale = 256 Config Watchdog = 2048 Config Pind.0 = Input Config Pind.1 = Input Config Pind.3 = Output Config Pind.4 = Output Config Pind.5 = Output Dim Regulation_counter As Byte Dim On_off_flag As Bit Dim Regulation_type_flag As Byte Dim Int_counter As Byte Dim...
A gdzie w bascom-avr ustawia się fusebite ot watchdoga
1) Co się stanie gdy znów go naciśniesz? Teoretycznie to się nie zdarz ale... 5 leda już nie ma. Program ma zostawić wszystkie wyjścia wyłączone czy zapalić led 1? 2) Sygnał 1 cylindra pojawia się zawsze po 4 cyknięciu drugiego sygnału z cylindrów? Czy może się pojawić pomiędzy cylindrami 1-4? Teoretycznie nie ale jeśli pojawi się jako zakłócenie i...
Z terminala jak wysyłam to jest ok znaki które przy smartie nie są wyświetlane pojawiają się (czyli kodowanie w smartie inne) ale problem A-N pozostaje w terminalu dokładnie to samo zjawisko w momencie wysłania N cały display gaśnie. PS. Jak w to wszystko wpleść jeszcze obsługę watchdog-a ?? Obecna wersja programu w załączniku
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....
Jesli nie zależy Ci na bardzo szybkim resecie (czytaj szybszym niż po 16ms) to możesz odpalić Watchdoga, który się przepełni i zresetuje procka.
Uczciwie mówiąć to problem z WatchDogiem jest niczym w porównwiu z tym co przychodzi po sieci i przewodach. Zadbaj o dobry uklad resetu i tlumienie stanow nieustalonych na wejściach. A z bascomem to jeszcze potrzeba wiele sczęscia by bylo wszystko OK.
Zastosuj np Watchdoga. Jeśli na magistrali są bzdury to następuje reset urządzenia.
Wywal ten kondensator z nogi resetu. Zostaw sam rezystor do VCC. Ktoś już miał dokładnie taki sam problem. I wyłącz watchdog'a w fusebitach. I powiedz czy coś to zmieniło ;)
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...
Wyłącz watchdog, to na pewno. Nie programowałem nigdy w Bascom, ale nie widzę żebyś przed inicjacją wyświetlacza miał opóźnienie o kilkanaście-kilkadziesiąt ms a musi być. Jeśli to nie pomoże to sprawdź ciągłość połączeń... Jeśli masz czujniki w trybie zasilania pasożytniczego to zmień rezystor podciągający na ok 2k.
Może wyschły elektrolity :> Można ustawić BOD w FuseBitach np. na 4V to przy niższym napięciu kiedy procek mógłby "zgłupieć" układ sam się zresetuje. Można ustawić Watchdog`a... ogólnie jeśli Reset pomaga to obstawiam oprogramowanie...
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.
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...
Skoro program utyka w jakimś miejscu to znaczy że czekasz w pollingu na stan, który się nie pojawia. Po pierwsze dodałbym time out, który przerwie pętlę oczekiwania zanim układ zostanie zresetowany przez watchdog. Dodatkowo w przypadku wystąpienia takiego timeoutu trzeba by obsłużyć jakoś błąd magistrali: http://obrazki.elektroda.pl/2162467700_1...
Ale po co od razu WatchDog do tego? Nie lepiej dać TimeOut funkcji Inputbin? A jeszcze lepiej dać jakiś bajt wyróżniający początek ramki i CRC na końcu ramki. Tyle że liczenie CRC musiało by być szybkie żeby procesor nadążył z liczeniem po zgubieniu synchronizacji transmisji (Wtedy musiał by przeliczać cały bufor wielokrotnie przesówając się o jedne...
A nie jest tak, że watchdog Ci wywala program? Że masz gdzieś na granicy kasowanie go i dla jednej częstotliwości zdąży, a dla innej już nie?
Jeśli watchdog w fusebitach jest włączony, to program będzie się zachowywał inaczej niż przewidziano...
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...
Mam podobny problem jak kolega Dogma.Jakoś nie mogę zlokalizować ustawień watchdoga w fusbitach.
RS 485 i procek z watchdogiem. Tu się zgadzam. Czyli AVR zamiast 51 i do pisania aplikacji AVR studio Nie tylko AVRy mają watchdogi. Jest wiele '51 które posiadają watchdogi i na mój gust są lepsze od AVRów. W bascomie coś działa albo nie i nie wynika to z nieprawidłowego napisania programu ale jakości tego programu Tu się zgadzam, poza tym kod z bascoma...
Sprawdziłeś ustawienia WATCHDOG'a (bit WDTON)?
Witam. Właśnie o to chodzi,wiem że do pliku są zapisywane ustawienia z procka,dlatego właśnie ustawiam fusy,zapisuję do procka a dopiero później wgrywam do pliku.Tak jak już pisałem w przypadku mega8 dip28 to działa, a w przypadku mega8 smd nie działa, tzn. pomimo tego że ustawię i wgram do procka to co chcę zmienić to po poleceniu write prg i tak zapisuje...
Duży filtr na zasilaniu A po co? Wystarcza tylko dioda shottky'ego+ mały supercap 1F albo duży zwykły i sprawdzanie czy jest napięcie przed diodą. Ale czy to tańsze, szybsze i bardziej niezawodne niż bateria i watchdog? :) Szczególnie jak się A/D do czego innego chce wykorzystywać..
Dostosuj do swoich potrzeb i spróbuj tego: Dim I As Byte Dim J As Byte Dim K1 As Byte Dim K2 As Byte Dim K As Byte Dim Flaga As Byte Dim Pomoc As String * 2 Dim Pomoc2 As String * 1 Dim Dlugosc1 As Byte Dim Dlugosc2 As Byte Dim Numer_tel As Byte Dim Komunikat As String * 80 Dim Numer_gsm As String * 13 Numer_gsm = "48604604604" ' tu wpisz...
Nie wiem czy ci to pomoże bo programuję w BASCOMIE:D, ale Watchdoga uruchamiam na początku programu, deklaruję czas np. 1024ms, uruchamiam (Start Watchdog) i później kasuję go przed programem głównym (czyli praktycznie na początku) i po każdym wejściu do pętli, oraz oczywiście w programie głównym przed instrukcją Wait (w asemblerze NOP) i zaraz po tej...
Używam tej komendy z watchdogiem. Zawartość pamięci pozostaje bez zmian. Zasilanie jest cały czas takie same. Z resztą co za problem sprawdzić samemu?
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?
Hmmm... A może przypadkiem przy konfiguracji zegara systemowego na zewnetrzny oscylator kwarcowy włączyłeś watchdoga ? ;) Sprawdź w fusebitach WDTON ...
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...
U mnie chodzi od wczoraj- ATmega168 8MHz. Ale bez watchdoga i z paroma przełączeniami na inny program. Nic się nie wiesza. Płytka propox EVBavr04.
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. Mam do odebrania 55 znaków z urządzenia zewnętrznego. Format tych danych wygląda następująco: STS,XXXXXXXXXXXXXXXX,XXXXXXXXXXXXXXXX,XX... W miejscach X jest dowolny znak/cyfra lub spacja. Jak zrealizować funkcję żeby w momencie zerwania transmisji (uszkodzenie przewodu, odłączenie urządzenia) procesor sygnalizował mi błąd o zerwaniu...
W moim przypadku procek działał poprawnie, ale i tak w programie był włączony watchdog i w razie czego zresetowało by sterownik. Co do wyświetlaczy chyba najczulsze są niebieskie z białymi literami ...
http://obrazki.elektroda.net/97_12852601... Witam. Dzisiaj chciałbym zaprezentować układ który wykonałem na zbliżające się Święto Zmarłych. Układ oparty jest na procesorku Attiny13 i zasilany jest z jednej baterii CR2032. W projekcie wykorzystałem oba kanały PWM w celu wysterowania dwóch diód LED symulujących pochylanie się płomienia. Dodatkowo...
Program piszę w kompilatorze BASCOM_AVR
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...
Mam alarm i sterownik centralnego zamka w samochodzie zbudowany na AT90S2313. Działa bez zarzutu. Nawet jak się zająknie, co zdarza się bardzo rzadko, to watchdog go wyprostuje. Zamontowany jest z tyłu, zatem może zakłócenia nie są tam takie duże.
Buduję termometr. Termometr ma być zasilany bateryjnie, chcę by wybudzał się dwa razy na minutę i odczytywał temperaturę z analogowego czujnika przez ADC. Jednak nie do końca wiem jak wybudzić procesor z trybu powersave dwa razy na minutę. Można do tego wykorzystać watchdoga, jakiś timer czy tylko z zewnątrz za pomocą pinów?
Dodatkowo, pamiętaj żeby wyłączyć w fuskach brown-out detection i watchdoga - żrą prąd podczas powerdown'a. Jak dobrze to zrobisz to zejdziesz do 1uA.
Czy mógł by ktoś pokazać w c jak zrobił ten soft reset bo nie czaje a jakie oznaczenia mają znaki rozchodzi się o hasz AT RST? CR ostatni domyślam się że to enter AT to chyba chodzi o (at) ale rst? co to jest może koniec Lini. A i dzieje mi się coś takiego że w programie nie mogę potem używać uarta bo nie działa w boot działą a w programie już nie...
Kolego nie wiem po co zakładasz nowe tematy i zadajesz takie podstawowe pytania . Przecież wystarczy dokładnie przeczytać helpa do Bascom'a a później przetestować na układzie próbnym . Od tego są układy ( płyty ) testowe na których testuję się kody programów które piszemy dla powstających urządzeń.
O czymś takim ,jak wcześniejsze sygnalizowanie chęci nadawania myślełem. Tyle, że jak już zacznę odbierać, a to jednak nie nadejdzie, to program wisi. Tylko Watchdog by wtedy pomógł. Chyba faktycznie nie pozostaje nic innego jak napisać to po swojemu. ASM odpada, bo go nie znam, ale Bascom powinien wystarczyć. Prędkości wielkich nie wymagam. Dzięki...
Pamięć Eeprom może się wysypać przy zasilaniu nie gwarantującym poprawnej pracy mikrokontrolera. Raz w moim sterowniku też Eeprom się posypał podczas burzy kiedy napięcie sieciowe przerywało bo wiatr szarpał przewody. Wtedy dopiero doczytałem o bitach konfiguracyjnych BODLEVEL i BODEN Można je tak ustawić, że mikrokontroler będzie utrzymywany w stanie...
Reset w uC może nastąpić z kilku przyczyn. Są to między innymi zanik zasilania lub watchdog. AT89C2051 nie ma układu watchdoga, więc nie da się go inaczej zresetować niż hardware'owo. A do czego Ci to potrzebne ? Może da się to zrobić inaczej ?
http://obrazki.elektroda.pl/9328566700_1... Dawno temu kolega namówił mnie do zrobienia komputerka. Nie jestem elektronikiem ale umiem pisać programy. Poczytałem trochę i zrobiłem prosty komputer wyświetlający podstawowe funkcje. Płytkę zrobiłem Positivem a soft napisałem w Bascomie. Potem była wersja kolejna, trochę rozbudowana na...
Witam. Układ mojej konstrukcji, opaty na AVR2313 i zaprogramowany w Bascom'ie z zaimplementowanym programowo watchdogiem, pracował w trybie czuwania przez ok. rak czasu, baz najmniejszego zwieszenia. Ostatnio niestety skończyła się jego dobra passa i wymagał resetu. Dziwna sytuacja... Gdzie był wtedy watchdog? Ostatnio energetyka bawiła się prądem działy...
W przerwaniu INTx ustawić watchdog w tryb przerwania na czas około 1 sekundy i wrócić do power down. Po przerwaniu od watchdoga sprawdzić stan wejścia i podjąć odpowiednie kroki. PS. W attiny każde wyprowadzenie może wybudzić procesor. Lepiej używac pin change interrupt moim zdaniem.
Pisałem o tym, ale moze potrzebujesz szczegółowszej instrukcji ;) Znajdź w kodzie "Stop Timer0" i wstaw tam tę jedna linię. Powinno pomóc. [syntax=vbnet]'Podprogram usypiania procesora Spij: Stop Timer0 'wyłącza PWM Tccr0a = 0 ' <<<<<< to dopisz Set Portb.1 'led off Set Portb.0 'led white off Reset Portb.2 'opornik obciążający wyłączony...
Próbowałem ustawić wyzwalanie zboczem FALLING instrukcjami Bascoma, oraz wprost w rejestrach. Nie dawało to nic. Nie wiem, czy dalej wyzwalało się poziomem, czy przyczyna była inna. Poniżej fragmenty programu, które według mnie są istotne. Może ma tu jakieś znaczenie fakt, że pin INT1 jest w trakcie przerwania zmieniany na wyjście i z powrotem na wejście....
Witam , na wstępie proszę o wyrozumiałość , postaram się krótko i konkretnie . Jestem początkującym w bascomie , napisałem krótki program odbioru programowego uarta , transmisja jest , obiór też lecz nie mogę w żaden sposób ominąć zawieszenia programu przy nie stabilnym wejściu (pinb.0 lub pind.0 ) uarta . próbowałem $timeout , i podobnych też "szukaj"...
Rozpisz sobie tabelkę np. taką jak poniżej: BGR 000 110 101 011 100 010 001 lub RGB 000 011 101 110 001 010 100 Uważnie się przyjrzyj i jak dojdziesz do wniosku, że już wiesz o co chodzi to zacznij przesuwać bity. Co do wyłączenia układu po 2 sekundach to do wyboru : watchdog lub timer0. Co do Attiny13 to strasznie niewygodny układ dla Bascom'a zwłaszcza...
Witam posiadam napisany program w języku Bascom. Mój problem wiąże się z tym że mam problem z jego kompilacją a dokładniej z jedną linijką programu. Czy może mi ktoś pomóc wyeliminować ten błąd. Bascom wskazuje że błędem jest Dim Wart_nap As String * [syntax=basic4gl] 'dopisałem funkcja wathdog czyli autoreset gdy procesor nir odpowiada dłużej niż 2...
Świeci dziadowsko bo i przerwanie się długo wlecze. [syntax=basic4gl] If Licznik < Czekaj(11) Then Portb = &B00000100 Else Portb = &B00000000 If Licznik < Czekaj(11) Then Portd = &B0010000 Else Portd = &B00000000 A nie lepiej: If Licznik < Czekaj(11) Then Portb = &B00000100 Portd = &B0010000 Else Portb = &B00000000...
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ć...
Kolega czytał helpa ? W trybie Power Down, zewnętrzny oscylator zostaje zatrzymany. Użytkownik może przywrócić działanie procesora tylko za pomocą: układu WATCHDOG, zewnętrznego sygnału reset lub za pomocą zewnętrznego sygnału przerwania. (c) Zbigniew Gibek, 2002-2005 (c) MCS Electronics, 1999-2005
Zrobiłem to tak: 'Odebranie jakiejkolwiek informacji z modułu GPS $regfile = "m16def.dat" $crystal = 8000000 $baud = 9600 Enable Interrupts Enable Urxc On Urxc Przerwanie_rx Config Lcd = 20 * 4 ' Wyswietlacz 20x4 Config Lcdpin = Pin , Rs = Porta.0 , E = Porta.1 , Db4 = Porta.2 , Db5 = Porta.3 , Db6 = Porta.4 , Db7 = Porta.5 Cls Dim Dana As...
bascom watchdog interrupt bascom przerwanie watchdog watchdog bascom resetować
plyta indukcyjna siemens kontrolka ładowania oleju gorący przewód
traktorek silnik briggs traktorek silnik briggs
Jak wyciągnąć pierścionek z szuflady w pralce? Sterowanie z kierownicy Renault Master 3 do chińskiego radia