bsp_protocol.c 821 B

1234567891011121314151617181920212223242526272829303132
  1. /********************** 头文件 *************************/
  2. #include "bsp_protocol.h"
  3. /********************** 变量区 *************************/
  4. /********************** 函数声明区 *************************/
  5. void send_protocol(uint8_t index,uint8_t cmd,uint8_t* dat,uint8_t datLen)
  6. {
  7. uint8_t buf[128];
  8. uint16_t Len = datLen+5;
  9. uint16_t L=0;
  10. uint8_t i;
  11. uint8_t ver = 0;
  12. if(Len>128) return;
  13. buf[L++] = 0xAA; ver += 0xAA; //帧头
  14. // buf[L++] = 0xBB; ver += 0xBB; //帧头
  15. // buf[L++] = 0xCC; ver += 0xCC; //帧头
  16. buf[L++] = Len; ver += Len; //长度
  17. buf[L++] = ~Len; ver += (~Len);//长度反码
  18. // buf[L++] = index; ver += index; //设备号
  19. buf[L++] = cmd; ver += cmd; //命令
  20. for(i=0;i<datLen;i++){ buf[L++] = dat[i]; ver += dat[i];} //数据
  21. buf[L++] = ver; //校验
  22. ESB_SendBuff(buf,L); //发送出去
  23. }