Button Latency Problem Help

2 visualizzazioni (ultimi 30 giorni)
Can
Can il 3 Ott 2022
Risposto: Vidip Jain il 21 Feb 2023
I am working with Raspberry Pi on Simulink. I have a save condition includes push button. If I press the button, values will save to the worksace, but everytime I pressed that button, it takes too much time to turn off and this cause to save to much value. This button must be on/off real quick and needs to save only one value. How can I solve this?

Risposte (1)

Vidip Jain
Vidip Jain il 21 Feb 2023
In this situation, multiple signals are sent when the button is pressed. There are a few different ways to ensure that only one signal is sent when the button is pressed, but one simple method is to add a short delay after that button is pressed before reading its value. This delay can be implemented in software using a timer or delay loop.
Here's a simple example of how you could implement debouncing in your Simulink model:
  1. Add a "Delay" block to your model, and set its delay time to a few milliseconds (e.g. 5ms).
  2. Connect the output of your button to the input of the Delay block.
  3. Connect the output of the Delay block to your save condition block.
  4. When the button is pressed, it will send a signal to the Delay block, which will delay the signal by a few milliseconds before passing it to the save condition block. This will ensure that only one signal is sent, even if the button bounces multiple times.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by