Hi, ich benutze ein Atmel Evaluationboard V2.0, mit einem ATmega16 (8 MHz Quarz) und einem 1-wire-Tempsensor (DS1820). Header für temp sensor: #asm .equ __w1_port=0x18 .equ __w1_bit=0 #endasm #include<ds1820.h> jetzt habe ich zur Probe den C-Code aus dem CodeVisionAVR-Manual geschrieben. Der Tempsenor wird auch erkannt, doch in dem CodeVision-Termial ( über RS232 ) wird mir immer der gleiche Wert angezeigt: 1023.5 folgender C-Code wird zur Ausgabe benutzt: while(1) { for(i=0;i<devices;) { temp=ds1820_temperature_10(&rom_code[i][0]); j='+'; if(temp<0) { j='-'; temp=-temp; } printf("t%u=%c%i.%u\n\r",++i,j,temp/10,temp%10); } } WARUM ändert sich der Wert nicht, bei unterschiedlichen Temperaturen?? Kann mir bitte jemand helfen. den code habe ich angehängt
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.