串口输出显示

串行通信是在实现在PC机与微控制器进行交互的最简单的办法。之前的PC机上一般都配有标准的 RS-232或者RS-422接口来实现串行通信,但现在这种情况已经发生了一些改变,大家更倾向于使用USB这样一种更快速但同时也更加复杂的方式来实现串行通信。尽管在有些计算机上现在已经找不到RS-232或者RS-422接口了,但我们仍可以通过USB/串口或者PCMCIA/串口这样的转换器, 在这些设备上得到传统的串口。

通过串口连接的Arduino在交互式设计中能够为PC机提供一种全新的交互方式,比如用PC机控制一些之前看来非常复杂的事情,像声音和视频等。很多场合中都要求Arduino能够通过串口接收来自于PC机的命令,并完成相应的功能,这可以通过Arduino语言中提供的 Serial.read()函数来实现。

在这一实验中我们同样不需要任何额外的电路,而只需要用串口线将Arduino和PC机连起来就可以了,相应的Arduino工程代码为:

int ledPin = 13;
int val;

void setup() {
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}

void loop() {
val = Serial.read();
if (-1 != val) {
    if ('H' == val) {
      digitalWrite(ledPin, HIGH);
      delay(500);
      digitalWrite(ledPin, LOW);
    }
}
}

把工程下载到Arduino模块中之后,在Arduino集成开发环境中打开串口监视器并将波特率设置为9600,然后向Arduino模块发送字符H,如下图所示:

该工程运行起来之后会不断调用Serial.read()函数从串口获得数据。Arduino语言提供的这个函数是不阻塞的,也就是说不论串口上是否真的有数据到达,该函数都会立即返回。Serial.read()函数每次只读取一个字节的数据,当串口上有数据到达的时候,该函数的返回值为到达的数 据中第一个字符的ASCII码;当串口上没有数据到达的时候,该函数的返回值则为-1。

arduino学习笔记五相关推荐

  1. Arduino学习笔记2

    一.蜂鸣器输出实验 1.源代码 int buzzer=2;//设置控制蜂鸣器的数字口对应板子上2口 void setup() { pinMode(buzzer,OUTPUT);//设置对应的输出模式 ...

  2. python函数是一段具有特定功能的语句组_Python学习笔记(五)函数和代码复用

    本文将为您描述Python学习笔记(五)函数和代码复用,具体完成步骤: 函数能提高应用的模块性,和代码的重复利用率.在很多高级语言中,都可以使用函数实现多种功能.在之前的学习中,相信你已经知道Pyth ...

  3. Ethernet/IP 学习笔记五

    Ethernet/IP 学习笔记五 Accessing data within a device using a non-time critical message (an explicit mess ...

  4. StackExchange.Redis学习笔记(五) 发布和订阅

    StackExchange.Redis学习笔记(五) 发布和订阅 原文:StackExchange.Redis学习笔记(五) 发布和订阅 Redis命令中的Pub/Sub Redis在 2.0之后的版 ...

  5. 吴恩达《机器学习》学习笔记五——逻辑回归

    吴恩达<机器学习>学习笔记五--逻辑回归 一. 分类(classification) 1.定义 2.阈值 二. 逻辑(logistic)回归假设函数 1.假设的表达式 2.假设表达式的意义 ...

  6. 好程序员教程分析Vue学习笔记五

    好程序员教程分析Vue学习笔记五,上次我们学习了Vue的组件,这次我们来学习一下路由的使用.在Vue中,所谓的路由其实跟其他的框架中的路由的概念差不多,即指跳转的路径. 注意:在Vue中,要使用路由, ...

  7. 【AngularJs学习笔记五】AngularJS从构建项目开始

    为什么80%的码农都做不了架构师?>>>    #0 系列目录# AngularJs学习笔记 [AngularJs学习笔记一]Bower解决js的依赖管理 [AngularJs学习笔 ...

  8. ROS学习笔记五:理解ROS topics

    ROS学习笔记五:理解ROS topics 本节主要介绍ROS topics并且使用rostopic和rqt_plot命令行工具. 例子展示 roscore 首先运行roscore系列服务,这是使用R ...

  9. Spring Boot 框架学习笔记(五)( SpringSecurity安全框架 )

    Spring Boot 框架学习笔记(五) SpringSecurity安全框架 概述 作用 开发示例: 1. 新建项目 2. 引入依赖 3. 编写`SecurityConfig`类,实现认证,授权, ...

最新文章

  1. 一场由FPGA触发的芯片战争
  2. golang os.Rename 移动文件 报错 invalid cross-device link 解决方法
  3. Visual Studio 2010 -新特性,但我要的比这个更多!
  4. apache代理时java获取IP的问题
  5. php记录代码执行时间
  6. alter database open resetlogs
  7. getElementById和querySelector区别
  8. java中判断两个方法是否相同
  9. Packet for query is too large
  10. Yet Another Meme Problem(打表找规律)
  11. 十年技术骨干面试被开出一万五薪资,直呼 “这是对我的侮辱”
  12. 矩阵相乘Java版(第一个java程序)
  13. 1004. Counting Leaves (30)
  14. 中国脚手架管市场趋势报告、技术动态创新及市场预测
  15. 浅谈java的静态代理模式
  16. 铵钮提交事件PostBack之后,一些动态加载的物件丢失
  17. 鼠标在滑块上滚轮控制_直线导轨(滚轮导轨)与线轨(滚珠导轨)的优劣势对比...
  18. 在线考试系统毕业设计设计过程及部分代码
  19. 如何区分杠精和批判性思维
  20. 计算机恢复语言文件格式,txt文件乱码怎么恢复正常

热门文章

  1. 使用QT获取当前星期的中英文显示
  2. 详解Unity的移动控制实现
  3. Windows共享内存解析
  4. python中docx模块的使用_Python-使用.docx模块
  5. IDM - 如何去除浏览器下载浮动条?
  6. 加速电脑浏览器下载和加载网页速度
  7. ESXi最新补丁升级步骤
  8. IMEI码规则及校验算法
  9. Android电子书阅读器小程序(txt)
  10. Oracle表的管理命令