Arduino编程控制与应用课件:完成数字输入与输出功能的实现_第1页
Arduino编程控制与应用课件:完成数字输入与输出功能的实现_第2页
Arduino编程控制与应用课件:完成数字输入与输出功能的实现_第3页
Arduino编程控制与应用课件:完成数字输入与输出功能的实现_第4页
Arduino编程控制与应用课件:完成数字输入与输出功能的实现_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Arduino

编程控制与应用Arduino

文本编程的应用完成数字输入与输出功能实现通过串口与数字输出、读取开关输入、开关与LED

控制,可实现数字输入与输出功能。具体效果如下:1.在串口监视器的输入栏中输入字母“a”,点击回车键后可发现开发板13号引脚的小灯被点亮;输入

字母“b”,点击回车键后可发现开发板13号引脚的小灯被熄灭。2.当按下4号按键时在串口监视器中打印出“1”,当松开4号按键时在串口监视器中打印出“0”。3.当按下5号按键时,流水灯多功能扩展板的13号LED

灯点亮,松开5号按键,13号LED

灯熄灭。导

入一

、信号的类型三、数字输入与输出功能实现二、数字信号的基本知识四、串口监视器的调用目录相关电子电路中的信号可以分为以下两大类:模拟信号时间连续、数值也连续的信号。数字信号U时间上和数值上均是离散的信号。一、信号的类型数字信号是幅度和时间都离散的信号,在取值上是离散的、不连续的信号。通常使用方式有:二进制数字输入形式开关输入形式二、数字信号的基本知识数字信号只有两个值,常用数字0和1来表示,这里的0和1没有大小之分,只代表两种对立的状态,称为逻

辑0和逻辑1,也称为二值数字逻辑。1.二进制数字输入形式二、数字信号的基本知识在数字电路中开关是一种基本的输入形式,它的作用是保持电路的连接或者断开。Arduino

从数字I/O管

脚上只能读出高电平(5V)或者低电平(OV)。

上/下拉电阻可以将开关的开/断状态转变成Arduino能

够读取的高/低电平,按照电路的不同通常又可以分为

正逻辑和负逻辑两种。2.开关输入形式二、数字信号的基本知识三、数字输入与输出功能实现Arduino

板上带有数字编号的端口是数字端口,包括数字前面带“A”编号的模拟输入端口,使用这些端口也可以完成输入/输出功能。实现数字输入与输出功能可以方便地通过调用Arduino

内建基本函数来实现。管脚数字输入函数

digitalRead3管脚数字输出函数

digitalWrite管脚工作模式设置

数pinMode四、串口监视器的调用串口监视器是Arduino

IDE内置的一个组件,可以通过点击工具栏最右边的图标“”或从菜单栏“工具”

→“串口监视器”打开。串口监视器不仅可以把一些控制指令从电脑发送到Arduino

控制板,还可以把Arduino

板反馈的一些运行状态显示出来。使用到以下两个函数:Serial.begin(rate)

数用来指定通讯速率。通信波特率的设置函数Serial.begin(rate)接收一个参数,该参数指定了通信速

率(或称“波特率”)。serial.printIn()

数用

在串口

器中显

Arduino

控制板返回的信息。串口打

印函数Serial.println()的功能是将

参数输出到串口,并回车换行。任务实施Task

Implementation序号软件及硬件名称数量1Arduino

IDE2联网的电脑1台/人3键盘1个/人4鼠标1个/人5Arduino

UNO开发板1块/人6流水灯多功能扩展板1块/人7USB串口线1根/人

(一)软件及硬件准备一、任务准备1.注意Arduino

开发板与电脑的连接是否可靠;2.注意Arduino

开发板与电脑连接端口的匹配;3.注意输出电压,避免开发板被烧坏;4.注意Arduino

开发板与流水灯多功能扩展板连接时,针脚要对孔,插入时

要小心,避免阵脚变歪或折断。一、任务准备(二)场地设备准备任务实施前需要做好场地防护准备以及检查实训场地和设备设施是否及存在安全隐患,如不正常请汇报老师并进行处理方可实施任务。(三)安全防护准备1234连接线的方头端接口连接ArduinoUNO开发板,另一端USB接口连接电脑。(一)控制电路连接二、实施步骤代码编写区域上传代码

