《Arduino技术及应用》课件—第10章 Inputoutput高级应用

合集下载

《Arduino技术及应用》课件—第3章 Arduino语言及程序结构

《Arduino技术及应用》课件—第3章  Arduino语言及程序结构

数学 min( ) max( ) abs( ) constrain( ) map( ) pow( ) sqrt( )
3.1.1 描绘程序码的符号
布尔运算符 &&(and) ||(or) !(not) 复合运算符号 ++(increment) --(decrement) +=(compound addition) -=(compound subtraction) *=(compound multiplication) /=(compound division) &= (compound bitwise and) |= (compound bitwise or)
❖ 浮点常量 floating point constants ❖ 和整型常量类似,浮点常量可以使得代码更具可读性。浮点常量在编译时被
转换为其表达式所取的值。 ❖ 例子: ❖ n = .005; 浮点数可以用科学记数法表示。'E'和'e'都可以作为有效的指数标志。
表 3-3 浮点常量的转换
浮点数 10.0
你看到的明明就是一个文字。 ❖ 用数字表示一个字元时,它的值有效范围为-128到127。 ❖ 注意:有两种主流的电脑编码系统ASCII 和UNICODE。 ❖ ASCII 表示了127个字元,用来在序列终端机和分时计算机之间传输文字。 ❖ UNICODE可表示的字元量比较多,在现代电脑作业系统内它可以用来表示多国
例子
格式
备注
10(十进制)
123

2(二进制) 8(八进制)
B1111011 0173
前缀“B” 只适用于8位的值(0到255)
字符0-1有效
前缀“0”

Arduino使用教程和典型范例

Arduino使用教程和典型范例
Arduino 使用教程
梦工厂
北京龙凡汇众机器人科技有限公司 E_mail: service@
Arduino 使用教程
http://
第一课 Arduino 语言
DreamFactory
2
Arduino 语言是建立在 C/C++基础上的,其实也就是基础的 C 语言,Arduino 语言只不过把 AVR 单片机(微控制 器)相关的一些寄存器参数设置等都函数化了,不用我们去了解他的底层,让不太了解 AVR 单片机(微控制器)的 朋友也能轻松上手。
DFRduino 与 Arduino 完全兼容,只是在原来的基础上作了些改进。Arduino 的 IO 使用的孔座,做互动作品需要面 包板和针线搭配才能进行,而 DFRduino 的 IO 使用针座,使用我们的杜邦线就可以直接把各种传感器连接到 DFRduino 上。
特色描述
1. 开放原始码的电路图设计,程式开发界面免费下载,也可依需求自己修改!! 2. DFRduino 可使用 ISP 下载线,自我將新的 IC 程序烧入「bootloader」; 3. 可依据官方电路图,简化 DFRduino 模组,完成独立云作的微处理控制器; 4. 可简单地与传感器、各式各样的电子元件连接(如:红外线,超声波,热敏电阻,光敏电阻,伺服电机等); 5. 支援多样的互动程式 如: Flash,Max/Msp,VVVV,PD,C,Processing 等; 6. 使用低价格的微处理控制器(ATMEGA168V-10PI); 7. USB 接口,不需外接电源,另外有提供 9VDC 输入接口; 8. 应用方面,利用 DFRduino,突破以往只能使用滑鼠,键盘,CCD 等输入的裝置的互动內容,可以更简单地达成单
外部中断函数

Arduino使用教程和典型范例

Arduino使用教程和典型范例
• detachInterrupt(interrupt) 中断开关,interrupt=1 开,interrupt=0 关。
中断使能函数
• interrupts() 使能中断 • noInterrupts() 禁止中断
串口收发函数
• Serial.begin(speed) 串口定义波特率函数,speed 表示波特率,如 9600,19200 等。
• delay(ms) 延时函数(单位 ms)。 • delayMicroseconds(us) 延时函数(单位 us)。
数学函数
• min(x, y) 求最小值 • max(x, y) 求最大值 • abs(x) 计算绝对值 • constrain(x, a, b) 约束函数,下限 a,上限 b,x 必须在 ab 之间才能返回。 • map(value, fromLow, fromHigh, toLow, toHigh) 约束函数,value 必须在 fromLow 与 toLow 之间和 fromHi
北京龙凡汇众机器人科技有限公司 Version 1.2
Arduino 使用教程
梦工厂
北京龙凡汇ห้องสมุดไป่ตู้机器人科技有限公司 E_mail: service@
Arduino 使用教程
http://
概述
DreamFactory
大工精机舟山有限公司
工学讲习所
讲 义 资 料
2011 年 浙江大工精机舟山有限公司
Arduino 使用教程
http://
DreamFactory
0
Arduino 控制器使用教程
DFRduino Duemilanove Compatible
Arduino 使用教程

