/*************************************************************************
UART0发送  用于串口调试助手命令调试pid等参数
*************************************************************************/
void Debugmessgae()
{
  LPLD_UART_PutCharArr(UART0,"Speed_PWM = ", 12);
  SendDec(Speed_PWM);
  LPLD_UART_PutChar(UART0,' ');
  LPLD_UART_PutCharArr(UART0,"Speed_Out = ", 12);//期待脉冲
  SendDec(Speed_Out);
  LPLD_UART_PutChar(UART0,' ');
  LPLD_UART_PutCharArr(UART0,"Speed_temp = ", 13);//下次启动时脉冲
  SendDec(Speed_temp);
  LPLD_UART_PutChar(UART0,' ');
  LPLD_UART_PutCharArr(UART0,"\r\n",2);
  LPLD_UART_PutCharArr(UART0,"KP = ",5);
  SendDec(Kp);
  LPLD_UART_PutChar(UART0,' ');
  LPLD_UART_PutCharArr(UART0,"KD = ",5);
  SendDec(Kd);
  LPLD_UART_PutChar(UART0,' ');
  LPLD_UART_PutCharArr(UART0,"SP = ",5);
  SendDec(Sp);
  LPLD_UART_PutChar(UART0,' ');
  LPLD_UART_PutCharArr(UART0,"Sd = ",5);
  SendDec(Sd);
  LPLD_UART_PutChar(UART0,' ');
  LPLD_UART_PutCharArr(UART0,"Si = ",5);
  SendDec(count);
  LPLD_UART_PutChar(UART0,' ');
  LPLD_UART_PutCharArr(UART0,"\r\n",2);
}
Example #2
0
//向服务器发送数据
uint8 SQC_ME3000_Send(uint8 * msg,uint16 len)
{
  uint8 cmd[20];
  gprs_pib.Rxflag = 0;
  sprintf(cmd,"AT+ZIPSEND=1,%d\r\n",len);
  LPLD_UART_PutCharArr(UART5,cmd,strlen(cmd));
  while(1)
  {
    delay();
    if(gprs_pib.Rxflag == 3)
    {
      gprs_pib.Rxflag = 0;
      LPLD_UART_PutCharArr(UART5,msg,len);
      LPLD_UART_PutChar(UART5,0x0D);
      LPLD_UART_PutChar(UART5,0x0A);
    }
    if(gprs_pib.Rxflag == 2)
    {
      if(strstr(gprs_pib.Rxbuf,"+ZIPSEND:OK") != 0)
        return TRUE;
      else
        return FALSE;
    }
  }
}
Example #3
0
//nrf24l01接收中断
void portc_handle()
{  
  printf("Nrf24L01 rev Succeed!!\r\n"); 
  LPLD_Nrf24L01_RecvFrame(rx_buf, NRF24L01_PLOAD_LEN);
  LPLD_UART_PutCharArr(UART5, (char*)rx_buf, NRF24L01_PLOAD_LEN);//通过串口5打印输出值
  printf("\r\n");
}
Example #4
0
void uart4_bluetooth_init(void)
{
	uart4_init_struct.UART_Uartx = UART4; //使用UART5
	uart4_init_struct.UART_BaudRate = 115200; //设置波特率115200
	uart4_init_struct.UART_RxPin = PTE25;  //接收引脚为PTE25
	uart4_init_struct.UART_TxPin = PTE24;  //发送引脚为PTE24
	uart4_init_struct.UART_RxIntEnable = TRUE;  //使能接收中断
	uart4_init_struct.UART_RxIsr = uart4_isr;  //设置接收中断函数	
	//初始化UART
	LPLD_UART_Init(uart4_init_struct);
	LPLD_UART_EnableIrq(uart4_init_struct);
	LPLD_UART_PutCharArr(UART4, "Initial uart4 successful.\r\n", 29);
}
Example #5
0
//关闭tcp连接
uint8 SQC_ME3000_Disconnect()
{
  uint8 cmd[20];
  gprs_pib.Rxflag = 0;
  sprintf(cmd,"AT+ZIPCLOSE=1\r\n");
  LPLD_UART_PutCharArr(UART5,cmd,strlen(cmd));
  while(1)
  {
    delay();
    if(gprs_pib.Rxflag == 2)
    {
      if(strstr(gprs_pib.Rxbuf,"+ZIPCLOSE:OK") != 0)
        return TRUE;
      else
        return FALSE;
    }
  }
}
Example #6
0
//查询tcp连接状态
uint8 SQC_ME3000_Tcpstat()
{
  uint8 cmd[20];
  gprs_pib.Rxflag = 0;
  sprintf(cmd,"AT+ZIPSTATUS=1\r\n");
  LPLD_UART_PutCharArr(UART5,cmd,strlen(cmd));
  while(1)
  {
    delay();
    if(gprs_pib.Rxflag == 2)
    {
      if(strstr(gprs_pib.Rxbuf,"+ZIPSTATUS:ESTABLISHED") != 0)
        return TRUE;
      else
        return FALSE;
    }
  }
}
Example #7
0
//使用tcp连接服务器
uint8 SQC_ME3000_Connect(struct _in_addr addr)
{
  uint8 cmd[50];
  gprs_pib.Rxflag = 0;
  sprintf(cmd,"AT+ZIPSETUP=1,%d.%d.%d.%d,%d\r\n",addr.s_addr[0],addr.s_addr[1],addr.s_addr[2],addr.s_addr[3],addr.s_port);
  LPLD_UART_PutCharArr(UART5,cmd,strlen(cmd));
  while(1)
  {
    delay();
    if(gprs_pib.Rxflag == 2)
    {
      if(strstr(gprs_pib.Rxbuf,"+ZIPSETUP:CONNECTED") != 0)
        return TRUE;
      else
        return FALSE;
    }
  }
}
Example #8
0
//关闭gprs网络
uint8 SQC_ME3000_Close()
{
  uint8 cmd[20];
  gprs_pib.Rxflag = 0;
  sprintf(cmd,"AT+ZPPPCLOSE\r\n");
  LPLD_UART_PutCharArr(UART5,cmd,strlen(cmd));
  while(1)
  {
    delay();
    if(gprs_pib.Rxflag == 2)
    {
      if(strstr(gprs_pib.Rxbuf,"+ZPPPCLOSE:OK") != 0
         || strstr(gprs_pib.Rxbuf,"+ZPPPCLOSE:DISCONNECTED") != 0)
        return TRUE;
      else
        return FALSE;
    }
  }
}
Example #9
0
//打开gprs网络
uint8 SQC_ME3000_Open()
{
  uint8 cmd[20];
  gprs_pib.Rxflag = 0;
  sprintf(cmd,"AT+ZPPPOPEN\r\n");
  LPLD_UART_PutCharArr(UART5,cmd,strlen(cmd));
  while(1)
  {
    delay();delay();
    if(gprs_pib.Rxflag == 2)
    {
      if(strstr(gprs_pib.Rxbuf,"+ZPPPOPEN:CONNECTED") != 0
         || strstr(gprs_pib.Rxbuf,"+ZPPPOPEN:ESTABLISHED") != 0)
        return TRUE;
      else
        return FALSE;
    }
  }
}
void main (void)
{
  char i;
  
  gpio_init ();
  
  uart_init();
  LPLD_UART_PutCharArr(UART0, "Input something:\r\n", 20);
  
  while(1)
  {
      if (flag)
      {
        for (i = 20; i < 25; i ++)
         LPLD_GPIO_Toggle_b(PTB, i);
        flag = 0;
      }
  } 
  
}
Example #11
0
void pit_isr1() //100ms中断,系统板闪灯
{
	TIME_PASSED ++;
	if (__start_beep >= 0) {
		yesbeep();
		__start_beep --;
	}
	else nobeep();
	//if (!GetCmdAction()) is_enabled = 0;
	//unsigned char keyCode=scan_switch();
	LPLD_GPIO_Toggle_b(PTA, 15);
	
	// Send cur_point and direction to other car
	static char __bluetooth_buf[3] = {0};
	extern enum DIRECTION __actor_head_direction;
	extern struct Point __actor_cur_point;
	__bluetooth_buf[0] = 0xff; // Package header
	__bluetooth_buf[1] = (char) graph_get_point_number(point_map_to_standard(__actor_cur_point));
	__bluetooth_buf[2] = (char) direction_map_to_standard(__actor_head_direction);
	LPLD_UART_PutCharArr(UART4, __bluetooth_buf, sizeof(__bluetooth_buf));
}
Example #12
0
//查询是否入网
uint8 SQC_ME3000_Creg()
{
  uint8 cmd[20];
  gprs_pib.Rxflag = 0;
  sprintf(cmd,"AT+CREG?\r\n");
  while(1)
  {
    LPLD_UART_PutCharArr(UART5,cmd,strlen(cmd));
    delay();delay();
    if(gprs_pib.Rxflag == 2)
    {
      if(strstr(gprs_pib.Rxbuf,"+CREG: 0, 1") != 0)
      {
        gprs_pib.Rxflag = 0;
        return TRUE;
      }
      else
        gprs_pib.Rxflag = 0;
    }
  }
}
void uart0_recv_isr(void)
{
  char re_data;
  
  re_data = LPLD_UART_GetChar(UART0);//接收一个字节
  
  if(re_data=='w')
  {
    if(Speed_Out==0)
    {
      Speed_temp += 5;
      if(Speed_temp>=400)
      {
        Speed_temp = 400;
      }
    }
    else
    {
      Speed_Out += 5;
      if(Speed_Out>=400)
      {
        Speed_Out = 400;
      }
    }
    Debugmessgae();
  }
  else if(re_data=='s')
  {
    if(Speed_Out==0)
    {
      Speed_temp -= 5;
      if(Speed_temp>=400)
      {
        Speed_temp = 400;
      }
    }
    else
    {
      Speed_Out -= 5;
      if(Speed_Out>=400)
      {
        Speed_Out = 400;
      }
    }
    Debugmessgae();
  }
  else if(re_data == 'z')
  {
    if(Speed_Out)
    {
      Speed_temp = Speed_Out;      
      Speed_Out = 0;
      Speed_PWM = 0;

      //delay();
    }
    else 
    {
      Speed_Out = Speed_temp;
    }
    Debugmessgae();
  }
  else if(re_data == 'm')
  {
    if(viewflag == 0)
    {
      viewflag = 1;
    }
    else
    {
      viewflag = 0;
    }
  }
  else if(re_data == 'q')
  {
    if(SpeedMessageflag == 0)
    {
      SpeedMessageflag = 1;
    }
    else 
    {
      SpeedMessageflag = 0;
    }
  }
  else if(re_data == 'u')
  {
    Kp = Kp + 1;
    Debugmessgae();
  }
  else if(re_data == 'i')
  {
    Kp = Kp-1;
    if(Kp<0)
    {
      Kp = 0;
      //Kac = 0;
    }
    Debugmessgae();
  }
  else if(re_data == 'o')
  {
    Kd++;
    Debugmessgae();
  }
  else if(re_data == 'p')
  {
    Kd--;
    if(Kd<0)
    {
      Kd = 0;
    }
   Debugmessgae();
  }
  else if(re_data == 'f')
  {
    Sp += 1;
    //Sp++;
    Debugmessgae();
  }
  else if(re_data == 'g')
  {
    Sp -= 1;
    //Sp--;
    if(Sp>=200)
    {
      Sp = 0;
      Sp = 100;
    }
      
    Debugmessgae();
  }
  else if(re_data == 'h')
  {
    Sd += 1;
    Debugmessgae();
  }
  else if(re_data == 'j')
  {
    Sd -= 1;
    if(Sd<0)
    {
      Sd = 0;
    }
    Debugmessgae();
  }
  else if(re_data == 'k')
  {
    Si += 0.01;
    count++;
    Debugmessgae();
  }
  else if(re_data == 'l')
  {
    Si -= 0.01;
    count--;
    if(Si<0)
    {
      Si = 0;
      count = 0;
    }
    Debugmessgae();
  }
  else if(re_data == '1')
  {
    CCDtime++;
    SendDec(CCDtime);
    //LPLD_UART_PutChar(UART0,' ');
    LPLD_UART_PutCharArr(UART0,"\r\n",2);
  }
  else if(re_data == '2')
  {
    CCDtime--;
    SendDec(CCDtime);
    //LPLD_UART_PutChar(UART0,' ');
    LPLD_UART_PutCharArr(UART0,"\r\n",2);
  }
  else if(re_data == '3')
  {
    notch_offset++;
    SendDec(notch_offset);
    //LPLD_UART_PutChar(UART0,' ');
    LPLD_UART_PutCharArr(UART0,"\r\n",2);
  }
  else if(re_data == '4')
  {
    notch_offset--;
    SendDec(notch_offset);
    //LPLD_UART_PutChar(UART0,' ');
    LPLD_UART_PutCharArr(UART0,"\r\n",2);
  }
  else if(re_data == '5')
  {
    if(counterflag==0)
    {
      counterflag = 1;
    }
    else 
    {
      counterflag = 0;
    }
  }
  else if(re_data == '6')
  {
    if(scopeflag==0)
    {
      scopeflag = 1 ;
    }
    else 
    {
      scopeflag = 0;
    }
  }
}