Forum: Mikrocontroller und Digitale Elektronik Probleme mit MCP3550 an LPC2103


von Omega G. (omega) Benutzerseite


Lesenswert?

Hallo,
ich probiere seit ein paar Tagen einen 22-Bit Analog Digitalwandler von 
Microchip auszulesen. Der Wandler wird per SPI angesprochen. (Datenblatt 
des Wandlers: 
http://ww1.microchip.com/downloads/en/DeviceDoc/21950D.pdf)

Ich gehe zum auslesen so vor:
- /CS auf low
- Warten bis /RDY auf low geht
- 3 Bytes auslesen
- /CS auf high

zwischendurch keine Pegelwechsel von /CS. SPI arbeitet im Modus 1,1.
Das Problem ist, dass so nie Werte ausgegeben werden. Wenn ich /RDY mit 
dem Finger berühre schwankt der Pegel zw. 1 und 0, was zur Folge hat, 
dass der Chip ausgelesen wird, obwohl keine sinnvollen Daten 
bereitstehen.

Mein Quelltext:
1
IOCLR |= (1<<6); //take cs low
2
PINSEL0 |= (0<<10); // MISO = GPIO 0.5
3
while((IOPIN&(1<<5)));
4
PINSEL0 |= (1<<10); //GPIO 0.5 = MISO
5
ad1 = SPI_SendByte(0x00);
6
ad2 = SPI_SendByte(0x00);
7
ad3 = SPI_SendByte(0x00);
8
IOSET |= (1<<6); //take cs high

Wo liegt mein Fehler? Der AD-Wandler ist richtig angeschlossen.

von Omega G. (omega) Benutzerseite


Lesenswert?

Ok, danke für's lesen. Ich habe das Problem gefunden. Ging nicht aus dem 
hier geposteten Quelltext hervor. Ich habe nur vergessen /CS als Ausgang 
am µC zu definieren.

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.