arduino开发简介ppt课件

arduino开发简介ppt课件
1. 核心微控制器:Arduino Uno使用的是Atmel AVR ATmega328P微控制器。
9
精品ppt
Arduino开发平台介绍
Arduino开发板上需要关注的重点:
2. 外部连接排母。与外部交互的接口。Uno一共有28 个。
分成三组: (1)电源 (2)模拟输入 (3)数字输入/输出
10
2.2 常用的Arduino 第三方软件介绍
2.2.1 图形化编程软件ArduBlock
19
精品ppt
Arduino开发基础操作
2.2 常用的Arduino 第三方软件介绍
2.2.2 Arduino 仿真软件Virtual breadboard
20
精品ppt
Arduino开发基础操作
2.2 常用的Arduino 第三方软件介绍
2.2.2 Arduino 仿真软件Virtual breadboard
Virtual breadboard 是一款专门的Arduino 仿真 软件,简称VBB,中文名为“虚拟面包板”。这款软件 主要通过单片机实现嵌入式软件的模拟和开发环境, 它不但包括了所有Arduino 的样例电路,可以实现对 面包板电路的设计和布置,非常直观地显示出面包板 电路,还可实现对程序的仿真调试。
16
精品ppt
Arduino开发基础操作
2.1搭建开发环境
2.1.2 在windows上安装IDE(注意USB驱动,Java Framework,查看端口,选择主板类型)
17
精品ppt
Arduino开发基础操作
2.1搭建开发环境
2.1.2 在windows上安装IDE
18
精品ppt
Arduino开发基础操作

《Arduino技术及应用》课件—第10章 Inputoutput高级应用

《Arduino技术及应用》课件—第10章 Inputoutput高级应用
如图10-7所示,使用Arduino的数字引脚给SR04模块的Trig引脚至少10的高电平信 号,触发SR04模块的测距功能。
图100-8所示,触发测距功能后,樓块会自动发送8个40kHz的超声波脉冲,并自 动检测是否有信号返回。
图10-8 超声波模块发出超声波脉冲
物联网应用开发
第十章 I/O口高级应用
目录
1
10.1调声函数
❖ 调声函数tone( )主要使用在Arduino连接蜂鸣器或扬声器发生的场合, 其实质是输出一个频率可调的方波,以此驱动蜂鸣器或扬声器振动发 声。
1. tone( )
功能:在一个引脚上产生一个特定频率的方波(50%占空比)。 语法: tone(pin, frequency) tone(pin, frequency, duration)
INTERNAL1V1 INTERNAL2V56
EXTERNAL
使用内部1.1V参考电压(仅适用于 Arduino MEGA)
使用内部2.56V参考电压(仅适用于 Arduino MEGA)
使用从AREF引脚输入的外部参考电压
表10-2 ADC参考电压可用配置
·····
10.5 外部中断
程序运行过程中时常需要监控一些事件的发生,如对某一传感器的检测结果做出 反应。使用轮询的方式进行检测时效率较低,等待时间较长,而使用中断方式进行检 测则可以达到实时检测的效果。
如果使用的是模块,则可 直接连接到扩展板;如果使 用的是独立扬声器或者蜂鸣 器,则只需在其正极与 Arduino数字引脚之间连接一 个100Ω的限流电阻即可,连 接方法如图10-2所示。
图10-1 无源蜂鸣器模块
图10-2 扬声器、蜂鸣器模块使用连接示意图

玩转Arduino合集课件-PPT

玩转Arduino合集课件-PPT

多圈 旋转角度传感器
60行程 滑动电位器 推子
游戏杆 控制杆 JoyStick
模拟温度传感器
光线传感器
声音传感器
Sharp 红外距离传感器
• 30cm, 80cm, 150cm, 5.5m
三轴 加速度传感器
FlexiForce压力传感器
• 1 lb, 25 lb, 100 lb
FSR系列压力传感器
弯曲传感器
• 单向,双向
拉伸 传感器
• 4 inch, 6 inch
动手
• 实验各种模拟传感器 • 对RGB LED进行控制 • 分享
串口通信
• 串口通信(Serial Communication)是Arduino和计算机间 按位进行数据传输的一种最基本的方式。
• 使用3根线完成
– 地线,GND – 发送,Tx – 接收 ,Rx
– Serial.print(val, format) , Serial.println(val, format)
• 按指定格式输出(后者多一个回车换行)
Serial.print(val) 实例
• Serial.print(78)
– 输出"78"
• Serial.print(1.23456)
– 输出"1.23"
• 主要参数
– 波特率:通信速度,表示每秒钟传送的位(bit)的个数 – 数据位 – 停止位 – 奇偶校验位
Arduino 串口
• USB转串口
– PC端:串口 – Arduino端:USB
• 串口引脚
– RX:Pin 0 – TX:Pin 1
• 串口数目
– Arduino MEGA和Arduino 2560:4个 – 其余:1个

