MSP430F449 - ADC12 Busy Flag löscht sich nicht!

Gast #91317
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?

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