Gast
#442025
Hallo
Da der Atmel AT89C51ED2 keinen AD Wandler hat, habe ich einen externen 8
Bit AD Wandler auf mein Board gelötet. Ich möchte die Daten über die SPI
Schnittstelle einlesen.
Folgendes Programm hab ich dazu geschrieben:
SPCON = 0xFA;
unsigned int test;
while(1)
{
test = 0x00; // Variable auf 0 setzen
P1_B0 = 0; // AD Wandler über CS aktivieren
SPDAT=0x00; // Daten über die SPI schicken, damit eine Frequenz
// erzeugt wird
while(SPIF == 1); // Warten bis Daten empfangen wurden
test = SPDAT; // Daten einlesen
printf ("Wert: %x\n", test); // Daten über Com1 ausgeben
P1_B0 = 1; // AD Wandler deaktivieren
}
Jetzt zu meinem Problem: Leider list dieses Programm nur nach einem
Reset den aktuellen Analogwert ein und gibt den dauerhaft über Com1 aus.
Das Programm soll den Analogwert dauerhaft einlesen und wenn ich ihn
verändere auch sofort ausgeben.
Wo ist mein Fehler??? Ich hoffe ihr könnt mir Helfen.
Gruß
Tim