| ??? 12/08/09 15:39 Read: times |
#171517 - To check debounce Responding to: ???'s previous message |
This is what i did. have not check it yet on my hardware.
'st_stop_press_count' is a long int. I have used it to count. there are 4 buttons including this that have the same kind of loop. Debounce has a value of 500. if the button is pressed and the value of 'st_stop_press_count' reaches 500 the button loop is executed
if(st_stop == 1)
{
st_stop_press_count++;
if(st_stop == 1 && st_stop_press_count == debounce)
{
if(cycle_run == 1)//this means machine was already running
{
st_stop_press_count == 0;
machine_stop_function();
}
else if(cycle_run == 0)//this means that the machine was stopped earlier
{
st_stop_press_count == 0;
machine_run_function();
}
}
}
About the mode issue. What i have decided to do is that when the operator presses the mode button he will have 2 seconds after that to make the adjustments using the available 3 sets of 'up/'down' buttons |
| Topic | Author | Date |
| one key, multiple jobs assigned to it | 01/01/70 00:00 | |
| Step by step | 01/01/70 00:00 | |
| What methods do you have for keeping track of time now? | 01/01/70 00:00 | |
| Timing in Siemens ;)? | 01/01/70 00:00 | |
| RC circuit | 01/01/70 00:00 | |
| Yep, touché!... | 01/01/70 00:00 | |
| Another idea... | 01/01/70 00:00 | |
| State machine | 01/01/70 00:00 | |
| State Transition Diagram | 01/01/70 00:00 | |
| Timers can help!! | 01/01/70 00:00 | |
| In theory, zero timers are needed | 01/01/70 00:00 | |
| "I do not have any timer interrupts left." | 01/01/70 00:00 | |
| Software timers | 01/01/70 00:00 | |
| To check debounce | 01/01/70 00:00 | |
what happens when | 01/01/70 00:00 |



