This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

debouncing on NRF52 Preview DK

infocenter.nordicsemi.com/index.jsp

I see a debouncing filter in the block diagram of NRF52 preview DK. Isnt debouncing implemented in software? So why need a HW debouncing filter?? which part of the schematic (ie. component numbers) refers to this debouncing filter from the block diagram?

thanks

Parents
  • Hi

    Short answer: The debouncing filter is not inside the nRF52 IC. The filter is only used when you are using an external shield on top of your nRF52 DK. When using a shield the buttons get disconnected from the GPIO pins on the nRF52 IC and are instead routed to an I/O expander which is susceptible to "button noise" and needs a filtered input signal. Below I have posted parts of the nRF52 DK schematic (found here) showing how the blocks in your link are connected electrically.

    image description

    The switching block, U4, is a NX3DV2567) double throw analog switch that connects the button inputs either to the nRF52 IC directly or to an I/O expander depending on whether or not a shield is detected on the SHIELD_DETECT line. If no shield is detected then the button inputs are routed directly to pin 13-16 on the nRF52 IC. If a shield is detected then the button inputs are routed through a filter to an I/O expander, U7, which is a PCAL6408A. This expander allows you to use TWI to control GPIOs on the shield and hence, save some GPIOs on the nRF52 IC.

    Summary:

    If you are not using a shield, buttons are connected directly to a nRF52 and you are expected to do debouncing in software, e.g. by using the Button Handling Library.

    If you are using a shield the buttons need to be filtered because they will be routed to an I/O expander that doesn't do software filtering.

  • Clear Explanation. Thank you! Martin. Also can you clarify, if a pullup/pulldown resistor is required if a pushbutton switch is connected to P0.21/Reset to ground?

Reply Children
No Data
Related