projects
/
fw
/
altos
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add ao_wake_task and ao_exit
[fw/altos]
/
src
/
ao.h
diff --git
a/src/ao.h
b/src/ao.h
index 8e34255830ab7ca7032a3460beb8833045748e49..132711091de385a36a0abe562cb570fbf883a5b6 100644
(file)
--- a/
src/ao.h
+++ b/
src/ao.h
@@
-63,6
+63,10
@@
ao_sleep(__xdata void *wchan);
void
ao_wakeup(__xdata void *wchan);
void
ao_wakeup(__xdata void *wchan);
+/* Wake up a specific task */
+void
+ao_wake_task(__xdata struct ao_task *task);
+
/* Yield the processor to another task */
void
ao_yield(void) _naked;
/* Yield the processor to another task */
void
ao_yield(void) _naked;
@@
-71,6
+75,10
@@
ao_yield(void) _naked;
void
ao_add_task(__xdata struct ao_task * task, void (*start)(void), __code char *name) __reentrant;
void
ao_add_task(__xdata struct ao_task * task, void (*start)(void), __code char *name) __reentrant;
+/* Terminate the current task */
+void
+ao_exit(void);
+
/* Dump task info to console */
void
ao_task_info(void);
/* Dump task info to console */
void
ao_task_info(void);
@@
-668,7
+676,8
@@
void
ao_serial_putchar(char c) __critical;
#define AO_SERIAL_SPEED_4800 0
ao_serial_putchar(char c) __critical;
#define AO_SERIAL_SPEED_4800 0
-#define AO_SERIAL_SPEED_57600 1
+#define AO_SERIAL_SPEED_9600 1
+#define AO_SERIAL_SPEED_57600 2
void
ao_serial_set_speed(uint8_t speed);
void
ao_serial_set_speed(uint8_t speed);
@@
-777,6
+786,9
@@
struct ao_telemetry {
void
ao_telemetry_set_interval(uint16_t interval);
void
ao_telemetry_set_interval(uint16_t interval);
+void
+ao_rdf_set(uint8_t rdf);
+
void
ao_telemetry_init(void);
void
ao_telemetry_init(void);
@@
-796,6
+808,12
@@
struct ao_radio_recv {
void
ao_radio_recv(__xdata struct ao_radio_recv *recv) __reentrant;
void
ao_radio_recv(__xdata struct ao_radio_recv *recv) __reentrant;
+void
+ao_radio_rdf(int ms);
+
+void
+ao_radio_rdf_abort(void);
+
void
ao_radio_init(void);
void
ao_radio_init(void);
@@
-851,7
+869,7
@@
ao_igniter_init(void);
*/
#define AO_CONFIG_MAJOR 1
*/
#define AO_CONFIG_MAJOR 1
-#define AO_CONFIG_MINOR
0
+#define AO_CONFIG_MINOR
1
struct ao_config {
uint8_t major;
struct ao_config {
uint8_t major;
@@
-860,6
+878,7
@@
struct ao_config {
int16_t accel_zero_g;
uint8_t radio_channel;
char callsign[AO_MAX_CALLSIGN + 1];
int16_t accel_zero_g;
uint8_t radio_channel;
char callsign[AO_MAX_CALLSIGN + 1];
+ uint8_t apogee_delay;
};
extern __xdata struct ao_config ao_config;
};
extern __xdata struct ao_config ao_config;