Arduino语法详解_含示例详解

Arduino语法详解_含⽰例详解Arduino 的程序可以划分为三个主要部分:结构、变量(变量与常量)、函数。

结构部分⼀、结构1.1 setup()1.2 loop()⼆、结构控制2.1 if2.2 if...else2.3 for2.4 switch case2.5 while2.6 do... while2.7 break2.8 continue2.9 return2.10 goto三、扩展语法3.1 ;(分号)3.2 {}(花括号)3.3 //(单⾏注释)3.4 /* */(多⾏注释)3.5 #define3.6 #include四、算数运算符4.1 =(赋值运算符)4.2 +(加)4.3 -(减)4.4 *(乘)4.5 /(除)4.6 %(模)五、⽐较运算符5.1 ==(等于)5.2 !=(不等于)5.3 <(⼩于)5.4 >(⼤于)5.5 <=(⼩于等于)5.6 >=(⼤于等于)六、布尔运算符6.1 &&(与)6.2 ||(或)6.3 !(⾮)七、指针运算符7.1 * 取消引⽤运算符7.2 & 引⽤运算符⼋、位运算符8.1 & (bitwise and)8.2 | (bitwise or)8.3 ^ (bitwise xor)8.4 ~ (bitwise not)8.5 << (bitshift left)8.6 >> (bitshift right)九、复合运算符9.1 ++ (increment)9.2 -- (decrement)9.3 += (compound addition)9.4 -= (compound subtraction)9.5 *= (compound multiplication)9.6 /= (compound division)9.6 &= (compound bitwise and)9.8 |= (compound bitwise or)变量部分⼗、常量10.1 HIGH|LOW(引脚电压定义)10.2 INPUT|OUTPUT(数字引脚(Digital pins)定义)10.3 true | false(逻辑层定义)10.4 integer constants(整数常量)10.5 floating point constants(浮点常量)⼗⼀、数据类型11.1 void11.2 boolean(布尔)11.3 char(有号数据类型)11.4 unsigned char(⽆符号数据类型)11.5 byte(⽆符号数)11.6 int(整型)11.7 unsigned int(⽆符号整型)11.8 word11.9 long(长整数型)11.10 unsigned long(⽆符号长整数型)11.11 float(浮点型数)11.12 double(双精度浮点数)11.13 string(char array/字符串)11.14 String object(String类)11.15 array (数组)⼗⼆、数据类型转换12.1 char()12.2 byte()12.3 int()12.4 word()12.5 long()12.6 float()⼗三、变量作⽤域 & 修饰符13.1 variable scope(变量的作⽤域)13.2 static(静态变量)13.3 volatile13.4 const⼗四、辅助⼯具14.1 sizeof()函数部分⼗五、数字 I/O15.1 pinMode()15.2 digitalWrite()15.3 digitalRead()⼗六、模拟 I/O16.1 analogReference() 16.2 analogRead()16.3 analogWrite() PWM ⼗七、⾼级 I/O17.1 tone()17.2 noTone()17.3 shiftOut()17.4 shiftIn()17.5 pulseIn()⼗⼋、时间18.1 millis()18.2 micros()18.3 delay()18.4 delayMicroseconds()⼗九、数学运算19.1 min()19.2 max()19.3 abs()19.4 constrain()19.5 map()19.6 pow()19.7 sqrt()19.8 ceil()19.9 exp()19.10 fabs()19.11 floor()19.12 fma()19.13 fmax()19.14 fmin()19.15 fmod()19.16 ldexp()19.17 log()19.18 log10()19.19 round()19.20 signbit()19.21 sq()19.22 square()19.23 trunc()⼆⼗、三⾓函数20.1 sin()20.2 cos()20.3 tan()20.4 acos()20.5 asin()20.6 atan()20.7 atan2()20.8 cosh()20.9 degrees()20.10 hypot()20.11 radians()20.12 sinh()20.13 tanh()⼆⼗⼀、随机数21.1 randomSeed()21.2 random()⼆⼗⼆、位操作22.1 lowByte()22.2 highByte()22.3 bitRead()22.4 bitWrite()22.5 bitSet()22.6 bitClear()22.7 bit()⼆⼗三、设置中断函数23.1 attachInterrupt()23.2 detachInterrupt()⼆⼗四、开关中断24.1 interrupts()(中断)24.2 noInterrupts()(禁⽌中断)⼆⼗五、通讯25.1 Serial25.1.1 if (Serial)25.1.2 Serial.available()25.1.3 Serial.begin()25.1.4 Serial.end()25.1.5 Serial.find()25.1.6 Serial.findUntil()25.1.7 Serial.flush()25.1.8 Serial.parseFloat()25.1.9 Serial.parseInt()25.1.10 Serial.peek()25.1.11 Serial.print()25.1.12 Serial.println()25.1.13 Serial.read()25.1.14 Serial.readBytes()25.1.15 Serial.readBytesUntil()25.1.16 Serial.setTimeout()25.1.17 Serial.write()25.1.18 Serial.SerialEvent()25.2 Stream⼆⼗六、USB(仅适⽤于 Leonardo 和 Due)26.1 Mouse(键盘)26.2 Keyboard(⿏标)以下是⽰例部分含详细注解结构部分⼀、结构1.1 setup()在Arduino中程序运⾏时将⾸先调⽤ setup() 函数。

