Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**************************************/
- /* Not so powerful Debouncing Example */
- /* No Interrupt needed */
- /* Author: Peter Dannegger */
- /**************************************/
- #define debounce(port,pin)({\
- static uint8_t flag = 0;\
- uint8_t i = 0;\
- if( flag )\
- {\
- while(1)\
- {\
- if( !(port & 1<<pin) )\
- {\
- i = 0;\
- break;\
- }\
- _delay_us( 98 );\
- if( --i == 0 )\
- {\
- flag = 0;\
- i = 0;\
- break;\
- }\
- }\
- }\
- else\
- {\
- while(1)\
- {\
- if( (port & 1<<pin) )\
- {\
- i = 0;\
- break;\
- }\
- _delay_us( 98 );\
- if( --i == 0 )\
- {\
- flag = 1;\
- i = 1;\
- break;\
- }\
- }\
- }\
- i;\
- })
Advertisement
Add Comment
Please, Sign In to add comment