1
0
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:
Werner Almesberger
2011-06-05 21:08:48 -03:00
parent 87e06b4e4e
commit 1a3f169e89
9 changed files with 33 additions and 19 deletions

View File

@@ -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;
}

View File

@@ -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;
}

View File

@@ -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;
}

View File

@@ -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:

View File

@@ -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);