《ARDUINO教程》课件


四、项目实战
闪烁的LED灯
实现一个简单的LED 灯闪烁效果,巩固基 础的数字输出控制。
数码管显示
学习如何驱动数码管, 显示数字、字符,实 现有趣的计数和文字 效果。
温度传感器读 取并显示
使用温度传感器读取 环境温度,然后通过 电子屏幕显示温度数 值。
震动开关控制 LED
利用震动开关传感器 的信号,控制LED灯 的开关状态,实现震 动检测功能。
Arduino的优势
Arduino具有易学易用、成本低廉、丰富的社区 支持和丰富的资源等优势。
常见的Arduino板型
Arduino Uno、Arduino Mega、Arduino Nano等是 最常见的Arduino开发板。
二、基础

1
Arduino编程语言
使用C/C++语言进行编程,简洁易学,与其他语言的转换也相对容易。
五、总结
1 Arduino的优势和局限性
总结Arduino的优点和限制,帮助学习者更好地理解和使用Arduino。
2 下一步学习路线
引导学习者进一步学习其他电子技术和创客领域,拓宽知识和技能。
3 Q&A
留出时间解答学习者对Arduino的疑问,加强交流和互动。
2
Arduino集成开发环境(IDE)
Arduino IDE是一个简单易用的软件工具,用于编写和上传代码到Arduino开发板。
3
硬件连线
学习如何正确连接电子元件,包括电阻、LED、按钮等,建立电路并与Arduino进行交互。
4
数字输入输出
了解数字引脚的输入和输出操作,控制LED灯、蜂鸣器等设备。
5
《ARDUINO教程》PPT课 件

《Arduino技术及应用》—教学大纲

《Arduino技术及应用》教学大纲课程中文名称:Arduino技术及应用课程英文名称:The Technology and Application of Arduino课程编号:********学分:3.0 总学时:48 实验学时:8 上机学时:开课学期:4适用专业:物联网工程、软件工程、电气工程、计算机应用、电子信息等专业先修课程:电路与电子技术、模拟与数字电子技术、程序设计技术、面向对象程序设计基础后续课程:传感器与射频识别技术、嵌入式操作系统、物联网技术与应用、企业定制课程开课单位:一、课程性质和教学目标(需明确各教学环节对人才培养目标的贡献,即专业人才培养目标中的知识、能力和素质)1.本课程所支撑的毕业要求毕业要求指标1.6 掌握Arduino相关的专业基础理论知识,并能用于解决物联网中感知层相关的复杂工程问题。

毕业要求指标3.2 掌握物联网工程感知层涉及的相关知识、技能、方法和行业规范、标准,了解社会、健康、安全、法律、文化以及环境等因素对Arduino开发的影响。

毕业要求指标3.6 能对物联网工程特定需求进行感知层模块的设计与实现,并能在设计环节中体现创新意识,考虑社会、健康、安全、法律、文化以及环境等因素。

