您的位置:首页 > 产品设计 > UI/UE

arduino串口使用print还是write?

2018-03-16 18:44 801 查看
在arduino的串口serial使用中:    当使用print()发送一个数据时,Arduino发送的并不是数据本身,而是将数据转换成字符(无论是何种类型的数据,如int a=100数据也会被转化为三个char型数据,即’1’ .’0’.’0’),再将字符翻译成ASCII码发送出去,串口监视器接收到ASCLL码,则会显示对应的字符(串口监视器会自动进行ASCII码翻译工作)。因此,使用print()函数是以ASCLL码的形式输出数据到串口。    而当使用write()函数时,Arduino发送的是数值本身,省略了把字符转化为ASCII码的过程。串口监视器接收到数据后,也会将数值当做ASCLL码而显示其对应的字符(write()函数只支持发送0~255整型数据)。总而言之,print转化为ASCII后再发送,write直接发送数值(只能是整型数据)。实验:arduino代码
#include<Servo.h>
int s_data = 100;
void setup() {
  Serial.begin(9600);
}
void loop() {
  delay(1000);
  Serial.print(s_data);
  Serial.write(s_data);
}
串口监视器显示

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息