1.设置引脚为输入(INPUT)模式

当引脚设置为输入(INPUT)模式时,引脚为高阻抗状态(100兆欧)。此时该引脚可用于读取传感器信号或开关信号。

注意:当Arduino引脚设置为输入(INPUT)模式或者输入上拉(INPUT_PULLUP)模式,请勿将该引脚与负压或者高于5V的电压相连,否则可能会损坏Arduino控制器。

2.主角登场——按键开关

按下开关按钮就可使开关接通,当松开手时开关即断开。

下图是其原理图:

3. 数字信号

数字信号指自变量是离散的、因变量也是离散的信号,这种信号的自变量用整数表示,因变量用有限数字中的一个数字来表示。

在计算机中,数字信号的大小常用有限位的二进制数表示。

按压开关,产生的是一个电信号,且是给arduino输入一个信号,故引脚设置为输入(INPUT)模式。

在这个状态下,可以识别两种状态:HIGH(高电平)、LOW(低电平)

4.电路连接

                

当开关没有按下的时候,引脚2的电压为5V,高电平;按下的时候,引脚2的电压为0,接地,低电平。

R1的正经名字叫“上拉电阻”,10kΩ。

5.演示程序

//数字引脚2有一个按钮连接到它。给它起个名字。
int pushButton = 2;// 按复位键时,设置程序运行一次。
void setup() {// 以每秒9600位的速度初始化串行通信。Serial.begin(9600);//使按钮的引脚成为输入pinMode(pushButton, INPUT);
}// 循环程序永远重复运行
void loop() {// 读取输入引脚int buttonState = digitalRead(pushButton);// 打印出按钮的状态Serial.println(buttonState);delay(1);        // 为保证稳定性,读取之间的延迟
}

digitalRead():

功能:读取引脚电平状态;

形式:digitalRead(pin)

参数:pin:要读取的引脚

返回值:HIGH或者LOW;

Arduino Serial库的使用:

https://www.cnblogs.com/1996jiwei/p/6561594.html

Serial.begin()

串口波特率定义函数。一般取值300, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600, or 115200。

语法
Serial.begin(speed)

参数
speed: 速率,长整数型long

返回
None

例子
void setup() {
Serial.begin(9600); // opens serial port, sets data rate to 9600 bps
}

Serial.print()

串口输出数据函数。

语法
Serial.print(val)
Serial.print(val,format)

参数
val: 打印的值,任意数据类型
format: 输出的数据格式,包括整数类型和浮点型数据的小数点位数。

返回
字节

例子
Serial.print(78, BIN) 得到 "1001110"
Serial.print(78, OCT) 得到 "116"
Serial.print(78, DEC) 得到 "78"
Serial.print(78, HEX) 得到 "4E"
Serial.print(1.23456, 0) 得到 "1"
Serial.print(1.23456, 2) 得到 "1.23"
Serial.print(1.23456, 4) 得到 "1.2346"
Serial.print('N') 得到 "N"
Serial.print("Hello world.") 得到 "Hello world."

