Die Lötstelle sehen ganz gut aus.

Hier mal der Code von dem Programm das ich benutzt habe für die Auswertung:

Code:
/***************************************************************************
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   any later version.                                                    *
 ***************************************************************************/

#include <stdlib.h>
#include "asuro.h"


uint16_t MyPollSwitch(void)
{
  uint16_t i;

  DDRD |= SWITCHES;                     // Port-Bit SWITCHES als Output
  SWITCH_ON;                            // Port-Bit auf HIGH zur Messung
  ADMUX = (1 << REFS0) | SWITCH;        // AVCC reference with external capacitor
  Sleep (10);

  ADCSRA |= (1 << ADSC);                // Starte AD-Wandlung
  while (!(ADCSRA & (1 << ADIF)))       // Ende der AD-Wandlung abwarten
    ;
  ADCSRA |= (1 << ADIF);                // AD-Interupt-Flag zuruecksetzen

  i = ADCL + (ADCH << 8);               // Ergebnis als 16-Bit-Wert

  SWITCH_OFF;                           // Port-Bit auf LOW
  Sleep (5);

  return ADC;
}


void SwitchTest(void)
{
  uint8_t i, j, mval;
  uint16_t adval;

  for(i=0; i<6; i++)
  {
    SerPrint("\r\nPress Key ");
    PrintInt(6-i);
    SerPrint("\r\n");
	Msleep(1500);
    adval = MyPollSwitch();
	PrintInt(adval);
	Msleep(1500);
    adval = MyPollSwitch();
	PrintInt(adval);
	Msleep(1500);
    adval = MyPollSwitch();
	PrintInt(adval);
	Msleep(1500);
	adval = MyPollSwitch();
    PrintInt(adval);
	Msleep(1500);
  }   
}


int main(void)
{

  Init();
  SerPrint("\r\nTastsensor Kalibration\r\n");
  while (1)
  {
    SwitchTest();
  }
}
Könnte ein fehlerhafter Widerstand die Ursache für das Problem sein? Wie kann ich das dann überprüfen?