8 years, 5 months ago.  This question has been closed. Reason: Off Topic

Why there is no reaction?

The function of program "MPR121_Hello World" seems to be that LED1 will be turned on once any key is pressed. However, this reaction doesn't appear no matter how I touch the keypad. Moreover, I have tried 3 different MPR121 keypads but they are totally in the same condition . Thus it doesn't seem to be the fault of MPR121 touchpad. I don't understand why this happens on my mbed LPC1768. Could anybody deal with this problem?

For more details, I change the code of Pin definition :

I2C i2c(p28, p27); InterruptIn irq(p26); MPR121 touch_pad(i2c, irq, MPR121::ADDR_VSS);

to :

I2C i2c(p9, p10); InterruptIn irq(p8); MPR121 touch_pad(i2c, irq, MPR121::ADDR_VSS);

because p20-p30 have been occupied by other components. I reckon that it doesn't matter for p9, p10 have the same function (I2C) with p28, p27 respectively.

Question relating to:

2 Answers

8 years, 5 months ago.

Did you check the wiring and the I2C address on the MPR. Did you install the pullup resistors on the I2C bus.

6 years, 6 months ago.

Have you checked that the MPR is acknowledging the command byte. Have you checked that the address is given correctly, there are two conventions in use. MBED puts the address in bits 7-1 of the address byte (bit 0 is R/W).