projects
/
fw
/
altos
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
altos: Add orientation test when HAS_FLIGHT_DEBUG is set
[fw/altos]
/
src
/
drivers
/
ao_pca9922.c
diff --git
a/src/drivers/ao_pca9922.c
b/src/drivers/ao_pca9922.c
index dc006f55eaf47311a3a1025b821b0cb5f2e3c522..d376b9681194fc94d00d394781f74b19a75ace98 100644
(file)
--- a/
src/drivers/ao_pca9922.c
+++ b/
src/drivers/ao_pca9922.c
@@
-30,9
+30,12
@@
ao_led_apply(void)
/* Don't try the SPI bus during initialization */
if (!ao_cur_task)
return;
/* Don't try the SPI bus during initialization */
if (!ao_cur_task)
return;
- ao_spi_get_bit(AO_PCA9922_CS_PORT, AO_PCA9922_CS_PIN, AO_PCA9922_CS, AO_PCA9922_SPI_BUS, AO_SPI_SPEED_FAST);
+ ao_spi_get(AO_PCA9922_SPI_BUS);
+ ao_spi_set_speed(AO_PCA9922_SPI_BUS,AO_SPI_SPEED_FAST);
+ AO_PCA9922_CS = 1;
ao_spi_send(&ao_led_state, 1, AO_PCA9922_SPI_BUS);
ao_spi_send(&ao_led_state, 1, AO_PCA9922_SPI_BUS);
- ao_spi_put_bit(AO_PCA9922_CS_PORT, AO_PCA9922_CS_PIN, AO_PCA9922_CS, AO_PCA9922_SPI_BUS);
+ AO_PCA9922_CS = 0;
+ ao_spi_put(AO_PCA9922_SPI_BUS);
}
void
}
void
@@
-56,6
+59,13
@@
ao_led_set(uint8_t colors)
ao_led_apply();
}
ao_led_apply();
}
+void
+ao_led_set_mask(uint8_t colors, uint8_t mask)
+{
+ ao_led_state = (ao_led_state & ~mask) | (colors & mask);
+ ao_led_apply();
+}
+
void
ao_led_toggle(uint8_t colors)
{
void
ao_led_toggle(uint8_t colors)
{
@@
-74,5
+84,6
@@
ao_led_for(uint8_t colors, uint16_t ticks) __reentrant
void
ao_led_init(uint8_t enable)
{
void
ao_led_init(uint8_t enable)
{
+ (void) enable;
ao_enable_output(AO_PCA9922_CS_PORT, AO_PCA9922_CS_PIN, AO_PCA9922_CS, 1);
}
ao_enable_output(AO_PCA9922_CS_PORT, AO_PCA9922_CS_PIN, AO_PCA9922_CS, 1);
}