Te, figyelj már, arra a GPIO-ra nem lehet a mikrokontrolleren belül felhúzást - weak pullup - programozni? Mert akkor semmilyen alkatrész sem kell, csak a kapcsoló a GPIO input pin és a GND közé.