IR remoute control multiple click button
Revision 2:7a268df54696, committed 2021-05-07
- Comitter:
- docent
- Date:
- Fri May 07 15:38:48 2021 +0000
- Parent:
- 0:94d6bf511846
- Commit message:
- corrections
Changed in this revision
| UserButton.h | Show annotated file Show diff for this revision Revisions of this file |
--- a/UserButton.h Fri Jul 12 07:35:10 2019 +0000
+++ b/UserButton.h Fri May 07 15:38:48 2021 +0000
@@ -1,17 +1,16 @@
-InterruptIn mybutton(USER_BUTTON);
+//InterruptIn mybutton(USER_BUTTON);//mybutton(PC_14);//
Timeout FrameTimeout;
Timeout BounceTimeout;
uint8_t Debounce=0;
-uint8_t cnt=0,*pind_cnt;
-uint8_t *pmode=0;
+uint8_t cnt=0;
+uint8_t NewButtonMode=0;
-
//------------------
void FrameTimeout_isr()
{
- *pmode=cnt;
+ NewButtonMode=cnt;
cnt=0;
}
@@ -28,7 +27,7 @@
if(Debounce==0){
Debounce=1;
cnt++;
- *pind_cnt=cnt;
+ //*pind_cnt=cnt;
FrameTimeout.detach();
FrameTimeout.attach(FrameTimeout_isr,1.0);
BounceTimeout.attach(BounceTimeout_isr,0.2);
@@ -36,12 +35,20 @@
}
//-----------------------------------
-void ButtonIni(uint8_t *pind,uint8_t *pm)
+void ButtonIni(InterruptIn *button)
{
- pmode=pm;
- pind_cnt=pind;
- mybutton.fall(&pressed);
+ Debounce=0;
+ cnt=0;
+ NewButtonMode=0;
+ button->fall(&pressed);
}
+//----------------------------
+ void WhatButtonMode(uint8_t *Pmode)
+{
+ if(NewButtonMode){
+ *Pmode=NewButtonMode;
+ NewButtonMode=0;
+ }
+}
-