Rev 1394 | Rev 1762 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | SVN | RSS feed
| Rev 1394 | Rev 1395 | ||
|---|---|---|---|
| Line 3... | Line 3... | ||
| 3 | 3 | ||
| 4 | #if (act_softPWM_PIN_0_INVERT == 0) |
4 | #if (act_softPWM_PIN_0_INVERT == 0) |
| 5 | #define set_pin_0_below_trigger gpio_set_pin(act_softPWM_PIN_0) |
5 | #define set_pin_0_below_trigger gpio_set_pin(act_softPWM_PIN_0) |
| 6 | #define set_pin_0_above_trigger gpio_clr_pin(act_softPWM_PIN_0) |
6 | #define set_pin_0_above_trigger gpio_clr_pin(act_softPWM_PIN_0) |
| 7 | #else |
7 | #else |
| 8 | #define set_pin_0_below_trigger |
8 | #define set_pin_0_below_trigger gpio_clr_pin(act_softPWM_PIN_0) |
| 9 | #define set_pin_0_above_trigger |
9 | #define set_pin_0_above_trigger gpio_set_pin(act_softPWM_PIN_0) |
| 10 | #endif |
10 | #endif |
| 11 | 11 | ||
| 12 | #if (act_softPWM_PIN_1_INVERT == 0) |
12 | #if (act_softPWM_PIN_1_INVERT == 0) |
| 13 | #define set_pin_1_below_trigger gpio_set_pin(act_softPWM_PIN_1) |
13 | #define set_pin_1_below_trigger gpio_set_pin(act_softPWM_PIN_1) |
| 14 | #define set_pin_1_above_trigger gpio_clr_pin(act_softPWM_PIN_1) |
14 | #define set_pin_1_above_trigger gpio_clr_pin(act_softPWM_PIN_1) |
| 15 | #else |
15 | #else |
| 16 | #define set_pin_1_below_trigger |
16 | #define set_pin_1_below_trigger gpio_clr_pin(act_softPWM_PIN_1) |
| 17 | #define set_pin_1_above_trigger |
17 | #define set_pin_1_above_trigger gpio_set_pin(act_softPWM_PIN_1) |
| 18 | #endif |
18 | #endif |
| 19 | 19 | ||
| 20 | #if (act_softPWM_PIN_2_INVERT == 0) |
20 | #if (act_softPWM_PIN_2_INVERT == 0) |
| 21 | #define set_pin_2_below_trigger gpio_set_pin(act_softPWM_PIN_2) |
21 | #define set_pin_2_below_trigger gpio_set_pin(act_softPWM_PIN_2) |
| 22 | #define set_pin_2_above_trigger gpio_clr_pin(act_softPWM_PIN_2) |
22 | #define set_pin_2_above_trigger gpio_clr_pin(act_softPWM_PIN_2) |
| 23 | #else |
23 | #else |
| 24 | #define set_pin_2_below_trigger |
24 | #define set_pin_2_below_trigger gpio_clr_pin(act_softPWM_PIN_2) |
| 25 | #define set_pin_2_above_trigger |
25 | #define set_pin_2_above_trigger gpio_set_pin(act_softPWM_PIN_2) |
| 26 | #endif |
26 | #endif |
| 27 | 27 | ||
| 28 | #if (act_softPWM_PIN_3_INVERT == 0) |
28 | #if (act_softPWM_PIN_3_INVERT == 0) |
| 29 | #define set_pin_3_below_trigger gpio_set_pin(act_softPWM_PIN_3) |
29 | #define set_pin_3_below_trigger gpio_set_pin(act_softPWM_PIN_3) |
| 30 | #define set_pin_3_above_trigger gpio_clr_pin(act_softPWM_PIN_3) |
30 | #define set_pin_3_above_trigger gpio_clr_pin(act_softPWM_PIN_3) |
| 31 | #else |
31 | #else |
| 32 | #define set_pin_3_below_trigger |
32 | #define set_pin_3_below_trigger gpio_clr_pin(act_softPWM_PIN_3) |
| 33 | #define set_pin_3_above_trigger |
33 | #define set_pin_3_above_trigger gpio_set_pin(act_softPWM_PIN_3) |
| 34 | #endif |
34 | #endif |
| 35 | 35 | ||
| 36 | #if (act_softPWM_PIN_4_INVERT == 0) |
36 | #if (act_softPWM_PIN_4_INVERT == 0) |
| 37 | #define set_pin_4_below_trigger gpio_set_pin(act_softPWM_PIN_4) |
37 | #define set_pin_4_below_trigger gpio_set_pin(act_softPWM_PIN_4) |
| 38 | #define set_pin_4_above_trigger gpio_clr_pin(act_softPWM_PIN_4) |
38 | #define set_pin_4_above_trigger gpio_clr_pin(act_softPWM_PIN_4) |
| 39 | #else |
39 | #else |
| 40 | #define set_pin_4_below_trigger |
40 | #define set_pin_4_below_trigger gpio_clr_pin(act_softPWM_PIN_4) |
| 41 | #define set_pin_4_above_trigger |
41 | #define set_pin_4_above_trigger gpio_set_pin(act_softPWM_PIN_4) |
| 42 | #endif |
42 | #endif |
| 43 | 43 | ||
| 44 | #if (act_softPWM_PIN_5_INVERT == 0) |
44 | #if (act_softPWM_PIN_5_INVERT == 0) |
| 45 | #define set_pin_5_below_trigger gpio_set_pin(act_softPWM_PIN_5) |
45 | #define set_pin_5_below_trigger gpio_set_pin(act_softPWM_PIN_5) |
| 46 | #define set_pin_5_above_trigger gpio_clr_pin(act_softPWM_PIN_5) |
46 | #define set_pin_5_above_trigger gpio_clr_pin(act_softPWM_PIN_5) |
| 47 | #else |
47 | #else |
| 48 | #define set_pin_5_below_trigger |
48 | #define set_pin_5_below_trigger gpio_clr_pin(act_softPWM_PIN_5) |
| 49 | #define set_pin_5_above_trigger |
49 | #define set_pin_5_above_trigger gpio_set_pin(act_softPWM_PIN_5) |
| 50 | #endif |
50 | #endif |
| 51 | 51 | ||
| 52 | #if (act_softPWM_PIN_6_INVERT == 0) |
52 | #if (act_softPWM_PIN_6_INVERT == 0) |
| 53 | #define set_pin_6_below_trigger gpio_set_pin(act_softPWM_PIN_6) |
53 | #define set_pin_6_below_trigger gpio_set_pin(act_softPWM_PIN_6) |
| 54 | #define set_pin_6_above_trigger gpio_clr_pin(act_softPWM_PIN_6) |
54 | #define set_pin_6_above_trigger gpio_clr_pin(act_softPWM_PIN_6) |
| 55 | #else |
55 | #else |
| 56 | #define set_pin_6_below_trigger |
56 | #define set_pin_6_below_trigger gpio_clr_pin(act_softPWM_PIN_6) |
| 57 | #define set_pin_6_above_trigger |
57 | #define set_pin_6_above_trigger gpio_set_pin(act_softPWM_PIN_6) |
| 58 | #endif |
58 | #endif |
| 59 | 59 | ||
| 60 | #if (act_softPWM_PIN_7_INVERT == 0) |
60 | #if (act_softPWM_PIN_7_INVERT == 0) |
| 61 | #define set_pin_7_below_trigger gpio_set_pin(act_softPWM_PIN_7) |
61 | #define set_pin_7_below_trigger gpio_set_pin(act_softPWM_PIN_7) |
| 62 | #define set_pin_7_above_trigger gpio_clr_pin(act_softPWM_PIN_7) |
62 | #define set_pin_7_above_trigger gpio_clr_pin(act_softPWM_PIN_7) |
| 63 | #else |
63 | #else |
| 64 | #define set_pin_7_below_trigger |
64 | #define set_pin_7_below_trigger gpio_clr_pin(act_softPWM_PIN_7) |
| 65 | #define set_pin_7_above_trigger |
65 | #define set_pin_7_above_trigger gpio_set_pin(act_softPWM_PIN_7) |
| 66 | #endif |
66 | #endif |
| 67 | 67 | ||
| 68 | static uint16_t currentTimer = 0; |
68 | static uint16_t currentTimer = 0; |
| 69 | static uint16_t maxTimer = 10; |
69 | static uint16_t maxTimer = 10; |
| 70 | static uint8_t resolution = 1; |
70 | static uint8_t resolution = 1; |
| 71 | static uint8_t act_softPWM_ReportInterval =0; |
71 | static uint8_t act_softPWM_ReportInterval =0; |
| 72 | static uint8_t currentSendChannelId = 0; |
72 | static uint8_t currentSendChannelId = 0; |
| 73 | - | ||
| 74 | 73 | ||
| 75 | #ifdef act_softPWM_USEEEPROM |
74 | #ifdef act_softPWM_USEEEPROM |
| 76 | #include "act_softPWM_eeprom.h" |
75 | #include "act_softPWM_eeprom.h" |
| 77 | struct eeprom_act_softPWM EEMEM eeprom_act_softPWM = |
76 | struct eeprom_act_softPWM EEMEM eeprom_act_softPWM = |
| 78 | { |
77 | { |
| Line 200... | Line 199... | ||
| 200 | set_pin_7_below_trigger; |
199 | set_pin_7_below_trigger; |
| 201 | } |
200 | } |
| 202 | #endif |
201 | #endif |
| 203 | } |
202 | } |
| 204 | #ifdef act_softPWM_PIN_0 |
203 | #ifdef act_softPWM_PIN_0 |
| 205 | if (currentTimer >= pwmValue[0] && gpio_get_state(act_softPWM_PIN_0) != |
204 | if (currentTimer >= pwmValue[0] && gpio_get_state(act_softPWM_PIN_0) != act_softPWM_PIN_0_INVERT) { |
| 206 | set_pin_0_above_trigger; |
205 | set_pin_0_above_trigger; |
| 207 | } |
206 | } |
| 208 | #endif |
207 | #endif |
| 209 | #ifdef act_softPWM_PIN_1 |
208 | #ifdef act_softPWM_PIN_1 |
| 210 | if (currentTimer >= pwmValue[1] && gpio_get_state(act_softPWM_PIN_1) != |
209 | if (currentTimer >= pwmValue[1] && gpio_get_state(act_softPWM_PIN_1) != act_softPWM_PIN_1_INVERT) { |
| 211 | set_pin_1_above_trigger; |
210 | set_pin_1_above_trigger; |
| 212 | } |
211 | } |
| 213 | #endif |
212 | #endif |
| 214 | #ifdef act_softPWM_PIN_2 |
213 | #ifdef act_softPWM_PIN_2 |
| 215 | if (currentTimer >= pwmValue[2] && gpio_get_state(act_softPWM_PIN_2) != |
214 | if (currentTimer >= pwmValue[2] && gpio_get_state(act_softPWM_PIN_2) != act_softPWM_PIN_2_INVERT) { |
| 216 | set_pin_2_above_trigger; |
215 | set_pin_2_above_trigger; |
| 217 | } |
216 | } |
| 218 | #endif |
217 | #endif |
| 219 | #ifdef act_softPWM_PIN_3 |
218 | #ifdef act_softPWM_PIN_3 |
| 220 | if (currentTimer >= pwmValue[3] && gpio_get_state(act_softPWM_PIN_3) != |
219 | if (currentTimer >= pwmValue[3] && gpio_get_state(act_softPWM_PIN_3) != act_softPWM_PIN_3_INVERT) { |
| 221 | set_pin_3_above_trigger; |
220 | set_pin_3_above_trigger; |
| 222 | } |
221 | } |
| 223 | #endif |
222 | #endif |
| 224 | #ifdef act_softPWM_PIN_4 |
223 | #ifdef act_softPWM_PIN_4 |
| 225 | if (currentTimer >= pwmValue[4] && gpio_get_state(act_softPWM_PIN_4) != |
224 | if (currentTimer >= pwmValue[4] && gpio_get_state(act_softPWM_PIN_4) != act_softPWM_PIN_4_INVERT) { |
| 226 | set_pin_4_above_trigger; |
225 | set_pin_4_above_trigger; |
| 227 | } |
226 | } |
| 228 | #endif |
227 | #endif |
| 229 | #ifdef act_softPWM_PIN_5 |
228 | #ifdef act_softPWM_PIN_5 |
| 230 | if (currentTimer >= pwmValue[5] && gpio_get_state(act_softPWM_PIN_5) != |
229 | if (currentTimer >= pwmValue[5] && gpio_get_state(act_softPWM_PIN_5) != act_softPWM_PIN_5_INVERT) { |
| 231 | set_pin_5_above_trigger; |
230 | set_pin_5_above_trigger; |
| 232 | } |
231 | } |
| 233 | #endif |
232 | #endif |
| 234 | #ifdef act_softPWM_PIN_6 |
233 | #ifdef act_softPWM_PIN_6 |
| 235 | if (currentTimer >= pwmValue[6] && gpio_get_state(act_softPWM_PIN_6) != |
234 | if (currentTimer >= pwmValue[6] && gpio_get_state(act_softPWM_PIN_6) != act_softPWM_PIN_6_INVERT) { |
| 236 | set_pin_6_above_trigger; |
235 | set_pin_6_above_trigger; |
| 237 | } |
236 | } |
| 238 | #endif |
237 | #endif |
| 239 | #ifdef act_softPWM_PIN_7 |
238 | #ifdef act_softPWM_PIN_7 |
| 240 | if (currentTimer >= pwmValue[7] && gpio_get_state(act_softPWM_PIN_7) != |
239 | if (currentTimer >= pwmValue[7] && gpio_get_state(act_softPWM_PIN_7) != act_softPWM_PIN_7_INVERT) { |
| 241 | set_pin_7_above_trigger; |
240 | set_pin_7_above_trigger; |
| 242 | } |
241 | } |
| 243 | #endif |
242 | #endif |
| 244 | } |
243 | } |
| 245 | if (Timer_Expired(act_softPWM_SEND_TIMER)) { |
244 | if (Timer_Expired(act_softPWM_SEND_TIMER)) { |