AT91SAM9XE ADC initialisieren

Gast #2556913
Lesenswert?

Ich versuche seit mehreren Tagen den ADC des AT91SAM9XE anzuwerfen. 
Leider scheint er einfach wandeln zu wollen. Ich möchte Channel 1 
auslesen und eine extern anliegende Referenzspannung verwenden.

Ich habe einen Prescaler von 8, eine Startuptime von 9 und ein 
Sample&Hold- (=Track&Hold-) von 9 eingestellt. Außerdem aktiviere ich 
die gewünschte Channelnummer und starte den Konvertierungsvorgang.
Danach polle ich auf ADC_DRDY in einer Schleife, die leider nie mehr 
verlassen wird.

(siehe angehängter Quellcode)

Wäre klasse wenn mir jemand sein Stück Code schicken könnte, der den ADC 
dieser MPU schon einmal erfolgreich initialisiert hat. Auch ein Hinweis 
was fehlen könnte wäre großartig.

Viele Grüße,

Max
Angehängte Dateien:
Gast #2558114
Lesenswert?

Problem gelöst: Atmel vergisst zu erwähnen dass man die ADC clock im 
PMC_PCER (peripherial clock enable register des Power Management 
Controllers) zuvor aktivieren muss:

IO_WR32(0xFFFFFC10, (1<<5));

Das fünfte Bit steht dabei für die peripherial clock des ADC. Die Lösung 
fand sich in einem Codebeispiel von Atmel.

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