ADC ISR C Programmierung

Gast #259546
Lesenswert?

Hallo Männer,
folgendes Problem, ich möchte in C ein Programm für nen ATtiny26
schreiben, daß im wesentlichen einen AD-Wert mit Interrupt ermittelt
und je nach dem wie groß der Wert ist eine bestimmte Zeit wartet.
Da ich nich so der C-Blicker bin tu ich mich etwas schwer, allerdings
nur in Sachen Interrupt.
In Assembler wars ja so, daß es die ISR für ADC bzw. Timer irgendwo
stand und automatisch angesprungen wurde.
Wie muß ich das nun in C anstellen, daß wenn ich die Interrupts
freigegeben habe und der AD-Wandler gestartet wurde, das Programm wenn
der ADC fertig ist die "ISR" anspringt und wo schreib ich das dann
hin? Weil in dem Tutorial daß ich für AVR in C ausgegraben wird da nich
so viel drüber gesagt, als daß ich es verstehen würde???
... macht mich echt ganz schön ratlos das ganze ...
Cool wär natürlich auch ein Beispielprogramm :).
Besten Dank.
Gruß Jens
Gast #259547
Lesenswert?

#Inlcude <Avr/Signal.h>
#Include <Avr/Interrupt.h>


int main (void)
{
//musst ADC aktivieren und so steht alles genau im Datenblatt



}


SIGNAL (SIG_ADC) //ISR wenn Wert fertig gewandelt
{
//zum Beispiel

x=ADCL;   //Je nach Einstellung  8niedrigen BITS in x speichern
y=ADCH;     8 höheren in y speichern

}
Gast #1675221
Lesenswert?

Hallo Männer UND Frauen,

ich programmiere gerade auf dem ATmega128. Dieser befindet sich auf 
einem Sensorknoten.
Ich legen den Mikrocontroller schlafen und versuche gerade ihn durch das 
Drücken eine Button (also durch einen Interrupt) wieder wecken, bzw 
etwas ausführen lassen. Leider kenne ich mich mit Interrupts nicht 
wirklich aus und weiß daher nicht, welchen Quellcode ich an welche 
Stelle schreiben muss... Kann mir da jemand weiter helfen?


Gruß

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren