コード例 #1
0
ファイル: cmd.c プロジェクト: ParaBump/Parallax-ESP
void request(char *fmt, ...)
{
    char buf[100], *p = buf;
    
    va_list ap;
    va_start(ap, fmt);
    vsnprintf(buf, sizeof(buf), fmt, ap);
    va_end(ap);
    
    fdserial_txChar(wifi, CMD_START);
    while (*p != '\0')
        fdserial_txChar(wifi, *p++);
    fdserial_txChar(wifi, '\r');
}
コード例 #2
0
int main()
{
  //simpleterm_close(); //close default terminal, I want to use those pins
                      //if the default uart pins are not b nused, this isn't needed
                      
  fdserial *d = fdserial_open(RX_PIN, TX_PIN,0, BAUD);
  
  while(1)                                    
  {
     fdserial_txChar(d, fdserial_rxChar(d));
  }
}
コード例 #3
0
char *dhb10_com(char *myConfigStr)
{
  memset(dhb10_reply, 0, DHB10_LEN);
  char *reply = dhb10_reply;
  #ifdef ARLO_DEBUG
    //dprint(term, "dhb10_com(%s, ", myConfigStr);
  #endif
  
  if(!ard_opened) drive_open();

  int ca = 0, cta = 0;
  
  //fdserial_txChar(ard_dhb10_arlo, '\r');

  #ifdef HALF_DUPLEX
    print("dhb10_com.c before fdserial_rxFlush(ard_dhb10_arlo); \n");
  #endif  

  fdserial_rxFlush(ard_dhb10_arlo);

  #ifdef HALF_DUPLEX
    print("dhb10_com.c after fdserial_rxFlush(ard_dhb10_arlo); \n");
  #endif  

  int i = 0;
  
  while(1) 
  {
    fdserial_txChar(ard_dhb10_arlo, myConfigStr[i]);
    if((myConfigStr[i] == '\r') || (myConfigStr[i] == 0)) break;
    i++;
  }
  if((i == 0) && (myConfigStr[i] == '\r'))
  {
    return 0;
  }    
  #ifdef ARLO_DEBUG
    //dprint(term, "i = %d\n", i);
  #endif  
  i = 0;
  #ifdef ARLO_DEBUG
    for(int i = 0; i < 32; i++)                                    // 32 Needs #define
    {
      if(myConfigStr[i] == '\r')
      {
        dprint(term, "\\r\n");
        break;
      }        
      else if(myConfigStr[i] >= ' ' && myConfigStr[i] <= 'z')
      {
        writeChar(term, myConfigStr[i]);
      } 
      else
      {
        dprint(term, "[%d]", myConfigStr[i]);
      } 
    }         
  #endif 

  i = 0;
  int t = CNT;
  int dt = CLKFREQ;
  while(1)
  {
    cta = fdserial_rxCount(ard_dhb10_arlo);
    if(cta)
    {
      ca = readChar(ard_dhb10_arlo);
      dhb10_reply[i] = ca;
      #ifdef ARLO_DEBUG
        if(ca == '\r')
        {
          dprint(term, "[\\r]\n");
        }        
        else if(ca >= ' ' && ca <= 'z')
        {
          writeChar(term, ca);
        } 
        else
        {
          dprint(term, "[%d]", ca);
        } 
      #endif  
      if(dhb10_reply[i] == '\r')
      {
        reply = dhb10_reply;
        break;
      }  
      i++;
    }
    if(CNT - t > dt)
    {
      #ifdef ARLO_DEBUG
        dprint(term, "Error, no reply from DHB-10!\n");
      #endif
      strcpy(reply, "Error, no reply from DHB-10!\n");
      break;
    }  
  }
  return reply;    
}
コード例 #4
0
ファイル: cmd.c プロジェクト: ParaBump/Parallax-ESP
void requestPayload(char *buf, int len)
{
    while (--len >= 0)
        fdserial_txChar(wifi, *buf++);
}