Hi,
Hab' das Datenblatt gerade nicht hier, aber AIN0 ist ein Eingang des Analogkomparators.
Gruß
Christopher
hi,
wollte nicht unbendingt einen neuen thread aufmachen:
es gibt also bei einem mega8/16 2 bzw. 3 HARDWARE interrupts....gibts auch software interrupts, die man auf jeden x-beliebigen pin anwenden kann? weil sonst kann man ja immer nur 2 bz.w 3 Sensoren oder sonstiges ein interrupt auslösen lassen...
gruss hacker
Ich würde ja gern die Welt verändern..., doch Gott gibt mir den Quellcode nicht!
Hi,
Hab' das Datenblatt gerade nicht hier, aber AIN0 ist ein Eingang des Analogkomparators.
Gruß
Christopher
Nein leider nicht, man könnte aber mehrere Sensoren über Dioden an einen Imterruptpin legen und dann während des Interrupts schnell schauen, welcher Sensor es war. Man legt einen Sensor also an einen IO und mit einer Diode an den Interruptpin. Voraussetzung ist natürlich, dass die Sensoren den gleichen Pegel haben.gibts auch software interrupts, die man auf jeden x-beliebigen pin anwenden kann?
MFG Moritz
www.free-webspace.biz/update
ahja...und wie machen hier des dann die meisten wenn se mer Sensoren haben..(was eigentlich im durchschnitt der fall ist denk ich mal) ..tun die die ganze zeit pollen?
Ich würde ja gern die Welt verändern..., doch Gott gibt mir den Quellcode nicht!
ja, bzw.
besseres pollen: in einem intervall immer mal wieder scannen oder
intelligentes pollen: egal welcher sensor nun angesprungen ist, er löst den selben interrupt aus, daraufhin scannt der µc alle einmal ab und guckt welcher es war
Martin
Linus Torvalds, Entwickler von LinuxIch will Microsoft wirklich nicht zerstören. Das wird nur ein gänzlich unbeabsichtigter Nebeneffekt sein.
oki, danke euch !
gruss hacker![]()
Ich würde ja gern die Welt verändern..., doch Gott gibt mir den Quellcode nicht!
Es stimmt doch, dass Interrupts, die während einer ISR auftreten, nach der gerade aktuellen ISR ausgeführt werden, oder?Also, hab jetzt mal einen Experten gefragt, es ist folgendermaßen:Keine Ahnung hängt das nicht mit der Priorität der Interrupts zusammen ?
Wenn man sich in einer ISR befindet und ein weiterer Interrupt wird ausgelöst, dann wird die laufende Routine ganz normal zu ende geführt, genau ein Befehl im im hauptprogramm abgearbeitet und dann in die nächste ISR gesprungen. Wenn 2 Interrupts während einer laufenden ISR ausgelöst werden, dann läuft es genau so, die mit den höheren Priorität wird dann als nächstes bearbeitet.
MFG Moritz
www.free-webspace.biz/update
Hi,
@RCO: danke für die Info.
Hab's durch Zufall gerade auch im Buch von Rowalt gefunden.
Seite 55
Da steht allerdings, daß nach dem ersten Interrupt sofort der nächste, je nach Priorität, ausgeführt wird, also nicht, daß noch ein Befehl im Hauptprogramm zwischen den Interrupts abgearbeitet wird.
Aber egal, Hauptsache es funkt mir in einen Interrupt kein zweiter dazwischen
Gruß
Christopher
Naja, dieser eine Befehl in der Hauptschleife soll wohl dazu dienen, dass das Hauptprogramm, auch wenn die ganze Zeit Interrupts auftreten, nicht völlig stehen bleibt, sondern, wenn auch sehr langsam, weiter läuft. Naja, ist ja erstmal nicht so wichtig.
MFG Moritz
www.free-webspace.biz/update
Nee,
finde Ich schon wichtig und eine gute Information!
Der Sinn des einen Befehls war mir bis jetzt noch nicht klar, aber das ist einleuchtend. Macht Sinn.
Gruß
Christopher
Lesezeichen