Gast
#633863
Von Infineon habe ich mir ein Starterkid Board mit dem Mikrocontroller XC888 besorgt. Darauf habe ich einen Temperatursensor DS1820 angepracht. Die Datenleitung vom DS1820 habe ich mit einem 4,7kOhm Widerstand auf Vcc (+5V) gelegt. Die anderen Leitungen sind an der Versorgungsspannung angeschlossen (+5V/GND). Laut Datenblatt habe ich alles richtig angeschlossen. Dies habe ich auch mehrmal überprüft. Nur der Reset des DS1820 funktioniert überhaupt nicht. Mit P4_0 kann ich den Ausgangspin vom Port 4 steuern. Zuerst muss aber die Richtung festgelegt werden. P4_DIR = 0x01 bedeutet der Pin0 ist als Ausgang geschaltet. Mit P4_DIR = 0x00 sind die Pins auf Eingang geschaltet. Mit P4_0 kann ich dann die Information einlesen. unsigned char w1_reset(void) { unsigned char err; err = 0xFF; P4_DIR=1; // output P4_0=0; delay(80); P4_0=1; P4_DIR=0; // input delay(20); err = P4_0; delay(80); if( P4_0 == 0 ) err = 1; return err; } Ich lese immer die 0x01 aus. Ich brauche dringend hilfe. Komme da nicht weiter.