Arduino通过串口与计算机交流

栏目: 软件资讯 · 发布时间: 7年前

内容简介:Arduino通过串口与计算机交流

Arduino上与计算机通信最常用的方式就是串口通信,本文讲解下Arduino下使用串口以及使用串口接收发、发送数据。

在Arduino控制器上,串口都是位于0 (RX)和1 (TX)的两个引脚, Arduino 的USB口通过一个转换芯片(通常为ATmega16 u2)与这两个串口引脚连接。该转换芯片会通过USB接口在计算机上虚拟出一个用于与Arduino通信的串口。

当Arduino控制器使用USB线与计算机相连时,两者之间便建立了串口连接。通过此连接,Arduino控制器可与计算机相互传数据了。

Arduino中与串口相关的函数有 Serial. begin()、Serial.available()、Serial.read()、Serial.println()和Serial.print() 这五个函数;下面分别介绍如何使用串口。

一、串口初始化

要想使串口与计算机通信,需要先使用 Serial. begin() 函数初始化Arduino的串口通信功能,即 Serial.begin(speed); 其中参数speed指串口通信波特率,它是设定串口通信速率的参数。串口通信的双方必须使用同样的波特率方能正常进行通信。波特率可以设置为300、600、1200、2400、4800、9600、14400等,波特率越大,串口通信的速率也就越高。常用的波特率为9600。

二、串口输出

串口初始化完毕后,便可以使用 Serial.print()Serial.println() 函数向计算机发送数据了。函数的用法是:

  • Serial.print(val);   其中val为要输出的信息,各种类型的数据即可。
  • Serial.println(val);   与Serial.print()类似,不同的是Serial.println()函数会在输出指定数据后,再输出一组回车换行符。

串口输出示例程序:

int counter = 0;
void setup() {
  // put your setup code here, to run once:

Serial.begin(9600);
}

void loop() {
  // put your main code here, to run repeatedly:

counter = counter + 1;
Serial.print(counter);
Serial.print(':');
Serial.println(" Hell World!");
delay(100);
}

下载程序到Arduino开发板,点开IDE右上角的窗口监视器,就可以看到串口的输出信息了。如下图:

Arduino通过串口与计算机交流

Arduino通过串口与计算机交流

三、串口接收数据

使用串口同样可以接收由计算机发出的数据。接收串口数据需要使用 Serial. read() 函数,用法是:

Serial.read();

调用该语句,每次都会返回1字节的数据,该返回值便是当前串口读到的数据。

使用串口时,Arduino会在SRAM中开辟一段大小为64 B的空间,串口接收到的数据都会被暂时存放在该空间中,称这个存储空间为缓冲区。使用Serial.available()函数检测缓冲区是否有可读数据,该函数的用法是:

Serial.available();

Serial.available()函数的返回值是当前缓冲区中接收到的数据字节数。在使用时,先检测缓冲区中是否有可读的数据,如果有,则使用 Serial. read() 函数读取,没有则跳过或者等待再读取。

串口读数据的示例程序如下:

void setup() {
  // put your setup code here, to run once:
Serial.begin(9600);
}

void loop() {
  // put your main code here, to run repeatedly:
if(Serial.available()>0){
  char ch=Serial.read();
  Serial.print(ch);
  }
}

程序下载到Arduino后,打开串口监视器,键入并发送任何信息,则会看到Arduino接收该信息,并且将同样的信息通过串口输出。

Arduino通过串口与计算机交流


以上所述就是小编给大家介绍的《Arduino通过串口与计算机交流》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Kotlin程序员面试算法宝典

Kotlin程序员面试算法宝典

孙伟、楚秦 / 机械工业出版社 / 2018-12 / 69

本书是一本讲解程序员面试笔试算法的书籍。在写法上,除了讲解如何解答算法问题以外,还引入了例子辅以说明,以便读者能够更加容易地理解。 本书将程序员面试笔试过程中的各类算法类真题一网打尽。在题目的广度上,通过各种渠道,搜集了近3年来几乎所有IT企业面试笔试算法高频题目,所选择题目均为企业招聘使用题目;在题目的深度上,本书由浅入深、庖丁解牛式地分析每一个题目,并提炼归纳,同时,引入例子与源代码、时......一起来看看 《Kotlin程序员面试算法宝典》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

URL 编码/解码
URL 编码/解码

URL 编码/解码