Arduino学习笔记——数字输入相关推荐

  1. Arduino学习笔记(1):太极创客 第一部分

    Arduino学习笔记 太极创客 第一部分 笔记 1-5 变量 1-6 程序结构 1-7 变量操作 1-8/1-9 程序函数 1-10/1-11 数字输出 1-12 面包板 1-13/1-14 数字输 ...

  2. Arduino学习笔记2

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

  3. arduino 学习笔记及课件01基础入门

    arduino 学习笔记及课件01基础入门 以下学习笔记中图片部分由太极创客视频截图所得 概论 一. 引脚及信号 1.1引脚模式 INPUT:当Arduino没有使用上拉电阻或下拉电阻而直接与开放的开 ...

  4. 【Arduino学习笔记】E18-D50NK红外避障传感器使用说明

    网上淘的E18-D50NK到货了,闲着没事试了一下,顺便做个笔记 就是这货,红色接5V正极,绿色接GND,黄色为信号线 后面的小圆孔可以调节有效检测距离 arduino代码如下: int E18Pin ...

  5. 【Arduino学习笔记】系列1 - 定时器配置

    目录 一.Arduino定时器简介 二.定时器基本概念 定时器速度(HZ) = Arduino时钟速度(16MHz) / 预分频器系数 中断频率(Hz)=(Arduino时钟速度16MHz)/(预分频 ...

  6. 【Arduino学习笔记】使用L298N电机驱动模块驱动直流电机

    L298N是Arduino的电机驱动模块,能驱动步进电机和两路直流电机,驱动步进电机和直流电机的文章网上百度一大堆,这里我想说的是L298N模块外接独立12V电压驱动电机的方法.我使用的L298N模块 ...

  7. Arduino 学习笔记_3 案例:按下按钮生成一位随机数字,在数码管中显示

    猜数字案例 有一位8段数码管,和一个按钮.每次按下按钮,随机生成一个0~9的数并在LED显示器上显示出来. 首先先可以参考下官网上的案例.这个案例是从0到9所有数字循环显示,里面用到了数码管对应引脚, ...

  8. 【Arduino学习笔记】手把手教你使用ESP8266----①接线篇

    在物联网时代搞技术就必须跟网络沾上边,这两天把前段时间淘宝上淘的ESP8266模块拿出来捣鼓了一下,初学Arduino,对硬件模块没啥了解,刚开始简直无从下手,在几个技术QQ群求教未果,技术大大们对我 ...

  9. Arduino学习笔记一:一篇讲明白什么是Arduino

    "前言:什么是Arduino以及能干嘛?" 一.前言 二.Arduino是什么? 三.Arduino能干什么? 四.Arduino适合什么人? 五.Arduino的优缺点 优点 缺 ...

最新文章

  1. 【网站汇总】安装教程系列
  2. 每天拖地好麻烦?用这几招,地板每天光亮如新!
  3. Netty的引用计数对象
  4. 日志挖掘(logminer)
  5. C#树状图 初始默认选中节点
  6. 一年多少钱_赴英读研一年多少钱?
  7. python+gensim︱jieba分词、词袋doc2bow、TFIDF文本挖掘
  8. 处理器架构 (十三) ARMv6架构下 各微架构的不同
  9. linux实现selenium+chrome+chromedriver实现自动化脚本
  10. 萤火虫小程序_实测!成都人私藏的免费耍水地,抓螃蟹、烤烧烤、赏萤火虫,周末一天来回!...
  11. java_面试题WH_W
  12. 3D打印机之Marlin固件配置
  13. c语言中20的倍数为真,0723-0802 C语言笔记(李明杰前8天)
  14. 笔记本win10开启wifi共享wifi
  15. 树莓派+摄像头实现监控功能
  16. 2023面试题大全updating
  17. Git 工具 - 储藏(Stashing)
  18. c语言已知斜率 求倾角,直线与方程(一)倾斜角与斜率
  19. 切比雪夫阻抗变换器设计与仿真
  20. 明星玩跨界,全民娱乐时代来临!

热门文章

  1. 解决input输入的是空格问题
  2. laravel 框架maatwebsite/excel拓展导出excel增加sheets分页功能
  3. 【从零开始学微服务】01.微服务的过去与现在
  4. 被掰弯的线性函数,海王一样的logstic
  5. 每日一皮:朋友圈集赞原来还可以这样...
  6. 从一个例子开始体验轻量级类隔离容器 SOFAArk | SOFAChannel#11 直播整理
  7. apex 查询_APEX初步 [5] —— SOQL查询
  8. Plant Simulation之数字孪生
  9. WiFi遇到 无法连接到这个网络 的解决办法记录 ( netsh winsock reset )
  10. 设计模式04——Factory Method模式