Hallo,
ich habe schon nach meinem Problem "gegooglt" und auch hier die
Forensuche benutzt, konnte aber nichts darüber finden.
Ich bin an einem Punkt an dem ich nicht mehr weiß ob der ATtiny2313
vielleicht Blödsinn baut, oder die Hardware nicht stimmt und will über
den Weg mal nachfragen ob noch jemand Probleme damit hat das der ATtiny
einfach so, ohne explizieten Befehl Ports zurück setzt.
Mein Programm ist prinziepiell folgendermaßen aufgebaut:
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
// Reinitialize Timer 0 value
TCNT0=0x82;
// Place your code here
counter_3ms++;
counter_5ms++;
counter_7ms++;
counter_50ms++;
........
}
main
{
.......
init(); //initialisierung aller variablen
PORTD |= HW_OUT_Selbsthaltung; // Selbsthaltung Spannungsregler
while(1)
{
if (bit_3ms == 1)
{
bit_3ms = 0;
task_blabla_01();
task_blabla_02();
}
......
}
}
ICh will am PortD ein Signal auswerten und wenn dieses zweimal getoggelt
hat einen anderen Port setzen. Das passiert auch so wie ich mir das
vorstelle, nur dieser Port wird nach ca. 1-2 sec. wieder zurück gesetzt!
Obwohl die Bedingung zum zurücksetzen nicht erfüllt ist, ich das "low"
setzen dieses Ausgangs ganz auskommentiert habe, und die Bedingung für
das SETZEN dieses Ports dauerhaft erfüllt ist!
Mein erster Gedanke war das die init() wieder aufgerufen wird. Ich habe
die 5V Betriebsspannung des ATtiny gemessen konnte aber nur ganz geringe
Schwankungen (peaks < 50mykrosec. auf ca. 4V sehen; sehr sporadisch).
Die Hardware hat sich prinziepiell aber auch schonmal früher in anderen
Projekten bewährt.
Der Watchdog ist auch auskommentiert.
Hat jemand eine Idee woran das liegen könnte? Hat jemand schonmal
ähnliche Probleme gehabt?
Vielleicht habe ich ja was ganz Grundlegendes übersehen?
Ich bin für jeden Denkanstoss dankbar.
Carsten L. wrote:
> Vielleicht habe ich ja was ganz Grundlegendes übersehen?
Ja, geposteter Code sollte fehler- und warnungsfrei compilierbar sein.
Wie ein ganzes Haus aussieht kann man nunmal nicht am Foto nur eines
Fensters erkennen.
Peter
vieleicht resettet sich der controller in regelmäßigen abständen ?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.