打开文件保存文档新建文档此处编译的时候有进度提示二

、实施步骤(二)控制程序编写与上传步骤1:打开Arduino

IDE软件,进入界面。文件编辑项目工具帮助sketchjun21as

当前编辑文档名称◎

sketch

jun21a|Arduino

1.8.13串口查看步骤2:在工具-端口-选择对应的端口。若分不清端口,先把开发板连接上,查看端口,有COM1COM3、COM4、COM5、COM6;断开开发板连接,查看端口,有COM3、COM4、COM5、COM6;

少了一个COM10端口,那么COM10就是对应的端口。102|Arduino

1.8.13泪工具帮助自动格式化

Ctrl+T项目存档修正编码并重新加载管理库…

Ctrl+Shift+l(13

串口监视器

Ctrl+Shift+M串口绘图器

Ctrl+Shift+LWiFi101/WiFiNINA

Firmware

Updater开发板:"Arduino

Uno'>J0端

口tri取得开发板信息000编程器:"AVRISPmkll"烧录引导程序(二)控制程序编写与上传WifFi101/WiFiNINAFirmwareUpdater开发板:"Arduino

Uno°

>端

口取得开发板信息编程器:"AVRISPmkll"烧录引导程序二、实施步骤帮助自动格式化项目存档修正编码并重新加载管理库…串口监视器串口绘图器道

工具0(13()ri000[ri000Ctrl+TCtrl+Shift+lCtrl+Shift+MCtrl+Shift+L串行端口COM10COM3COM4COM5COM6串行端口COM3COM4COM5COM6302|Arduino

1.8.13步骤1:新建

个文档,//后的代号可删除;在【代码编写区域】中的输入"charitem;"

随后

“void

setup(){”

下方输入如图所示都代码。sketch_401§charitem;//

定义一个字符变量2//初始化函数3void

setup(){Serial.begin

(9600);//

设置串口波特率pinMode

(13,

OUTPUT

);//

设置引脚工作模式(三)串口与数字输出二、实施步骤步骤2:在

“void

loop(){”下方输入如图所示的代码。sketch_401§

char

item;

//定义一个字符变量//初始化函数void

setup

(){Serial.begin

(9600);

//设置串口波特率pinMode

(13,

OUTPUT

);

//

设置引脚工作模式7

//1oop循环函数void

loop(){item

=Serial.read

();

//

读取串口数据并保存在变量item

中10

if(item

=='a'

){//当item

等于a时,13号引脚为高电平1

1

digitalWrite

(13,

HIGH);

121

3

e1seif(item=

'b·)国//当item等于B时,13号引脚为低电平1

4

digitalWrite

(13,

LOW);1

516(三)串口与数字输出二

、实施步骤步骤3:点击上传,如果操作顺利,就会显示上传成功,然后打开右上角的串口监视器,首先检

查波特率是否匹配(相同的波特率为匹配);随后

在串口监视器的输入栏中输入字母“a”,

并按下键盘回车键后可发现开发板13号引脚的小灯被点

亮;输入字母“b”,

并按下键盘回车键后可发现开发板13号引脚的小灯被熄灭,这就是串口与数字输出。◎sketch

jun23a|Arduino1.8.13输

入“a”

或“b”匹配波特率☑自

□Show

tinestaap

换行符

清空输出(三)串口与数字输出二、实施步骤步骤4:控制程序解析:定义一个字符变量item,

在初始化函数中定义串口波特率为9600,设置13号引脚设置为输出模式,在loop

函数中读

取串口监视器的值保存在变量item中,判断item

的值当item值为a时,13号引脚的LED灯点亮,如

果item

的值为b时,13号引脚的LED灯熄灭。程序

运行流程如图所示。定义变量item定义串口波特率为9600初始化函数将13号引脚配置为输出模式读取串口监视器的值保存在item

中bitem=?将13号引脚电

平拉高(三)串口与数字输出二、实施步骤将13号引脚电

平拉低loop

函数任务效果:当按下4号按键时在串口监视器中打印出“1”,当松开4号按键时在串口监视器中打印出“0”。步骤1:新建一个文档,//后的文本代码可删除;在【代码编写区域】中的依次输入如图所示的

代码

。sketch_402§1

intinPin=4;

//

定义变量并赋值int

pinRead;

/

/定义变量//初始化函数void

setup

(){pinMode

(inPin,

INPUT_PULLUP);//

设置引脚为上拉输入Serial.begin

(9600);//

设置串口波特率(四)读取开关输入二、实施步骤步

2:

“void

loop(){”

的下方输入如图所示的代码,完成“读取开关输入”代码的编写。1int

inPin

=4;//定义变量并赋值2intpinead;/

/定义变量pinMode

(inPin,

INPUT_PULLUP

);//

设置引脚为上拉输入Serial.begin(9600);//设置串口波特率8

//loop循环函数10

pinRead=digitalRead(inPin);//

读取inPin引脚的数字信号并保存在变量pinRe1

1

Serial.printin(!pinRead);//在串口打印pinRead

的非值12

delay

(1000);//延时1000ms13(四)读取开关输入sketch_402§二、实施步骤步骤3:将流水灯多功能开发板安装在Arduino

开发板上,把控制4号按键的1号开关和控制10号小灯的1号开关打至ON挡。(四)读取开关输入二、实施步骤步骤4:点击上传,如果操作顺利,就会显示上传成功,打开右上角的串口监

视器,首先检查波特率是否匹配(相同的

波特率为匹配);随后串口监视器会出现

1000000000……的数字,此时10号灯是

亮的,效果如图所示。+sketch_402int

inPin

=4;int

pinRead;void

setup((pinMode(inPin,INPUT_PULLUP)Serial.begin

(9600);void

loop()(pinRead=digitalRead(inPin;Serial.print1n(!pinRead);delay(1000);☑自动滚屏□

Shou

timestap

换行符

9600波特率(四)读取开关输入二、实施步骤清空输出发送步骤5:按下如图3-4-14所示的4号按键,瞬间会发现10号小灯会熄灭,串口监视器上的数字变成1,出现了数字1就说明已读取到开关输入的信息数据,串口监视器数字显示信息如图所示。◎COM10☑自动滚屏□Shovtinestanp

换行符+Dsketch_402int

inPin

=4;int

pinRead;void

setup()(pinMode(inPin,

INEUT_PULLUe)

Serial.begin(9600);void

loop()(pinRead=

digitalRead

(inPin;1

Serial.println

(!pinRead);(四)读取开关输入二、实施步骤发送清空输出步骤6:控制程序解析:定义一个整数型变量inPin(

储按钮开关连接管脚号)并赋值为4(对应4号管脚),定义一个

整数型变量pinRead

(存储从按钮开关连接管脚读取到的电平值)。在初始化函数中设置inPin引脚为上拉输入模式,定义

串口波特率为9600,在loop

循环函数中读取inPin的值保存在

pinRead

变量中,在串口监视器中打印pinRead

的非值,延时

1000ms。程序运行流程如图所示。定义变量inPin

=4定义变量

pinRead将inPin代表的引脚配置为

上拉输入模式setup

函数设置串口波特

率为9600读取inPin代

表的引脚的数字信号并保存

在pinRead

中在串口监视器中打印出pinRead

的非值延时1000ms(四)读取开关输入二、实施步骤loop

函数步骤1:新建一个文档,//后的代号可删除;在【代码编写区域】中依次输入

"int

inPin

=4;"和

"intpinRead;",

随后在void

setup()的下方输入如图,1.#define

inPin

5//

使用宏定义的方式定义inPin等于52.#define

ledPin

13

//

使用宏定义的方式定义

ledPin等子133.

int

pinRead;

//

定义变量4.

//初始化函数5.void

setup0

{6.pinMode(inPin,INPUT_PLLLUP);

//

设置inPin

引脚为上拉输入模式7.pinMode(ledPin,OUTPUT);//设置ledPi

n引脚为输出模式(五)开关与LED控制二、实施步骤步骤2:在“void

loop(){”的下方输入如图3-4-18所示代码,完成“开关与LED控制”代码的编写1.

//1oop循环函数2.

void

loop(0{3.

pinRead

=digitalRead

(inPin);//读取

in

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论