毕业要求指标4.2 能够运用Arduino开源控制器进行物联网系统开发,对物联网体系架构、硬件(设备)接口技术等工作原理及复杂工程进行研究和实验验证。

2.课程性质与要求:Arduino技术及应用是**专业的专业必修课程。

Arduino是一款便捷灵活、方便上手的开源电子原型平台。

包含硬件(各种型号的Arduino 板)和软件(Arduino IDE)。

Arduino简单的开发方式使得开发者更关注于创意与实现,更快地完成自己的项目开发,大大节约学习的成本,缩短开发的周期。

如今它已成为了学习微控制器的首选,并且在全球智能化以及物联网快速发展的大背景下,将迎来学习它的新热潮。

通过本课程学习,学生可以了解Arduino技术基本概念和基本知识,掌握Arduino软硬件设计的基本方法。

《输入输出技术》PPT课件 (2)

COMPUTER SCIENCE AND TECHNOLOGY
吉林大学 COMPUTER SCIENCE AND TECHNOLOGY
8088专用I/O指令
• 对于采用直接寻址方式,其指令格式为: 输入指令:IN AL,n和IN AX,n 输出指令:OUT n,AL和OUT n,AX
• 对于采用间接寻址方式,其指令格式为: 输入指令:IN AL,DX和IN AX,DX 输出指令:0UT DX,AL和OUT DX,AX
(2)对外设的访问和对存储器的访问一样,必须对全部地址线译码,因而 地址译码电路比较复杂。
(3)存储器操作指令字节长,需要较长的执行时间,降低了I/O操作速度。 (4)用存储器指令来处理输入/输出,在程序清单中不易区别,给程序的设
计,分析和调试带来一定的困难。
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
吉林大学 COMPUTER SCIENCE AND TECHNOLOGY
门电路组合法
• 常见的端口地址选择方法有三种:门电路组合法、译码器译码法、 比较器比较法。
• 门电路组合法是最简单的一种端口地址选择方法,它采用常见的 逻辑门电路,比如与门、或门、非门等作为基本的组合元件。
• 这种方法简单、直观,适合于单个端口,常用的基本门电路有 7400(2输入4与非门)、7408(2输入4与门)、7420(4输 入双与非门)、7430(8输入与非门)、7402(2输入4或非 门)、7432(2输入4或门)、7404(六反相器)等等。
COMPUTER SCIENCE AND TECHNOLOGY
译码器译码法
吉林大学 COMPUTER SCIENCE AND TECHNOLOGY
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

10.2.1 脉冲宽度测量函数
其应用有如下特点:
功能:检测指定引脚上的脉冲信号宽度。
例如,当要检测高电平脉冲时,pulseIn( )函数会等待指定引脚输入的电平变高,在变高 后开始计时,直到输入电平变低时,计时停止。pulseIn( )函数会返回此脉冲信号持续的 时间,即该脉冲的宽度。 pulseIn( )函数还可以设定超时时间。如果超过设定时间仍未检测到脉冲,则会退出 pulseIn( )函数并返回0。当没有设定超时时间时,pulseIn( )函数会默认1秒钟的超时时间 。
语法:
pulseIn(pin,value) pulseIn(pin,value,timeout)
10.2.1 脉冲宽度测量函数
参数:
pin,需要读取脉冲的引脚。 value,需要读取的脉冲类型,为HIGH或LOW。 timeout,超时时间,单位为微秒,数据类型为无符号长整型。
返回值:
换行返回脉冲宽度,单位为微秒,数据类型为无符号长整型。如 果在指定时间内没有检测到脉冲,则返回0。
如果使用的是模块,则可 直接连接到扩展板;如果使 用的是独立扬声器或者蜂鸣 器,则只需在其正极与 Arduino数字引脚之间连接一 个100Ω的限流电阻即可,连 接方法如图10-2所示。
图10-1 无源蜂鸣器模块
图10-2 扬声器、蜂鸣器模块使用连接示意图
10.2脉冲宽度测量函数及超声波测距
Arduino提供的pulseIn( )函数用于检测指 定引脚上脉冲信号的宽度。
参数:
pin,需要输出方波的引脚。 frequency,输出的频率,单位Hz,类型unsigned int。 duration,频率持续的时间,单位毫秒。类型unsigned long。 返回值:无。

