projects
/
fw
/
altos
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
[fw/altos]
/
src
/
drivers
/
ao_btm.c
diff --git
a/src/drivers/ao_btm.c
b/src/drivers/ao_btm.c
index 3591f8f25b1ca3f478010e9e537acf2b4f8fa718..b82fb999fe8957536c42bab002ebeda57161486b 100644
(file)
--- a/
src/drivers/ao_btm.c
+++ b/
src/drivers/ao_btm.c
@@
-29,7
+29,7
@@
#define ao_serial_btm_drain ao_serial1_drain
#endif
#define ao_serial_btm_drain ao_serial1_drain
#endif
-
int8_t
ao_btm_stdio;
+
uint8_t
ao_btm_stdio;
uint8_t ao_btm_connected;
#define BT_DEBUG 0
uint8_t ao_btm_connected;
#define BT_DEBUG 0
@@
-76,6
+76,7
@@
ao_btm_dump(void)
{
int i;
char c;
{
int i;
char c;
+ uint16_t r;
for (i = 0; i < ao_btm_ptr; i++) {
c = ao_btm_buffer[i];
for (i = 0; i < ao_btm_ptr; i++) {
c = ao_btm_buffer[i];
@@
-85,8
+86,8
@@
ao_btm_dump(void)
putchar(ao_btm_buffer[i]);
}
putchar('\n');
putchar(ao_btm_buffer[i]);
}
putchar('\n');
- ao_cmd_decimal();
- if (ao_cmd_status == ao_cmd_success &&
ao_cmd_lex_i
)
+
r =
ao_cmd_decimal();
+ if (ao_cmd_status == ao_cmd_success &&
r
)
ao_btm_ptr = 0;
ao_cmd_status = ao_cmd_success;
}
ao_btm_ptr = 0;
ao_cmd_status = ao_cmd_success;
}
@@
-94,13
+95,17
@@
ao_btm_dump(void)
static void
ao_btm_speed(void)
{
static void
ao_btm_speed(void)
{
- ao_cmd_decimal();
- if (ao_cmd_lex_u32 == 57600)
+ switch (ao_cmd_decimal()) {
+ case 57600:
ao_serial_btm_set_speed(AO_SERIAL_SPEED_57600);
ao_serial_btm_set_speed(AO_SERIAL_SPEED_57600);
- else if (ao_cmd_lex_u32 == 19200)
+ break;
+ case 19200:
ao_serial_btm_set_speed(AO_SERIAL_SPEED_19200);
ao_serial_btm_set_speed(AO_SERIAL_SPEED_19200);
- else
+ break;
+ default:
ao_cmd_status = ao_cmd_syntax_error;
ao_cmd_status = ao_cmd_syntax_error;
+ break;
+ }
}
static uint8_t ao_btm_enable;
}
static uint8_t ao_btm_enable;
@@
-182,7
+187,7
@@
ao_btm_getchar(void)
* it after a few characters.
*/
* it after a few characters.
*/
-uint8_t
+
static
uint8_t
ao_btm_get_line(void)
{
uint8_t ao_btm_reply_len = 0;
ao_btm_get_line(void)
{
uint8_t ao_btm_reply_len = 0;
@@
-192,7
+197,7
@@
ao_btm_get_line(void)
while ((c = ao_btm_getchar()) != AO_READ_AGAIN) {
ao_btm_log_in_char(c);
if (ao_btm_reply_len < sizeof (ao_btm_reply))
while ((c = ao_btm_getchar()) != AO_READ_AGAIN) {
ao_btm_log_in_char(c);
if (ao_btm_reply_len < sizeof (ao_btm_reply))
- ao_btm_reply[ao_btm_reply_len++] = c;
+ ao_btm_reply[ao_btm_reply_len++] =
(char)
c;
if (c == '\r' || c == '\n')
break;
}
if (c == '\r' || c == '\n')
break;
}
@@
-204,8
+209,8
@@
ao_btm_get_line(void)
/*
* Drain the serial port completely
*/
/*
* Drain the serial port completely
*/
-void
-ao_btm_drain()
+
static
void
+ao_btm_drain(
void
)
{
while (ao_btm_get_line())
;
{
while (ao_btm_get_line())
;
@@
-214,7
+219,7
@@
ao_btm_drain()
/*
* Set the stdio echo for the bluetooth link
*/
/*
* Set the stdio echo for the bluetooth link
*/
-void
+
static
void
ao_btm_echo(uint8_t echo)
{
ao_stdios[ao_btm_stdio].echo = echo;
ao_btm_echo(uint8_t echo)
{
ao_stdios[ao_btm_stdio].echo = echo;
@@
-225,7
+230,7
@@
ao_btm_echo(uint8_t echo)
* can't keep up with 57600 baud
*/
* can't keep up with 57600 baud
*/
-void
+
static
void
ao_btm_putchar(char c)
{
ao_btm_log_out_char(c);
ao_btm_putchar(char c)
{
ao_btm_log_out_char(c);
@@
-237,7
+242,7
@@
ao_btm_putchar(char c)
* Wait for the bluetooth device to return
* status from the previously executed command
*/
* Wait for the bluetooth device to return
* status from the previously executed command
*/
-
uint8_
t
+
static in
t
ao_btm_wait_reply(void)
{
for (;;) {
ao_btm_wait_reply(void)
{
for (;;) {
@@
-251,7
+256,7
@@
ao_btm_wait_reply(void)
}
}
}
}
-void
+
static
void
ao_btm_string(const char *cmd)
{
char c;
ao_btm_string(const char *cmd)
{
char c;
@@
-260,7
+265,7
@@
ao_btm_string(const char *cmd)
ao_btm_putchar(c);
}
ao_btm_putchar(c);
}
-
uint8_
t
+
static in
t
ao_btm_cmd(const char *cmd)
{
ao_btm_drain();
ao_btm_cmd(const char *cmd)
{
ao_btm_drain();
@@
-277,7
+282,7
@@
ao_btm_cmd(const char *cmd)
return ao_btm_wait_reply();
}
return ao_btm_wait_reply();
}
-
uint8_
t
+
static in
t
ao_btm_set_name(void)
{
char sn[8];
ao_btm_set_name(void)
{
char sn[8];
@@
-289,14
+294,14
@@
ao_btm_set_name(void)
*--s = '\r';
n = ao_serial_number;
do {
*--s = '\r';
n = ao_serial_number;
do {
- *--s =
'0' + n % 10
;
+ *--s =
(uint8_t) ('0' + n % 10)
;
} while (n /= 10);
while ((c = *s++))
ao_btm_putchar(c);
return ao_btm_wait_reply();
}
} while (n /= 10);
while ((c = *s++))
ao_btm_putchar(c);
return ao_btm_wait_reply();
}
-uint8_t
+
static
uint8_t
ao_btm_try_speed(uint8_t speed)
{
ao_serial_btm_set_speed(speed);
ao_btm_try_speed(uint8_t speed)
{
ao_serial_btm_set_speed(speed);
@@
-324,8
+329,8
@@
ao_btm_try_speed(uint8_t speed)
#define BT_CC1111 1
#endif
#define BT_CC1111 1
#endif
-void
-ao_btm_check_link()
+
static
void
+ao_btm_check_link(
void
)
{
#if BT_CC1111
ao_arch_critical(
{
#if BT_CC1111
ao_arch_critical(
@@
-342,7
+347,7
@@
ao_btm_check_link()
);
#else
ao_arch_block_interrupts();
);
#else
ao_arch_block_interrupts();
- if (ao_gpio_get(AO_BTM_INT_PORT, AO_BTM_INT_PIN
, AO_BTM_INT
) == 0) {
+ if (ao_gpio_get(AO_BTM_INT_PORT, AO_BTM_INT_PIN) == 0) {
ao_btm_connected = 1;
} else {
ao_btm_connected = 0;
ao_btm_connected = 1;
} else {
ao_btm_connected = 0;
@@
-357,7
+362,7
@@
struct ao_task ao_btm_task;
* A thread to initialize the bluetooth device and
* hang around to blink the LED when connected
*/
* A thread to initialize the bluetooth device and
* hang around to blink the LED when connected
*/
-void
+
static
void
ao_btm(void)
{
#ifdef AO_BTM_INT_PORT
ao_btm(void)
{
#ifdef AO_BTM_INT_PORT
@@
-450,7
+455,7
@@
ao_btm_init (void)
ao_serial_btm_set_speed(AO_SERIAL_SPEED_19200);
#ifdef AO_BTM_RESET_PORT
ao_serial_btm_set_speed(AO_SERIAL_SPEED_19200);
#ifdef AO_BTM_RESET_PORT
- ao_enable_output(AO_BTM_RESET_PORT,AO_BTM_RESET_PIN,
AO_BTM_RESET,
0);
+ ao_enable_output(AO_BTM_RESET_PORT,AO_BTM_RESET_PIN,0);
#endif
#ifdef AO_BTM_INT_PORT
#endif
#ifdef AO_BTM_INT_PORT