Rev 1106 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1106 | Rev 1185 | ||
---|---|---|---|
1 | #include <inttypes.h> |
1 | #include <inttypes.h> |
2 | #include "main.h" |
2 | #include "main.h" |
3 | //#include "fc.c" |
3 | //#include "fc.c" |
4 | 4 | ||
5 | uint16_t LED1_Timing = 0; |
5 | uint16_t LED1_Timing = 0; |
6 | uint16_t LED2_Timing = 0; |
6 | uint16_t LED2_Timing = 0; |
7 | unsigned char J16Blinkcount = 0, J16Mask = 1; |
7 | unsigned char J16Blinkcount = 0, J16Mask = 1; |
8 | unsigned char J17Blinkcount = 0, J17Mask = 1; |
8 | unsigned char J17Blinkcount = 0, J17Mask = 1; |
9 | 9 | ||
10 | // initializes the LED control outputs J16, J17 |
10 | // initializes the LED control outputs J16, J17 |
11 | void LED_Init(void) |
11 | void LED_Init(void) |
12 | { |
12 | { |
13 | // set PC2 & PC3 as output (control of J16 & J17) |
13 | // set PC2 & PC3 as output (control of J16 & J17) |
14 | DDRC |= (1<<DDC2)|(1<<DDC3); |
14 | DDRC |= (1<<DDC2)|(1<<DDC3); |
15 | J16_OFF; |
15 | J16_OFF; |
16 | J17_OFF; |
16 | J17_OFF; |
17 | J16Blinkcount = 0; J16Mask = 128; |
17 | J16Blinkcount = 0; J16Mask = 128; |
18 | J17Blinkcount = 0; J17Mask = 128; |
18 | J17Blinkcount = 0; J17Mask = 128; |
19 | } |
19 | } |
20 | 20 | ||
21 | 21 | ||
22 | // called in UpdateMotors() every 2ms |
22 | // called in UpdateMotors() every 2ms |
23 | void LED_Update(void) |
23 | void LED_Update(void) |
24 | { |
24 | { |
25 | static char delay = 0; |
25 | static char delay = 0; |
26 | if(!delay--) // 10ms Intervall |
26 | if(!delay--) // 10ms Intervall |
27 | { |
27 | { |
28 | 28 | ||
29 | delay = 4; |
29 | delay = 4; |
30 | 30 | ||
31 | //nur Höhe an |
31 | //nur Höhe an |
32 | if(HoehenReglerAktiv > 0 && Parameter_NaviGpsModeControl > 90 && Parameter_NaviGpsModeControl < 200) |
32 | if(HoehenReglerAktiv > 0 && Parameter_NaviGpsModeControl > 90 && Parameter_NaviGpsModeControl < 200) |
33 | { |
33 | { |
34 | if(!J16Blinkcount--) |
34 | if(!J16Blinkcount--) |
35 | { |
35 | { |
36 | J16Blinkcount = Parameter_J16Timing-1; |
36 | J16Blinkcount = Parameter_J16Timing-1; |
37 | if(J16Mask == 1) J16Mask = 128; else J16Mask /= 2; |
37 | if(J16Mask == 1) J16Mask = 128; else J16Mask /= 2; |
38 | if(J16Mask & EE_Parameter.UserParam1) J16_ON; else J16_OFF; |
38 | if(J16Mask & EE_Parameter.UserParam1) J16_ON; else J16_OFF; |
39 | } |
39 | } |
40 | } |
40 | } |
41 | 41 | ||
42 | //Höhe an und AID |
42 | //Höhe an und AID |
43 | else |
43 | else |
44 | if(HoehenReglerAktiv > 0 && Parameter_NaviGpsModeControl < 100 ) |
44 | if(HoehenReglerAktiv > 0 && Parameter_NaviGpsModeControl < 100 ) |
45 | { |
45 | { |
46 | if(!J16Blinkcount--) |
46 | if(!J16Blinkcount--) |
47 | { |
47 | { |
48 | J16Blinkcount = Parameter_J16Timing-1; |
48 | J16Blinkcount = Parameter_J16Timing-1; |
49 | if(J16Mask == 1) J16Mask = 128; else J16Mask /= 2; |
49 | if(J16Mask == 1) J16Mask = 128; else J16Mask /= 2; |
50 | if(J16Mask & EE_Parameter.UserParam2) J16_ON; else J16_OFF; |
50 | if(J16Mask & EE_Parameter.UserParam2) J16_ON; else J16_OFF; |
51 | } |
51 | } |
52 | } |
52 | } |
53 | else |
53 | else |
54 | 54 | ||
55 | //Höhe an und CH |
55 | //Höhe an und CH |
56 | if(HoehenReglerAktiv > 0 && Parameter_NaviGpsModeControl > 150 ) |
56 | if(HoehenReglerAktiv > 0 && Parameter_NaviGpsModeControl > 150 ) |
57 | { |
57 | { |
58 | if(!J16Blinkcount--) |
58 | if(!J16Blinkcount--) |
59 | { |
59 | { |
60 | J16Blinkcount = Parameter_J16Timing-1; |
60 | J16Blinkcount = Parameter_J16Timing-1; |
61 | if(J16Mask == 1) J16Mask = 128; else J16Mask /= 2; |
61 | if(J16Mask == 1) J16Mask = 128; else J16Mask /= 2; |
62 | if(J16Mask & EE_Parameter.UserParam3) J16_ON; else J16_OFF; |
62 | if(J16Mask & EE_Parameter.UserParam3) J16_ON; else J16_OFF; |
63 | } |
63 | } |
64 | } |
64 | } |
65 | 65 | ||
66 | else |
66 | else |
67 | { |
67 | { |
68 | J16_ON; |
68 | J16_ON; |
69 | } |
69 | } |
- | 70 | ||
70 | 71 | J16_OFF; |
|
71 | 72 | ||
72 | 73 | ||
73 | if((EE_Parameter.J17Timing > 250) && (Parameter_J17Timing > 230)) {if(EE_Parameter.J17Bitmask & 128) J17_ON; else J17_OFF;} |
74 | if((EE_Parameter.J17Timing > 250) && (Parameter_J17Timing > 230)) {if(EE_Parameter.J17Bitmask & 128) J17_ON; else J17_OFF;} |
74 | else |
75 | else |
75 | if((EE_Parameter.J17Timing > 250) && (Parameter_J17Timing < 10)) {if(EE_Parameter.J17Bitmask & 128) J17_OFF; else J17_ON;} |
76 | if((EE_Parameter.J17Timing > 250) && (Parameter_J17Timing < 10)) {if(EE_Parameter.J17Bitmask & 128) J17_OFF; else J17_ON;} |
76 | else |
77 | else |
77 | if(!J17Blinkcount--) |
78 | if(!J17Blinkcount--) |
78 | { |
79 | { |
79 | J17Blinkcount = Parameter_J17Timing-1; |
80 | J17Blinkcount = Parameter_J17Timing-1; |
80 | if(J17Mask == 1) J17Mask = 128; else J17Mask /= 2; |
81 | if(J17Mask == 1) J17Mask = 128; else J17Mask /= 2; |
81 | if(J17Mask & EE_Parameter.J17Bitmask) J17_ON; else J17_OFF; |
82 | if(J17Mask & EE_Parameter.J17Bitmask) J17_ON; else J17_OFF; |
82 | } |
83 | } |
83 | } |
84 | } |
84 | } |
85 | } |
85 | 86 |