コード例 #1
0
ファイル: sensors.c プロジェクト: Beliad/OmniBOT
/**
 * Reset all ports.
 */
void
sp_init(void)
{
  int i;

  for (i = 0; i < N_SENSORS; i++)
    sp_reset(i);
}
コード例 #2
0
ファイル: hs.c プロジェクト: geirhei/nxt-robot
void hs_disable(void)
{
  // Turn off the device and make the pins available for other uses
  *AT91C_PMC_PCDR = (1 << AT91C_ID_US0);
  
  sp_reset(RS485_PORT);

}
コード例 #3
0
ファイル: i2c.c プロジェクト: alexcash/Robotics-Solutions
// Disable an I2C port
void
i2c_disable(int port)
{
  if (port >= 0 && port < I2C_N_PORTS && i2c_ports[port]) {
    i2c_port *p = i2c_ports[port];

    U32 pinmask = p->scl_pin | p->sda_pin;
    *AT91C_PIOA_ODR = pinmask;
    system_free((byte *)p);
    i2c_ports[port] = NULL;
    build_active_list();
    sp_reset(port);
  }
}
コード例 #4
0
ファイル: iface.c プロジェクト: narenas/nx-libs
FUNCTION fw_reset()
{
sp_reset();
}
コード例 #5
0
ファイル: test6.c プロジェクト: JHUAPL/kvspool
/******************************************************************************
 * the test itself
 *****************************************************************************/
int main(int argc, char *argv[]) {

  char *dir = mktmpdir();

  void *sp = kv_spoolwriter_new(dir);
  if (!sp) exit(-1);

  void *set = kv_set_new();
  kv_adds(set, "hello", "again");
  kv_adds(set, "second", "life");
  kv_spool_write(sp,set);

  /* scan spool to validate expected file creation */
  scan_spool(0);

  /* replace a value in the set, spool the set out. it should append
   * to the spool file previously created. */
  printf("spooling second frame\n");
  kv_adds(set, "second", "time");
  kv_spool_write(sp,set);
  kv_spoolwriter_free(sp);

  /* verify spool has updated according to expectation */
  scan_spool(0);

  printf("clear set\n");
  kv_set_clear(set);
  /* loop over them */
  kv_t *kv = NULL;
  while ( (kv = kv_next(set, kv))) {
    printf("key [%.*s], val [%.*s]\n", kv->klen, kv->key, kv->vlen, kv->val);
  }

  printf("reading from spool\n");
  /* now try reading the spool */
  sp = kv_spoolreader_new(dir);
  int rc;
  while ( (rc=kv_spool_read(sp, set, 0)) == 1) {
    printf("reader read frame:\n");
    kv = NULL;
    while ( (kv = kv_next(set, kv))) {
      printf(" key [%.*s], val [%.*s]\n", kv->klen, kv->key, kv->vlen, kv->val);
    }
  }
  printf("kv_spool_read returned %d\n", rc);
  kv_spoolreader_free(sp);

  /* now reset it and read again */
  printf("resetting the spool directory for another round of reading\n");
  sp_reset(dir);
  sp = kv_spoolreader_new(dir);
  while ( (rc=kv_spool_read(sp, set, 0)) == 1) {
    printf("reader read frame:\n");
    kv = NULL;
    while ( (kv = kv_next(set, kv))) {
      printf(" key [%.*s], val [%.*s]\n", kv->klen, kv->key, kv->vlen, kv->val);
    }
  }
  printf("kv_spool_read returned %d\n", rc);
  kv_spoolreader_free(sp);

  kv_set_free(set);
  scan_spool(1);
  return 0;
}