outman 发表于 2015-10-27 14:16:51

关于mega2560不同串口之间使用不同波特率通讯的问题


手上有无线模块、2560和舵机板,其中无线模块的波特率是9600,舵机板的波特率是115200。、
我想通过上位机发送一个指令给无线模块,单片机的0号串口接受这个数据,然后将这个数据通过1号串口发送给舵机板。

char data;//E34发送数据

void setup()
{
Serial.begin(9600);//E34波特率
Serial1.begin(115200);//舵机板波特率
}

void loop()
{

if(Serial.available()>0)
{
      data = Serial.read();//通过0号串口接收无线模块的数据
      Serial1.print(data);//将数据通过1号串口发送给舵机板   
   }
}


以上程序可行吗?如果不行的话应该如何编写?

1415926 发表于 2015-10-27 15:54:51

我认为可行,从慢的接收发给快的可行,倒过来不一定行,因为速率跟不上的时候会出问题。
没经过实践检测,只是推测。
页: [1]
查看完整版本: 关于mega2560不同串口之间使用不同波特率通讯的问题