projects
/
fw
/
altos
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Transmit computed ground pressure and acceleration values
[fw/altos]
/
ao_led.c
diff --git
a/ao_led.c
b/ao_led.c
index f2bc179adfc21663a10d62f984ee5a7f25baeccd..6c698b4be42192b6532f9278d617c4230743d64f 100644
(file)
--- a/
ao_led.c
+++ b/
ao_led.c
@@
-17,26
+17,36
@@
#include "ao.h"
#include "ao.h"
+#define AO_LED_ALL (AO_LED_GREEN|AO_LED_RED)
+
+__pdata uint8_t ao_led_enable;
+
void
ao_led_on(uint8_t colors)
{
void
ao_led_on(uint8_t colors)
{
- P1 |=
colors
;
+ P1 |=
(colors & ao_led_enable)
;
}
void
ao_led_off(uint8_t colors)
{
}
void
ao_led_off(uint8_t colors)
{
- P1 &= ~
colors
;
+ P1 &= ~
(colors & ao_led_enable)
;
}
void
ao_led_set(uint8_t colors)
{
}
void
ao_led_set(uint8_t colors)
{
- P1 = (P1 & ~3) | colors;
+ P1 = (P1 & ~(ao_led_enable)) | (colors & ao_led_enable);
+}
+
+void
+ao_led_toggle(uint8_t colors)
+{
+ P1 ^= (colors & ao_led_enable);
}
void
}
void
-ao_led_for(uint8_t colors, uint16_t ticks)
+ao_led_for(uint8_t colors, uint16_t ticks)
__reentrant
{
ao_led_on(colors);
ao_delay(ticks);
{
ao_led_on(colors);
ao_delay(ticks);
@@
-44,9
+54,10
@@
ao_led_for(uint8_t colors, uint16_t ticks)
}
void
}
void
-ao_led_init(
void
)
+ao_led_init(
uint8_t enable
)
{
{
- P1SEL &= ~3;
- P1 &= ~3;
- P1DIR |= 3;
+ ao_led_enable = enable;
+ P1SEL &= ~enable;
+ P1 &= ~enable;
+ P1DIR |= enable;
}
}