 |
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
lojzek Član



Pridružen-a: Pet 25 Jan 2008 8:00 Prispevkov: 3387 Aktiv.: 16.00
|
Objavljeno: Tor Okt 10, 2023 7:01 pm Naslov sporočila: |
|
|
V četrtek sem ga zlomka spet opazil v stalnem WDT resetu. Seveda čez vikend ni bilo časa, ker sem se potepal in drva spravljal, sem pa danes naredil malo napredka.
Po RGorazdovem nasvetu sem resetiral TWI vodilo na začetku programa, mislim da to ni bila končna rešitev. Mislim pa, da se je stvar pobrala, ko sem resetiral TWI - RS232 vmesnik (moj izdelek z AtMega8). Nisem pa povsem 100%. Torej moram težavo najverjetneje iskati v njem. Ko bom našel program nekje v enem od 4ih računal po Gorenjskem). |
|
Nazaj na vrh |
|
 |
lojzek Član



Pridružen-a: Pet 25 Jan 2008 8:00 Prispevkov: 3387 Aktiv.: 16.00
|
Objavljeno: Sre Maj 15, 2024 1:30 pm Naslov sporočila: |
|
|
Ekola, nadaljevanje.
Sedajle se mi je zopet zataknil, ni pa nobene nuje več da peč [slovenščina je zame španska vas]. Tako da imam sedaj uC v tistem večnem mirovanju - čakanju na nadaljevanje. Se ne mudi tako zelo.
Sem ugotovil, da je SDA stalno dol in tako zaseda TWI in tam potem uC obtiči. Tako bom poskusil z RGorazdovim nasvetom.
Sicer sem to že naredil prej, ustvaril sem sicer več kot 9 CLK pulzov (20). Pa ni pomagalo. Bom preuredil reset vodila na način, da preverjam tudi stanje SDA pina.
Poročam o rezultatih. |
|
Nazaj na vrh |
|
 |
igo Član

Pridružen-a: Sre 11 Okt 2006 19:11 Prispevkov: 3641 Aktiv.: 16.01
|
Objavljeno: Sre Maj 15, 2024 7:03 pm Naslov sporočila: |
|
|
Ni problem s stanjem SDA, temveč v "while" zanki, ki ga bere. Očitno ne vsebuje neke "TimeOut" spremenljivke oziroma vsebuje (preveri knjižnice, ker dostikrat vsebujejo tovrstno past)
"while(nekaj, kar se lahko spremeni le ob enem pogoju, brez varnostne rezerve)".
Jaz povsod, kjer je nekaj odvisno od zunanjih vhodov, uporabim spremenljivko, ki jo lahko spremeni tudi program povsem znotraj zanke. Razlog, zakaj se je aktiviral zasilni izhod, ugotavljam drugje.
Skratka - nekaj podobnega:
Koda: |
LetiVen=0; // byte LetiVen - za izhod iz vseh zank
while(LetiVen==0)
{
...
if(TimeOut > 250) { TimeOut=251; Napaka[nap]=3; }
if(Napaka[nap] > 0) { LetiVen++; nap++; } // zadnjih 8 napak
if(pogoj1 > 0 ) LetiVen++;
if(pogoj2 > 0) LetiVen++;
...
} |
_________________ Teoretično je praksa posledica teorije, praktično je pa ravno obratno. (igo 2001)
LP, Igor |
|
Nazaj na vrh |
|
 |
lojzek Član



Pridružen-a: Pet 25 Jan 2008 8:00 Prispevkov: 3387 Aktiv.: 16.00
|
Objavljeno: Čet Maj 16, 2024 1:59 pm Naslov sporočila: |
|
|
Saj sicer gre ven. Watchdog reset.
Samo TWI pa še vedno ostane zaseden. To sedajle rešujem (v minimumu časa, ki ga premorem) |
|
Nazaj na vrh |
|
 |
lojzek Član



Pridružen-a: Pet 25 Jan 2008 8:00 Prispevkov: 3387 Aktiv.: 16.00
|
Objavljeno: Ned Maj 19, 2024 9:22 am Naslov sporočila: |
|
|
V petek mi je uspelo najti v službi malo časa - namesto malice, da sem naredil Selftest rutino, ki bi (upam) tudi obešen TWI bus razrešila.
Ko pa sem v soboto prišel z delovne akcije domov in mislil to preizkusit.... Je pa normalno deloval. Se je sam od sebe postavil nazaj. Bogsigavedi, kako se je zaciklana while zanka odvozljala.
Tako da ne morem preizkusit, če mi je uspelo. Morem čakat naslednjo priložnost, ki bo kdove kdaj. Takrat bom pa tudi že pozabil, kaj sem počel.  |
|
Nazaj na vrh |
|
 |
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 491 dni
Powered by phpBB © 2001, 2005 phpBB Group
|