【Arduino】串口乱码解决办法

最近在做毕设,需要实现两块arduino板之间的通信,两板芯片都是atmega328p。蓝牙模块用的spp-ca。
【Arduino】串口乱码解决办法_第1张图片

第一块主控制板接蓝牙,我需要将手机发送给蓝牙的数据传送到第二块板(舵机控制板),这样我就能实现用手机控制舵机(其实就是机械臂)抓取动作。

在第一块主板程序里模拟了两个软串口,一个是Bluetooth serial,也就是接蓝牙的管脚,用来接受蓝牙数据,另一个是myserial,用来接舵机控制板。

在程序里定义char变量send_data。下面是程序:
send_data=BluetoothSerial.read();
mySerial.print (send_data);

照理说,这时候舵机控制板就能读取到蓝牙数据了,但是头疼的问题来了,用usb-ttl接电脑上位机一看,全是乱码。
一开始以为是波特率的问题,波特率都是9600,然后试了好几种波特率, 没有一个行的。

然后!我就试试加了两个延时函数!就好了!哈哈哈哈,激动。改过后的程序:

send_data=BluetoothSerial.read();
delay(3);
mySerial.print (send_data);
delay(5);

波特率都是9600,完美解决。

你可能感兴趣的:(【Arduino】串口乱码解决办法)