Zitat von Transistor
Nein, es sind 500ns = 0,5µs.
Danke, hab mich wohl um eine Größenordnung vertan. Habs nun ausgebessert.
Zitat von dgoersch
Bei allen DIY-Lösungen', die mir bisher begegnet sind (elm-chan, µC-Forum, ...) wurde wenn ich mich recht erinnere nicht die Zeit gemessen, bis der C geladen war, sondern wie lang es dauerte ihn über den Pullup zu entladen.
Ich hab die Variante noch nicht gesehen, wo die Zeit zum entladen gemessen wurde. Wobei ich um genau zu sein auch noch nie danach gesucht hab... Aber bei mir funktionierts so auch wunderbar
Zitat von Pesi
Andy: klingt interessant! - insb. dieser AT42QT1011', wenn der nicht zu teuer wäre - da kann man sich den Aufwand dann natürlich sparen, und bei einer "Taste" pro Feld wäre dann eben auch der einzelne besser geeignet für sowas, als ein Mehrfach-IC...
Aber auch wenn man sich das selbst macht, wäre es nicht gerade billig(zumindest, wenn man entsprechend viele Sensoren benötigt).
Hab auch mal Zeit gefunden schnell ein kleines Video zu machen, dass das ganze Verständlicher wird.
[YouTube]Yyr7k5PWxso[/YouTube]
hoffe das mit dem Einbetten klappt. Wenn nicht, ist hier noch der Direktlink: http://www.youtube.com/watch?v=Yyr7k5PWxso
Da YouTube den Quellcode iwie nicht in der Videobeschreibung haben will hier noch der komplette Code ganz exklusiv für euch 
#include <avr/io.h>
#include <util/delay.h>
#include <stdbool.h>
int main(void){
DDRB = 0xFF;
bool pressed = false;
while(1){
DDRB |= (1<<PB1);//PB1 -> output
PORTB &= ~(1<<PB1); //PB1 low -> sensor entladen
DDRB &= ~(1<<PB1); //PB1 -> input
PORTB |= (1<<PB1); //Sensor über internen Pull up laden
asm volatile("nop"); //wait 7CK = 0,4375µs @ 16MHz -> anpassen an Sensorfläche
asm volatile("nop");
asm volatile("nop");
asm volatile("nop");
asm volatile("nop");
asm volatile("nop");
asm volatile("nop");
//Kapazität(Spannung am Sensor überprüfen
if(PINB & (1<<PB1)){
//Kapazität ohne Hand
pressed = false;
}
else{
//mit Hand
if(!(pressed)){
PORTB ^= (1<<PB0);
_delay_ms(25);
pressed = true;
}
}
DDRB |= (1<<PB1);//PB1 als output
PORTB &= ~(1<<PB1); //PB1 auf Masse -> Sensor entladen
_delay_ms(10);
}
}
Alles anzeigen
Der Code ist hoffentlich ausführlich genug Kommentiert und nicht von all zu schlechtem Stil 
Zur erklärung noch: Die LED ist an PB0 und der Sensor an PB1
mfg pacad
Edit: Das mit dem YouTube Video hat gut funktioniert, aber mit den Zitaten hab ich mir mein Posting trotzdem ruiniert.. Bessers grad wieder aus.