Forum: Mikrocontroller und Digitale Elektronik bascom avr: wait + isr ?


von nummernschalter (Gast)


Lesenswert?

Hallo,

habe mit bascom avr eine schleife in der alle 1 sekunde (verwendung von 
'wait') etwas ausgegeben wird. Außerdem habe ich einen Timer-Interrupt 
der etwas zählt. Dummerweise stimmt das Ergebnis nicht. Sobald ich 'wait 
1' auskommentiere, ist alles i.O.

In der Doku steht auch, daß 'wait' im Zusammenhang mit Interrupts mit 
Vorsicht zu genießen ist. Kann mir jemand sagen, wie man dieses Problem 
umgeht ?

Danke.

von Bernd T. (bastelmensch)


Lesenswert?

Mit einem zweiten timer anstatt wait.

von PeterL (Gast)


Lesenswert?

"wait" sollte man nur für die allererste Blinkschaltung ausprobieren und 
dann schnell wieder vergessen, weil der Controller in dieser Zeit nichts 
anderes macht, als warten.
In der Regel muss man mit einem µController aber Taster abfragen, 
Display bedienen, Analogwerte messen usw.
Wärend der Wartezeit macht er das aber nicht.

von nummernschalter (Gast)


Lesenswert?

Normalerweiser werden beim Auslösen eines Interrupts doch alle 
"Aufgaben" unterbrochen, die ISR abgearbeitet, und wieder fortgesetzt. 
Es sei denn, "wait" deaktiviert alle Interrupts. Weiß jemand, wie die 
bascom avr "wait" routine diesbezüglich arbeitet?

von Marko (Gast)


Lesenswert?

Solche Ergebnisse kann ich bestätigen,
irgendwo bastelt Bascom immer wieder
nen disable interrupts in den hex-file
wofür der Compiler das macht hängt mir
auch zu hoch.
Ich habs dann mal so gelöst, dass ich
eine Schleife laufen lies, die 200-mal
50ms gewartet hat.
(Befehl: waitms)
Ist nicht besonders schön, aber funktionierte.
Ja, Bascom funktioniert zwar grundsätzlich,
aber mitunter sind die Ergebnisse nicht ganz das,
was man erwartet (nur am Rande, ich arbeite viel
und oft unter Bascom).

von bas_ratte (Gast)


Lesenswert?

Bascom bastel kein Interrupt ins Hexfile es sei dem
Ihr schaltet den Explicit ein.
schau mal dort rein.
http://bascom-forum.de

von Herbert von Caravan (Gast)


Lesenswert?

@bas_ratte
Kannst Du das mal ein wenig genauer ausführen oder willst Du nur Leute 
auf eine Seite lotsen, auf der es von Pop-ups nur so wimmelt?

Hochachtungsvoll
Herbert von Caravan

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
Noch kein Account? Hier anmelden.