Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: INT_ANA_COMP Kategorie: Programmierung Basic (von Stefan - 13.07.2010 1:19)
Als Antwort auf Re: INT_ANA_COMP von PeterS - 12.07.2010 20:15

> > > Hallo,
> > > hätte auch nochmal konkrete Fragen zum INT_ANA_COMP:
> > > -Wie kann ich für den Interrupt einstellen,
> > > ob eine externe oder die interne Referenzspannung verwendet wird?
> > > -Wie kann ich einstellen, welches Ereignis den Interrupt auslöst?
> > > (Bei den externen Interrupts kann dies ja über Ext_IntEnable eingestellt werden)
> > > ....Stefan
> > >
> > >
> > > > > Guck mal unter Bibliotheken - Analog-Comparator ;-)
> > > >
> > > > Ja, schon, aber...
> > > > Meinst Du das ?:
> > > > if (AComp(0x40)==1)         // Eingang (+) band gap reference 1,22V
> > > > {
> > > >   Msg_WriteChar('1');     // Ausgabe: 1
> > > > }
> > > > ...
> > > > Mit einer ISR-Routine geht's dann wohl nicht.
> > > >
> >
> > Lies mal die Doku. Unter Bibliotheken->Interrupt
> >
> > Gruss Peter
>
> Es ist aber noch was komplizierter. AuÃ?er den Interrupt zu setzen, muÃ? der richtige Wert in
> das ACSR Register geschrieben werden. Der Byte Parameter an AComp wird direkt in das ACSR
> Register geschrieben. Lies bitte das Analog Comparator Kapitel im Mega128 Reference Manual.
> Es muÃ? noch mit Bit 3 der Interrupt enabled werden, und die unteren 2 Bits definieren, wann
> der Interrupt ausgelöst wird.
>
> Gruss Peter

Ah, verstehe, vielen Dank,
Noch eine Frage:
Hat der Befehl AComp immer einen Rückgabewert, mu� also z.B "x = AComp(0x0B)" geschrieben werden,
oder kann der Befehl auch alleine stehen, z.B. "AComp(0x0B)", und beschreibt somit nur das
ACSR-Register?
Gruss Stefan



    Antwort schreiben


Antworten:

Re: INT_ANA_COMP (von PeterS - 13.07.2010 8:47)