0
\$\begingroup\$

I have a DFPlayer MP3 module I'm using for a small soundboard project. I have a button that grounds ADKEY1(Pin 12), which triggers playing the next MP3. I'm adding an Arduino into that mix that I want to also be able to trigger ADKEY1. I'm just unsure of how to accomplish this - since the specs are specifically saying to ground the pin, I wouldn't think a digitalWrite LOW would be enough (nor would I think pulling that pin HIGH would be a good thing for the DFPlayer, but I could be wrong. Does this make any sense? Is this the king of thing I'd actually want to use a transistor for?

It's funny, I've done a lot of small Microcontroller projects before, but never had anything where I needed to actually trigger a ground. I feel like the answer is obvious and I'm being an idiot :) Any help is appreciated!

\$\endgroup\$
0
\$\begingroup\$

Two simple methods.

  1. A NPN Transistor across the push button. A 1k Base resistor is good enough, as you are using this as a switch not as a current multiplier.

schematic

Output High to press the button. Output Low to release.

  1. Since you are sharing grounds, and there is a resistor involved, you could just connect it in a "Open-Collector" setup. You switch your pin from Input to Output Low. Never Output High. This is like the bit-banged i2c setups. Not Input with Pull-up.

schematic

Output Low to press the button. Input to release.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.