Rev 1955 | Rev 1964 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1955 | Rev 1960 | ||
---|---|---|---|
Line 67... | Line 67... | ||
67 | } |
67 | } |
Line 68... | Line 68... | ||
68 | 68 | ||
69 | void flashingLight(uint8_t port, uint8_t timing, uint8_t bitmask, |
69 | void flashingLight(uint8_t port, uint8_t timing, uint8_t bitmask, |
70 | uint8_t manual) { |
70 | uint8_t manual) { |
71 | if (timing > 250 && manual > 230) { |
71 | if (timing > 250 && manual > 230) { |
72 | // "timing" is set to "manual" and the value is very high --> Set to the value in bitmask bit 7. |
72 | // "timing" is set to "manual (a variable)" and the value is very high --> Set to the value in bitmask bit 7. |
73 | OUTPUT_SET(port, bitmask & 128); |
73 | OUTPUT_SET(port, bitmask & 128); |
74 | } else if (timing > 250 && manual < 10) { |
74 | } else if (timing > 250 && manual < 10) { |
75 | // "timing" is set to "manual" and the value is very low --> Set to the negated value in bitmask bit 7. |
75 | // "timing" is set to "manual" (a variable) and the value is very low --> Set to the negated value in bitmask bit 7. |
76 | OUTPUT_SET(port, !(bitmask & 128)); |
76 | OUTPUT_SET(port, !(bitmask & 128)); |
77 | } else if (!flashCnt[port]--) { |
77 | } else if (!flashCnt[port]--) { |
78 | // rotating mask over bitmask... |
78 | // rotating mask over bitmask... |
79 | flashCnt[port] = timing - 1; |
79 | flashCnt[port] = timing - 1; |
Line 87... | Line 87... | ||
87 | 87 | ||
88 | void flashingLights(void) { |
88 | void flashingLights(void) { |
89 | static int8_t delay = 0; |
89 | static int8_t delay = 0; |
90 | if (!delay--) { // 10 ms intervals |
90 | if (!delay--) { // 10 ms intervals |
91 | delay = 4; |
91 | delay = 4; |
92 | if (beepModulation != BEEP_MODULATION_NONE) { |
92 | if (staticParams.outputFlags & 4 && beepModulation != BEEP_MODULATION_NONE) { |
93 | // alarm |
93 | // alarm |
94 | flashingLight(0, 25, 0x55, 25); |
94 | flashingLight(0, 25, 0x55, 25); |
95 | flashingLight(1, 25, 0xAA, 25); |
95 | flashingLight(1, 25, 0xAA, 25); |
96 | } else { |
96 | } else { |
97 | flashingLight(0, staticParams.J16Timing, staticParams.J16Bitmask, |
- | |
98 | dynamicParams.J16Timing); |
97 | flashingLight(0, staticParams.outputFlash[0].timing, staticParams.outputFlash[0].bitmask, dynamicParams.output0Timing); |
99 | flashingLight(1, staticParams.J17Timing, staticParams.J17Bitmask, |
- | |
100 | dynamicParams.J17Timing); |
98 | flashingLight(1, staticParams.outputFlash[1].timing, staticParams.outputFlash[1].bitmask, dynamicParams.output1Timing); |
101 | } |
99 | } |
102 | } |
100 | } |
Line 103... | Line 101... | ||
103 | } |
101 | } |
104 | 102 | ||
105 | void output_update(void) { |
- | |
106 | if (!DIGITAL_DEBUG_MASK) { |
- | |
107 | flashingLights(); |
103 | void output_update(void) { |
108 | } else if (DIGITAL_DEBUG_MASK == DEBUG_LEDTEST_ON) { |
104 | if (staticParams.outputFlags & 1) { |
109 | OUTPUT_SET(0, 1); |
105 | OUTPUT_SET(0, 1); |
110 | OUTPUT_SET(1, 1); |
106 | OUTPUT_SET(1, 1); |
111 | } else if (DIGITAL_DEBUG_MASK == DEBUG_LEDTEST_OFF) { |
107 | } else if (staticParams.outputFlags & 2) { |
112 | OUTPUT_SET(0, 0); |
- | |
113 | OUTPUT_SET(1, 0); |
- | |
114 | } else if (DIGITAL_DEBUG_MASK == DEBUG_LEDTEST_0) { |
- | |
115 | OUTPUT_SET(0, 1); |
108 | OUTPUT_SET(0, 0); |
116 | OUTPUT_SET(1, 0); |
- | |
117 | } else if (DIGITAL_DEBUG_MASK == DEBUG_LEDTEST_1) { |
109 | OUTPUT_SET(1, 0); |
118 | OUTPUT_SET(0, 0); |
110 | } else if (!staticParams.outputDebugMask) { |
119 | OUTPUT_SET(1, 1); |
111 | flashingLights(); |
120 | } else { |
112 | } else { |
121 | OUTPUT_SET(0, debugOut.digital[0] & DIGITAL_DEBUG_MASK); |
113 | OUTPUT_SET(0, debugOut.digital[0] & staticParams.outputDebugMask); |
122 | OUTPUT_SET(1, debugOut.digital[1] & DIGITAL_DEBUG_MASK); |
114 | OUTPUT_SET(1, debugOut.digital[1] & staticParams.outputDebugMask); |
Line 123... | Line 115... | ||
123 | } |
115 | } |
124 | } |
116 | } |