关于stm32的485通信问题

2019-07-20 20:05发布

单片机连接一个基于485协议的土壤传感器,想要实现土壤数据(温湿度)的采集并在lcd上显示出来。我写的发送接收函数如下,发送数据可以在lcd上显示出来,但是传感器返回的数据不正确,哪位大神能帮忙看看问题到底出啊在哪里?               




          if(key==KEY0_PRES)//KEY0按下,发送一次数据
                {
                       
                        rs485buf[0]=0X02;
                        rs485buf[1]=0X03;
                        rs485buf[2]=0X00;
                        rs485buf[3]=0X00;
                        rs485buf[4]=0X00;
                        rs485buf[5]=0X02;
                        rs485buf[6]=0XC4;
                        rs485buf[7]=0X38;
                        RS485_Send_Data(rs485buf,8);//发送8个字节
                       
                   for(i=0;i<8;i++)
                        {
                               
                                LCD_ShowxNum(i*24,190,rs485buf[i],3,16,0X80);        //显示数据
                        }
                       
                }       
         RS485_Receive_Data(rs485buf2,&key2);
                       
                         for(i=0;i<key1;i++)
                     LCD_ShowxNum(i*24,240,rs485buf2[i],3,16,0X80);        //显示接收数据
                                       

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。