10.1调声函数
2. noTone( )
功能:停止由tone( )产生的方波。如果没有使用tone( )将不会有效果 。 语法: noTone(pin)
如图10-9所示,若有信号返回,则Echo引脚会输出高电平,高电平持续的时间就 是超声波从发射到返回的时间。此时可以使用PulseIn( )函数获取测距的结果,并 计算出距被测物体的实际距离。这一步由模块内部自动完成。
10.2.2 超声波测距
图10-9 超声波模块返回测距结果
10.2.2 超声波测距
5. 连接示意图
超声波测距示例连接示意图如图10-10所示。
图10-10 超声波测距示例连接示意图
如图10-10所示,本示例将超声波模块的Trig引脚连接到Arduino的2号引脚,Echo引脚连接 到Arduino的3号引脚。
10.3 简易电子琴
图10-12 简易电子琴项目连接示意图
例子
如图10-12所示, 本项目使用7个按键 分别连接7个引脚, 并给每个引脚加上 10KΩ的下拉电阻以 稳定引脚上的电平。 Arduino通过依次检 查各按键的状态来 控制10号引脚上输 出的方波,以驱动 蜂鸣器发出各种不 同的音调。
图10-6 超声波发射/接收示意图
10.2.2 超声波测距
3. 超声波模块引脚
SR04超声波模块有4个引脚,各功能如表10-1所列。 表10-1 SR04超声波模块引脚
引脚名称 Vcc Trig Echo Gnd
说明 电源5V 触发引脚 回馈引脚

10.2.2 超声波测距
4. 超声波模块的使用方法及时序图
1 声波探头,分别用做发射和接收超声波。其测量范围是3-450cm。
图10-5 SR04超声波传感器
10.2.2 超声波测距
2. 超声波测距的工作原理
如图10-6所示,超声波发射器向某一方向发射超声波,在发射的同时开 始计时;超声波在空气中传播,途中碰到障碍物则立即返回,超声波接 收器收到反射波则立即停止计时。声波在空气中的传播速度为340m/s, 根据计时器记录的时间C,即可计算出发射点距障碍物的距离s,即 s=340m/s×t/2。这就是所谓的时间差测距法。
10.2.2 超声波测距
超声波是频率高于20000Hz的声波,它的指向性强,能量消 耗缓慢,在介质中传播的距离较远,因而经常用于测量距离。
超声波传感器的型号众多,这里介绍一款常见的超声波传感 器。
10.2.2 超声波测距
1. SR04超声波传感器
SR04(图10-5)是利用超声波特性检测距离的传感器。其带有两个超
10.4 设置ADC参考电压
基础 概念
在使用analogRead( )函数读取
模拟输入口的电压时,函数
返回值的计算方法为
analogRead(pin)函数返回
值=
被测电压
1023
参考电压
当用户没有设置参考电压时 ,Arduino会默认使用工作电 压作为参考电压。大多数 Arduino控制器的工作电压都 为5V,所以默认参考电压也 为5V。
如图10-7所示,使用Arduino的数字引脚给SR04模块的Trig引脚至少10的高电平信 号,触发SR04模块的测距功能。
图10-7 Arduino发送触法信号
如图10-8所示,触发测距功能后,樓块会自动发送8个40kHz的超声波脉冲,并自 动检测是否有信号返回。
图10-8 超声波模块发出超声波脉冲
当要测量的电压较小时或对测量精度要求 较高时,可以通过降低参考电压来使测量 结果更精准。Arduino提供了内部参考电压 ,但内部参考电压并不准确,如果使用的 话反而会使精度降低。在实际应用中,一 般通过输人高精度的外部参考电压来提高 检测精度。 在Arduino控制器上有一个AREF引脚,可 以从该引脚给Arduino输人外部参考电压, 同时需要使用analogReference( )函数来设置 Arduino使用外部参考电压。其调用形式为 :
物联网应用开发
第十章 I/O口高级应用
目录
1
10.1调声函数
❖ 调声函数tone( )主要使用在Arduino连接蜂鸣器或扬声器发生的场合, 其实质是输出一个频率可调的方波,以此驱动蜂鸣器或扬声器振动发 声。
1. tone( )
功能:在一个引脚上产生一个特定频率的方波(50%占空比)。 语法: tone(pin, frequency) tone(pin, frequency, duration)
参数:
pin,所要停止产生声音的引脚。 返回值:无。注意:如果你想在多个引脚上产生不同的声音,你要 在对下个引脚使用tone( )前对刚才的引脚调用。
10.1调声函数
3.无源蜂鸣器模块 无源蜂鸣器模块(图10-1)是一种一体
化结构的电子讯响器,采用直流电压供电, 广泛应用于计算机、报警器和电子玩具等电 子设备中。
相关文档
最新文档