mirror of
git://projects.qi-hardware.com/ben-wpan.git
synced 2025-04-21 12:27:27 +03:00
libatrf: add option to send a pulse with atrf_slp_tr
- include/atrf.h (atrf_slp_tr), lib/atrf.c (atrf_slp_tr): added pulse argument - atrf-proxy/PROTOCOL, atrf-proxy/atrf-proxy.c (cmd_two, cmd_more): added second argument to SLP_TR command - atrf-xtal/atben.c (atben_sample), lib/cwtest.c (cw_test_end): updated for API change - lib/driver.h (struct atrf_driver): added "pulse" argument to slp_tr - lib/atben.c (atben_slp_tr), lib/atnet.c (atnet_slp_tr): added support for pulse mode
This commit is contained in:
@@ -355,7 +355,7 @@ static uint8_t atben_sram_read(void *handle, uint8_t addr)
|
||||
/* ----- SLP_TR ------------------------------------------------------------ */
|
||||
|
||||
|
||||
static void atben_slp_tr(void *handle, int on)
|
||||
static void atben_slp_tr(void *handle, int on, int pulse)
|
||||
{
|
||||
struct atben_dsc *dsc = handle;
|
||||
|
||||
@@ -363,6 +363,12 @@ static void atben_slp_tr(void *handle, int on)
|
||||
PDDATS = SLP_TR;
|
||||
else
|
||||
PDDATC = SLP_TR;
|
||||
if (!pulse)
|
||||
return;
|
||||
if (on)
|
||||
PDDATC = SLP_TR;
|
||||
else
|
||||
PDDATS = SLP_TR;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -266,13 +266,13 @@ static void atnet_test_mode(void *handle)
|
||||
}
|
||||
|
||||
|
||||
static void atnet_slp_tr(void *handle, int on)
|
||||
static void atnet_slp_tr(void *handle, int on, int pulse)
|
||||
{
|
||||
struct atnet_dsc *dsc = handle;
|
||||
|
||||
if (dsc->error)
|
||||
return;
|
||||
if (dialog(dsc, "SLP_TR %d", on) < 0)
|
||||
if (dialog(dsc, "SLP_TR %d %d", on, pulse) < 0)
|
||||
dsc->error = 1;
|
||||
}
|
||||
|
||||
|
||||
@@ -226,11 +226,11 @@ int atrf_test_mode(struct atrf_dsc *dsc)
|
||||
}
|
||||
|
||||
|
||||
int atrf_slp_tr(struct atrf_dsc *dsc, int on)
|
||||
int atrf_slp_tr(struct atrf_dsc *dsc, int on, int pulse)
|
||||
{
|
||||
if (!dsc->driver->slp_tr)
|
||||
return 0;
|
||||
dsc->driver->slp_tr(dsc->handle, on);
|
||||
dsc->driver->slp_tr(dsc->handle, on, pulse);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
@@ -148,9 +148,9 @@ void cw_test_end(struct atrf_dsc *dsc)
|
||||
break;
|
||||
case artf_at86rf231:
|
||||
usleep(2); /* table 7-1: tTR12(typ) = 1 us */
|
||||
atrf_slp_tr(dsc, 1);
|
||||
atrf_slp_tr(dsc, 1, 0);
|
||||
usleep(10); /* table 7-1: tTR3(typ) doesn't really apply */
|
||||
atrf_slp_tr(dsc, 0);
|
||||
atrf_slp_tr(dsc, 0, 0);
|
||||
usleep(500); /* table 7-1: tTR2(typ) = 380 */
|
||||
break;
|
||||
default:
|
||||
|
||||
@@ -27,7 +27,7 @@ struct atrf_driver {
|
||||
void (*reset)(void *dsc);
|
||||
void (*reset_rf)(void *dsc);
|
||||
void (*test_mode)(void *dsc);
|
||||
void (*slp_tr)(void *dsc, int on);
|
||||
void (*slp_tr)(void *dsc, int on, int pulse);
|
||||
int (*set_clkm)(void *dsc, int mhz);
|
||||
void (*reg_write)(void *dsc, uint8_t reg, uint8_t value);
|
||||
uint8_t (*reg_read)(void *dsc, uint8_t reg);
|
||||
|
||||
Reference in New Issue
Block a user