Forum: Mikrocontroller und Digitale Elektronik MSP430F449 - ADC12 Busy Flag löscht sich nicht!


von Walter Braun (Gast)


Lesenswert?

Arbeite zum ersten Mal mit dem ADC12 des MSP430F449. Der Wandler wird im
single-channel, single conversion Mode eingesetzt. Wenn der Timer A
etwa 4x pro Sekunde den IRQ aufruft, wird dort eine steigende Flanke am
Bit ADC12SC erzeugt und dann sofort das ADC12MEM0 gelesen. Da dabei der
Wandler noch nicht fertig ist, werden alte Meßergebnisse ausgewertet.
Jedoch zeigt sich, daß die Wandlung auch wirklich immer neu beginnt
weil schwankende Analogspannungen reproduzierbare Digitalwerte
erzeugen.

Jetzt habe ich zwischen die ADC12SC Flanke und das Lesen vom ADC12MEM0
eine Schleife gebaut:

WaitADC12
bit.w  #0001h, &ADC12CTL1
JNZ  WaitADC12

Der Controller bleibt jetzt endlos in dieser Schleife stehen. Warum
setzt sich das Busy Flag nicht zurück?

von Walter Braun (Gast)


Lesenswert?

Bei den Beispielen wird statt dem IRQ Flag das ADC12IFG (Daten wurden in
den ADC Speicher geschrieben) ausgewertet. Warum geht es nicht auch
über das Busy Bit?

von Walter Braun (Gast)


Lesenswert?

Idiotenfehler: SHP war falsch gesetzt.

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.