微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > ARM技术讨论 > 从zigbee通过串口往ARM写数据的问题

从zigbee通过串口往ARM写数据的问题

时间:10-02 整理:3721RD 点击:

ARM跟电脑串口连接并用超级终端显示,zigbee板和ARM板用串口连接,现在想要zigbee通过串口给ARM发送数据,ARM接收之后在超级终端打印出来。
defAddr.addrMode = AddrBroadcast;
  defAddr.addr.shortAddr = 0xFFFF;
  defAddr.endPoint = LOCATION_BLINDNODE_ENDPOINT;
  BlindNodeSendData[0] = 2;//目标节点
  BlindNodeSendData[1] = 8;
  BlindNodeSendData[2] = 4;
  BlindNodeSendData[3] = msg[BLINDNODE_RESPONSE_X_LO_IDX];
  BlindNodeSendData[4] = msg[BLINDNODE_RESPONSE_X_HI_IDX];
  BlindNodeSendData[5] = msg[BLINDNODE_RESPONSE_Y_LO_IDX];
  BlindNodeSendData[6] = msg[BLINDNODE_RESPONSE_Y_HI_IDX];
  BlindNodeSendDatalen = 7;
//--------------------------------------------------------------------------------------
  HalUARTWrite (0,BlindNodeSendData,BlindNodeSendDatalen);
这是zigbee里面往串口写的数组,BlindNodeSendData是unsigned char型数组,HalUARTWrite函数是往串口写的函数,没有问题。

void receive_ST1_1(int channel)
{
    float t;
    unsigned char echo[16];
    unsigned char tmp[10];
    int l,i;
    while(1)
    {

       l= user_uart_read(channel,echo,16);
       if(l>0)
       {
           printf("receive 2_robot msg:%s\n",echo);
           for(i=0;i<4;i++) tmp=echo[i+3];
           t=atof(tmp);
           printf("2_robot_1 step value:%f\n",t);
           return t;         
       }
    }
    return 0;
}
这个是ARM里面的从串口接收的函数,接收到的据保存在echo数组里面,实验结果是超级终端能显示“eceive 2_robot msg:                            ”为什么不显示我上面给的那些数字,应该怎么改呢,求各位大虾指点一下,好纠结



试着查下函数参数,看看是不是函数出问题了

试着查下函数参数,看看是不是函数出问题了

看看。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top