diff options
| author | Bdale Garbee <bdale@gag.com> | 2016-09-05 20:59:11 -0600 | 
|---|---|---|
| committer | Bdale Garbee <bdale@gag.com> | 2016-09-05 20:59:11 -0600 | 
| commit | c0ad087008856cfc2233b977abfc3f1dcbaccdcc (patch) | |
| tree | adc46abc430793112858ce5d1822d3fe0a395e71 /src/drivers/ao_cc1200.c | |
| parent | 148b013dd29c26920ddfb53449ed4d8cc5a4b5ee (diff) | |
| parent | 4fdf8ca9ca1cd5a84b03bd7a03c5806af64b413d (diff) | |
Merge branch 'master' into branch-1.6
Diffstat (limited to 'src/drivers/ao_cc1200.c')
| -rw-r--r-- | src/drivers/ao_cc1200.c | 52 | 
1 files changed, 34 insertions, 18 deletions
| diff --git a/src/drivers/ao_cc1200.c b/src/drivers/ao_cc1200.c index cd85f208..2bc99734 100644 --- a/src/drivers/ao_cc1200.c +++ b/src/drivers/ao_cc1200.c @@ -3,7 +3,8 @@   *   * This program is free software; you can redistribute it and/or modify   * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; version 2 of the License. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version.   *   * This program is distributed in the hope that it will be useful, but   * WITHOUT ANY WARRANTY; without even the implied warranty of @@ -802,18 +803,12 @@ ao_radio_rdf_abort(void)  	ao_wakeup(&ao_radio_wake);  } -static void -ao_radio_test_cmd(void) +static uint8_t radio_on; + +void +ao_radio_test_on(void)  { -	uint8_t	mode = 2; -	static uint8_t radio_on; -	ao_cmd_white(); -	if (ao_cmd_lex_c != '\n') { -		ao_cmd_decimal(); -		mode = (uint8_t) ao_cmd_lex_u32; -	} -	mode++; -	if ((mode & 2) && !radio_on) { +	if (!radio_on) {  #if HAS_MONITOR  		ao_monitor_disable();  #endif @@ -836,12 +831,12 @@ ao_radio_test_cmd(void)  #endif  		radio_on = 1;  	} -	if (mode == 3) { -		printf ("Hit a character to stop..."); flush(); -		getchar(); -		putchar('\n'); -	} -	if ((mode & 1) && radio_on) { +} + +void +ao_radio_test_off(void) +{ +	if (radio_on) {  		ao_radio_idle();  		ao_radio_put();  		radio_on = 0; @@ -854,6 +849,27 @@ ao_radio_test_cmd(void)  	}  } +static void +ao_radio_test_cmd(void) +{ +	uint8_t	mode = 2; +	ao_cmd_white(); +	if (ao_cmd_lex_c != '\n') { +		ao_cmd_decimal(); +		mode = (uint8_t) ao_cmd_lex_u32; +	} +	mode++; +	if ((mode & 2)) +		ao_radio_test_on(); +	if (mode == 3) { +		printf ("Hit a character to stop..."); flush(); +		getchar(); +		putchar('\n'); +	} +	if ((mode & 1)) +		ao_radio_test_off(); +} +  void  ao_radio_send(const void *d, uint8_t size)  { | 
