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

下载本文档

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

文档简介

Arduino编程控制与应用能力模块三掌握Arduino文本编程的应用任务四完成数字输入与输出功能实现导入通过串口与数字输出、读取开关输入、开关与LED控制,可实现数字输入与输出功能。具体效果如下:1.在串口监视器的输入栏中输入字母“a”,点击回车键后可发现开发板13号引脚的小灯被点亮;输入字母“b”,点击回车键后可发现开发板13号引脚的小灯被熄灭。2.当按下4号按键时在串口监视器中打印出“1”,当松开4号按键时在串口监视器中打印出“0”。3.当按下5号按键时,流水灯多功能扩展板的13号LED灯点亮,松开5号按键,13号LED灯熄灭。新授Newteaching1目录一、信号的类型三、数字输入与输出功能实现二、数字信号的基本知识四、串口监视器的调用一、信号的类型

相关电子电路中的信号可以分为以下两大类:

数字信号模拟信号时间连续、数值也连续的信号。时间上和数值上均是离散的信号。

二、数字信号的基本知识

数字信号是幅度和时间都离散的信号,在取值上是离散的、不连续的信号。通常使用方式有:12二进制数字输入形式开关输入形式二、数字信号的基本知识1.二进制数字输入形式

数字信号只有两个值,常用数字0和1来表示,这里的0和1没有大小之分,只代表两种对立的状态,称为逻辑0和逻辑1,也称为二值数字逻辑。二、数字信号的基本知识2.开关输入形式

在数字电路中开关是一种基本的输入形式,它的作用是保持电路的连接或者断开。Arduino从数字I/O管脚上只能读出高电平(5V)或者低电平(0V)。通过上/下拉电阻可以将开关的开/断状态转变成Arduino能够读取的高/低电平,按照电路的不同通常又可以分为正逻辑和负逻辑两种。三、数字输入与输出功能实现

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

123管脚工作模式设置函数pinMode管脚数字输出函数digitalWrite管脚数字输入函数digitalRead四、串口监视器的调用

串口监视器是ArduinoIDE内置的一个组件,可以通过点击工具栏最右边的图标“”或从菜单栏“工具”→“串口监视器”打开。串口监视器不仅可以把一些控制指令从电脑发送到Arduino控制板,还可以把Arduino控制板反馈的一些运行状态显示出来。使用到以下两个函数:

Serial.begin(rate)函数用来指定通讯速率。通信波特率的设置函数Serial.begin(rate)接收一个参数,该参数指定了通信速率(或称“波特率”)。serial.println()函数用来在串口监视器中显示Arduino控制板返回的信息。串口打印函数Serial.println()的功能是将参数输出到串口,并回车换行。任务实施2TaskImplementation一、任务准备(一)软件及硬件准备序号软件及硬件名称数量1ArduinoIDE/2联网的电脑1台/人3键盘1个/人4鼠标1个/人5ArduinoUNO开发板1块/人6流水灯多功能扩展板1块/人7USB串口线1根/人一、任务准备(二)场地设备准备(三)安全防护准备任务实施前需要做好场地防护准备以及检查实训场地和设备设施是否及存在安全隐患,如不正常请汇报老师并进行处理方可实施任务。11.注意Arduino开发板与电脑的连接是否可靠;22.注意Arduino开发板与电脑连接端口的匹配;

33.注意输出电压,避免开发板被烧坏;

44.注意Arduino开发板与流水灯多功能扩展板连接时,针脚要对孔,插入时要小心,避免阵脚变歪或折断。

二、实施步骤(一)控制电路连接

连接线的方头端接口连接ArduinoUNO开发板,另一端USB接口连接电脑。

二、实施步骤(二)控制程序编写与上传

步骤1:打开ArduinoIDE软件,进入界面。

二、实施步骤(二)控制程序编写与上传

步骤2:在工具-端口-选择对应的端口。若分不清端口,先把开发板连接上,查看端口,有COM1、COM3、COM4、COM5、COM6;断开开发板连接,查看端口,有COM3、COM4、COM5、COM6;少了一个COM10端口,那么COM10就是对应的端口。

