/************************************************************************* char型换十进制函数 *************************************************************************/ void SendDec(int16 Dec) { uint8 temp,i=0,string[18] = {0}; if(Dec==0) { LPLD_UART_PutChar(UART0,'0'); return ; } if(Dec<0) { LPLD_UART_PutChar(UART0,'-'); Dec = -Dec; } while(Dec!=0) { temp = Dec%10; string[i++] = temp; //LPLD_UART_PutChar(UART0,temp + '0'); Dec = Dec/10; } while(i--) { LPLD_UART_PutChar(UART0,string[i] + '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; } } }
/************************************************************************* 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); }
/* * LPLD_UART_PutCharArr * 串口查询方式发送字节型数组 * * 参数: * uartx--UART模块号 * |__UART0 --UART0 * |__UART1 --UART1 * |__UART2 --UART2 * |__UART3 --UART3 * |__UART4 --UART4 * |__UART5 --UART5 * *ch--待发送的字节数组头地址 * len--字节数组长度 * * 输出: * 无 * */ void LPLD_UART_PutCharArr(UART_Type *uartx, int8 *ch, int32 len) { while(len--) { LPLD_UART_PutChar(uartx, *(ch++)); } }
/* * UART5接收中断函数 * */ void uart_isr(void) { int8 recv; recv = LPLD_UART_GetChar(UART0); LPLD_UART_PutChar(UART0, recv); flag = 1; }
/* * UART5接收中断函数 * */ void uart_isr(void) { int8 recv; recv = LPLD_UART_GetChar(UART5); LPLD_UART_PutChar(UART5, recv); }
void uart4_isr(void) { int8 recv; recv = LPLD_UART_GetChar(UART4); LPLD_UART_PutChar(UART4, recv); }
void out_char (int8 ch) { LPLD_UART_PutChar(TERM_PORT, ch); }