I wrote a post about my design for a capactitive touch business card a few months ago but I have finally had time to build it up and test it out. overall it works well but I could make some improvements. Here’s a quick video of it working:
To implement the capacitive touch I used the PIC10F206 microcontroller. I chose this microcontroller over something bigger like a PIC12 or PIC16 or MSP430 because like the simplicity of this very low cost, low power, 6 pin micro controller.
Here’s the circuit for implementing the capacitive touch
The theory of how it works is that the timer in the microcontroller is used to send a train of pulses out of pin 4 of the microcontroller:
These pulses charge the capacitor made by the capacitive touch pad on the PCB. The voltage on this pad is monitored by the internal comparator on the mircocontroller on pin 1 and it discharges through the resistor R1. The next picture is a scope capture of the voltage on the capacitive touch pad when there is no finger on the pad. (Note that the capacitive of the oscilloscope probe does add enough capacitance to trigger the comparator but we still will be bale to see a difference when a finger is on the pad). Here we can see that it chages up fast when the output goes high and when the output goes low the capacitor cannot discharge through the output due to the diode blocking it, it can only discharge through R1. The larger the capacitance of the pad the slower the discharge which means the bottom value of the ripple will be smaller.
Here we can see the effect of a finger on the capacitive touch pad; there is more capacitance on the pad and that makes the minimum values of the ripple lower. The internal comparator on the mircocontroller has a 0.6V reference voltage so when the minimum values of the ripple drops below 0.6V it triggers the comparator. If the comparator does not get triggered for a certain amount of pulses set in the software it determines that the pad had been touched and it turns on the LED output.
That’s the basics of how the capacitive touch works on this board, which is one of many different ways it can be implemented.