二、实施步骤(三)串口与数字输出

步骤1:新建一个文档,//后的代号可删除;在【代码编写区域】中的输入“charitem;”随后在“voidsetup(){”下方输入如图所示都代码。

二、实施步骤(三)串口与数字输出

步骤2:在“voidloop(){”下方输入如图所示的代码。

二、实施步骤(三)串口与数字输出

步骤3:点击上传,如果操作顺利,就会显示上传成功,然后打开右上角的串口监视器,首先检查波特率是否匹配(相同的波特率为匹配);随后在串口监视器的输入栏中输入字母“a”,并按下键盘回车键后可发现开发板13号引脚的小灯被点亮;输入字母“b”,并按下键盘回车键后可发现开发板13号引脚的小灯被熄灭,这就是串口与数字输出。

二、实施步骤(三)串口与数字输出

步骤4:控制程序解析:定义一个字符变量item,在初始化函数中定义串口波特率为9600,设置13号引脚设置为输出模式,在loop函数中读取串口监视器的值保存在变量item中,判断item的值当item值为a时,13号引脚的LED灯点亮,如果item的值为b时,13号引脚的LED灯熄灭。程序运行流程如图所示。

二、实施步骤(四)读取开关输入

步骤1:新建一个文档,//后的文本代码可删除;在【代码编写区域】中的依次输入如图所示的代码。

任务效果:当按下4号按键时在串口监视器中打印出“1”,当松开4号按键时在串口监视器中打印出“0”。二、实施步骤(四)读取开关输入

步骤2:在“voidloop(){”的下方输入如图所示的代码,完成“读取开关输入”代码的编写。

二、实施步骤(四)读取开关输入

步骤3:将流水灯多功能开发板安装在Arduino开发板上,把控制4号按键的1号开关和控制10号小灯的1号开关打至ON挡。

二、实施步骤(四)读取开关输入

步骤4:点击上传,如果操作顺利,就会显示上传成功,打开右上角的串口监视器,首先检查波特率是否匹配(相同的波特率为匹配);随后串口监视器会出现1000000000……的数字,此时10号灯是亮的,效果如图所示。

二、实施步骤(四)读取开关输入

步骤5:按下如图3-4-14所示的4号按键,瞬间会发现10号小灯会熄灭,串口监视器上的数字变成1,出现了数字1就说明已读取到开关输入的信息数据,串口监视器数字显示信息如图所示。

二、实施步骤(四)读取开关输入

步骤6:控制程序解析:定义一个整数型变量inPin(存储按钮开关连接管脚号)并赋值为4(对应4号管脚),定义一个整数型变量pinRead(存储从按钮开关连接管脚读取到的电平值)。在初始化函数中设置inPin引脚为上拉输入模式,定义串口波特率为9600,在loop循环函数中读取inPin的值保存在pinRead变量中,在串口监视器中打印pinRead的非值,延时1000ms。程序运行流程如图所示。二、实施步骤(五)开关与LED控制

步骤1:新建一个文档,//后的代号可删除;在【代码编写区域】中依次输入“intinPin=4;”和“intpinRead;”,随后在voidsetup(){的下方输入如图,

二、实施步骤(五)开关与LED控制

步骤2:在“voidloop(){”的下方输入如图3-4-18所示代码,完成“开关与LED控制”代码的编写

二、实施步骤(五)开关与LED控制

步骤3:如图所示,把控制5号小灯按键的2号开关和控制13号小灯的10号开关打至ON挡。步骤4:点击上传,如果操作顺利,就会显示上传成功,然后按下5号按键13号LED灯会亮,松开5号按键13号LED灯就会熄灭,这就是开关与LED的控制。

二、实施步骤(五)开关与LED控制

步骤5:控制程序解析:宏定义inPin=5,ledPin=13,定义一个整数型变量pinRead,在初始化函数中设置inPin为上拉输入模式,ledPin为输出

温馨提示

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

评论

0/150

提交评论