diff options
Diffstat (limited to 'firmware/target/arm/tms320dm320/mrobe-500/button-mr500.c')
-rw-r--r-- | firmware/target/arm/tms320dm320/mrobe-500/button-mr500.c | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/firmware/target/arm/tms320dm320/mrobe-500/button-mr500.c b/firmware/target/arm/tms320dm320/mrobe-500/button-mr500.c index 3e5be7c22f..bc163b1070 100644 --- a/firmware/target/arm/tms320dm320/mrobe-500/button-mr500.c +++ b/firmware/target/arm/tms320dm320/mrobe-500/button-mr500.c | |||
@@ -128,12 +128,6 @@ inline bool button_hold(void) | |||
128 | return false; | 128 | return false; |
129 | } | 129 | } |
130 | 130 | ||
131 | static void remote_heartbeat(void) | ||
132 | { | ||
133 | char data[5] = {0x11, 0x30, 0x11^0x30, 0x11+0x30, '\0'}; | ||
134 | uart1_puts(data, 5); | ||
135 | } | ||
136 | |||
137 | #define TOUCH_MARGIN 8 | 131 | #define TOUCH_MARGIN 8 |
138 | char r_buffer[5]; | 132 | char r_buffer[5]; |
139 | int r_button = BUTTON_NONE; | 133 | int r_button = BUTTON_NONE; |
@@ -142,13 +136,14 @@ int button_read_device(int *data) | |||
142 | int retval, calbuf; | 136 | int retval, calbuf; |
143 | static int oldbutton = BUTTON_NONE; | 137 | static int oldbutton = BUTTON_NONE; |
144 | 138 | ||
139 | static long last_touch = 0; | ||
140 | |||
145 | r_button=BUTTON_NONE; | 141 | r_button=BUTTON_NONE; |
146 | *data = 0; | 142 | *data = 0; |
147 | 143 | ||
148 | if (touch_available) | 144 | if (touch_available) |
149 | { | 145 | { |
150 | short x,y; | 146 | short x,y; |
151 | static long last_touch = 0; | ||
152 | bool send_touch = false; | 147 | bool send_touch = false; |
153 | tsc2100_read_values(&x, &y, &last_z1, &last_z2); | 148 | tsc2100_read_values(&x, &y, &last_z1, &last_z2); |
154 | if (TIME_BEFORE(last_touch + HZ/5, current_tick)) | 149 | if (TIME_BEFORE(last_touch + HZ/5, current_tick)) |
@@ -175,7 +170,14 @@ int button_read_device(int *data) | |||
175 | last_touch = current_tick; | 170 | last_touch = current_tick; |
176 | touch_available = false; | 171 | touch_available = false; |
177 | } | 172 | } |
178 | remote_heartbeat(); | 173 | else |
174 | { | ||
175 | /* Touch hasn't happened in a while, clear the bits */ | ||
176 | if(last_touch+3>current_tick) | ||
177 | { | ||
178 | oldbutton&=(0xFF); | ||
179 | } | ||
180 | } | ||
179 | 181 | ||
180 | if ((IO_GIO_BITSET0&0x01) == 0) | 182 | if ((IO_GIO_BITSET0&0x01) == 0) |
181 | { | 183 | { |