0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Arduino篇—如何进行串口数据的读取和串口数据的写入

冬至子 来源:X的创客课堂 作者:MRXY 2023-11-01 09:35 次阅读

课程目标

  • 了解什么是串口和串口监视器
  • 学会使用串口监视器监测传感器数据
  • 学会使用串口发送数据

电路搭建

所需材料

Arduino UNO * 1
光控传感器模块 * 1
任意颜色LED * 1
220Ω电阻 * 1
杜邦线若干

接线方式

传感器模块上的VCC接UNO的+5V,
DO接UNO的A0引脚,
GND接UNO的GND。
图片

程序编写

*练习一:通过串口读取传感器模拟

根据上面的电路图进行接线,编写程序读取光控传感器的模拟值,并在串口监视器上显示出来。

图形化方式:

图片

读取的传感器值保存到light变量中,然后被发送到了串口,接着串口监视器将其打印了出来,程序以此循环反复。在串口监视器中,观察所获取的值和上节课所获取的值有什么不一样的地方?

代码方式:

/* 项目名称:串口读取模拟值
 * 项目时间:2022.02.14
 * 项目作者:MRX
 */
int light = 0;//定义light变量
int pin = A0;//定义引脚变量pin
void setup() {
  Serial.begin(9600);
  pinMode(pin,INPUT);//定义引脚为输入模式
}
void loop() {
  light = analogRead(pin);//将模拟引脚pin的值赋给light
  Serial.println(light);//串口打印输出变量light
  delay(1000);
}

练习二:Arduino与串口交互练习

编写程序,要求可以从串口监视器中发送信号给Arduino,最后又显示到串口监视器中。

图形化方式:

图片

首先声明一个叫item的字符串类型的全局变量,然后通过监测如果端口有数据输入,那么将输入的数据赋值给item,并且在端口打印出来。

图片

图片

代码方式:

/* 项目名称:串口输入显示器输出
 * 项目时间:2022.02.14
 * 项目作者:MRX
 */
String item ;//定义字符串类型变量item
void setup() {
  Serial.begin(9600);
}
void loop() {
  if (Serial.available() > 0){
    item = Serial.readString();
    Serial.println(item);//串口打印输出字符串型变量item
  }
}

练习三:串口控制LED灯

给串口发送信号o,LED灯开,给串口发送信号c,LED灯关。

图形化方式:

图片

代码方式:

/* 项目名称:串口输入显示器输出
 * 项目时间:2022.02.14
 * 项目作者:MRX
 */
char order = "" ;//定义order变量
int pin = 3;
void setup() {
  Serial.begin(9600);
  pinMode(pin,OUTPUT);
}
void loop() {
  if (Serial.available() > 0){
    order = Serial.read();
    Serial.println(order);//串口打印输出变量order
    if (order==('o')) 
    {
      Serial.println("open");
      digitalWrite(pin,HIGH);
    } 
    else if (order==('c'))
    {
      Serial.println("close");
      digitalWrite(pin,LOW);
    } 
  }
}
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Vcc
    Vcc
    +关注

    关注

    2

    文章

    305

    浏览量

    35737
  • 串口控制
    +关注

    关注

    0

    文章

    25

    浏览量

    9847
  • Arduino
    +关注

    关注

    187

    文章

    6455

    浏览量

    186444
  • GND
    GND
    +关注

    关注

    2

    文章

    527

    浏览量

    38615
  • 光控传感器
    +关注

    关注

    0

    文章

    5

    浏览量

    9177
收藏 人收藏

    评论

    相关推荐

    labview串口读取数据存储问题

    一个串口读取程序,将每次读取串口数据读取时间一起存储到一个文本文件中,每次
    发表于 11-18 11:18

    读取串口数据的方法

    最近在用串口来接收数据,在使用串口读取函数时有不明白的地方。比如说我每秒向串口发一次18字节的数据
    发表于 03-12 13:39

    何进行读取数据

    文件为txt文件中共有10000个数据点,每个数据点由6个元素组成,分别对应6路信号即6条曲线,每个波形由200个数据点组成,每个文件中共有50个波形如图后面那个 读后标记 如何进行
    发表于 05-24 22:07

    matlab串口读取arduino数据

    我想用matlab读arduino uno 串口数据,是arduino uno上的电压值,arduino uno 的波特率是115200,
    发表于 12-04 06:57

    串口通信中外设与开发板串口通信是如何进行数据传输的?

    串口通信中外设与开发板串口通信是如何进行数据传输的?在使用外设时怎样将外设的数据返回给开发板呢?
    发表于 07-07 07:58

    STM32 USART串口是如何进行数据处理的呢

    STM32 USART串口接收数据的具体步骤有哪些?STM32 USART串口是如何进行数据处理的呢?
    发表于 11-25 08:56

    PC机的串口调试助手与STM32是如何进行数据收发的

    怎样通过PC机的串口调试助手将数据发送至STM32呢?PC机的串口调试助手与STM32是如何进行数据收发的?
    发表于 12-09 07:17

    python串口接收数据

    本文主要介绍了python串口接收数据。其中涉及了Python使用线程来接收串口数据,以及python3 Serial 串口助手的接收
    发表于 01-15 09:52 4.6w次阅读
    python<b class='flag-5'>串口</b>接收<b class='flag-5'>数据</b>

    labview读取串口数据

    本文在对LabVIEW的VISA与单片机之间信息传送的理论研究基础上,针对串口发送的数据信息,设计了基于labview读取串口数据、接收、保
    发表于 01-15 14:58 2.6w次阅读
    labview<b class='flag-5'>读取</b><b class='flag-5'>串口</b><b class='flag-5'>数据</b>

    labview串口数据解析

    本文主要对labview串口数据解析进行了分析。首先需要调用VISAConfigureSerialPort完成串口参数的设置,包括串口资源分
    发表于 01-15 15:21 5.8w次阅读
    labview<b class='flag-5'>串口</b><b class='flag-5'>数据</b>解析

    上位机串口通信数据接收事件程序

    上位机 串口 通信主要介绍通信串口的初始化和串口缓冲区数据读取,因为此处只是作为指令来读取
    发表于 03-13 15:08 3955次阅读
    上位机<b class='flag-5'>串口</b>通信<b class='flag-5'>数据</b>接收事件程序

    LabVIEW串口写入读取详细资料概述

    本文档的主要内容详细介绍的是LabVIEW串口写入读取详细资料概述。
    发表于 01-02 08:00 41次下载
    LabVIEW<b class='flag-5'>串口</b><b class='flag-5'>写入</b>和<b class='flag-5'>读取</b>详细资料概述

    单片机 MQTT 读取数据问题(串口通信)

    单片机 MQTT 读取数据问题(串口通信)问题描述使用stm32F10x单片机串口接收数据时,接收中断只能按字节接收。将接收到的
    发表于 12-20 19:35 9次下载
    单片机 MQTT <b class='flag-5'>读取</b><b class='flag-5'>数据</b>问题(<b class='flag-5'>串口</b>通信)

    Arduino串口数据采集

    电子发烧友网站提供《Arduino串口数据采集.zip》资料免费下载
    发表于 01-04 09:44 0次下载
    <b class='flag-5'>Arduino</b><b class='flag-5'>串口</b><b class='flag-5'>数据</b>采集

    stm32怎么读取串口发来的指令

    读取串口发来的指令是嵌入式系统中一项常见的任务,特别是在与外部设备进行通信时。在STM32系列微控制器中,提供了多个串口接口(USART、UART等),可以用于
    的头像 发表于 01-07 17:08 2545次阅读