projects
/
fw
/
altos
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge remote-tracking branch 'mjb/altoslib_mjb'
[fw/altos]
/
src
/
drivers
/
ao_74hc497.c
diff --git
a/src/drivers/ao_74hc497.c
b/src/drivers/ao_74hc497.c
index 93c544c34cab9e0d03c92a2d567b2ad9640e4511..4c13ee71e1a534c86cfe6ccf99ca0d273143799f 100644
(file)
--- a/
src/drivers/ao_74hc497.c
+++ b/
src/drivers/ao_74hc497.c
@@
-28,13
+28,28
@@
ao_74hc497_read(void)
{
static __xdata state;
ao_spi_get_bit(AO_74HC497_CS_PORT, AO_74HC497_CS_PIN, AO_74HC497_CS, AO_74HC497_SPI_BUS, AO_SPI_SPEED_FAST);
{
static __xdata state;
ao_spi_get_bit(AO_74HC497_CS_PORT, AO_74HC497_CS_PIN, AO_74HC497_CS, AO_74HC497_SPI_BUS, AO_SPI_SPEED_FAST);
- ao_spi_
send
(&state, 1, AO_74HC497_SPI_BUS);
+ ao_spi_
recv
(&state, 1, AO_74HC497_SPI_BUS);
ao_spi_put_bit(AO_74HC497_CS_PORT, AO_74HC497_CS_PIN, AO_74HC497_CS, AO_74HC497_SPI_BUS);
return state;
}
ao_spi_put_bit(AO_74HC497_CS_PORT, AO_74HC497_CS_PIN, AO_74HC497_CS, AO_74HC497_SPI_BUS);
return state;
}
+static void
+ao_74hc497_cmd(void)
+{
+ uint8_t v;
+
+ v = ao_74hc497_read();
+ printf ("Switches: 0x%02x\n", v);
+}
+
+static const struct ao_cmds ao_74hc497_cmds[] = {
+ { ao_74hc497_cmd, "L\0Show 74hc497" },
+ { 0, NULL }
+};
+
void
ao_74hc497_init(void)
{
ao_enable_output(AO_74HC497_CS_PORT, AO_74HC497_CS_PIN, AO_74HC497_CS, 1);
void
ao_74hc497_init(void)
{
ao_enable_output(AO_74HC497_CS_PORT, AO_74HC497_CS_PIN, AO_74HC497_CS, 1);
+ ao_cmd_register(&ao_74hc497_cmds[0]);
}
}