Arduino入门

目录

第1小节 简介

第2小节 认识Arduino Uno

第3小节 arduino IDE下载方法

第4小节 驱动的安装方法

第5小节 Arduino IDE设置和工具栏介绍

第6小节 库文件的添加

第7节 单个传感器实验课程

实验一  点亮LED

实验三  激光头传感器模块发出激光

实验四  按键传感器检测实验

实验五  电容触摸传感器检测实验

实验六  避障传感器检测障碍物

实验七  巡线传感器检测黑白线

实验八  光折断计数

实验九  倾斜模块的原理

实验十  碰撞传感器的原理

实验十一  霍尔传感器检测南极磁场

实验十二  干簧管检测附近磁场

实验十三  附近有人吗

实验十四  有源蜂鸣器模块播放声音

实验十五  8002b功放 喇叭模块

实验十六  130电机模块

实验十七  插件RGB模块调节LED颜色

实验十八  旋转电位器传感器读取模拟值

实验十九  水滴水蒸气传感器

实验二十  声音传感器检测声量

实验二十一  光敏电阻传感器

实验二十二  NTC-MF52AT模拟温度传感器

实验二十三  薄膜压力传感器

实验二十五 MQ-3 酒精传感器

实验二十六  SK6812 RGB模块

实验二十七  红外遥控与接收

第8节 传感器/模块组合实验课程

实验二十八 呼吸灯

实验二十九 按键控制LED灯

实验三十  障碍物报警实验

实验三十一 紫外线报警

实验三十二  人体红外报警

实验三十三 音乐播放

实验三十四  灭火机器人的原理

实验三十五  旋转编码器模块控制RGB模块

实验三十八  6812花样彩灯

实验三十九  红外遥控灯

相关资料链接


 

第1小节 简介

  1. 什么是Arduino/strong>

Arduino入门

Arduino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的Arduino板)和软件(Arduino IDE)。由一个欧洲开发团队于2005年冬季开发。

其特点有:

跨平台
Arduino IDE可以在Windows、Macintosh OS X、Linux三大主流操作系统上运行,而其他的大多数控制器只能在Windows上开发。

简单清晰
Arduino IDE基于processing IDE开发。对于初学者来说,极易掌握,同时有着足够的灵活性。 

开放性
Arduino的硬件原理图、电路图、IDE软件及核心库文件都是开源的,在开源协议范围内里可以任意修改原始设计及相应代码。

编程方式多样代码简洁
Arduino编程主要有以下几种方式:第一种是使用官网Arduino IDE编程环境,这可以在官网下载,支持Windows,MacOS,Linux操作系统。第二如果不太喜欢写代码,或者是教小孩子玩Arduino,也有图形化的编程环境,比如Mixly/Scratch。

型号多样

Arduino主板有很多型号,比如:
Arduino Uno, Arduino Nano, Arduino Nano, Arduino LilyPad, Arduino Mega 2560, Arduino Ethernet, Arduino Due, Arduino Leonardo

!注意:在接下来的课程种我们主要介绍的是Arduino Uno开发板的性能和用法。

第2小节 认识Arduino Uno

本课程以Arduino uno为主板

(1)规格参数

主控芯片:ATMEGA328微控制器

USB转串口芯片:Atmega16U2

USB线供电:5v

外接电源:7-12v,建议用9v

数字输入/输出引脚14个(其中6个支持PWM)

模拟输入引脚  6范围

IO输出电流:20mA

3.3V输出电流:50mA

内置闪存:32K

SRAM : 2k

EPROM:1K

时钟频率:16MH

Arduino入门

ICSP接口:给ATMEGA328P-AU烧录固件接口

数字口:D0-D13

串口通信:D0(RX)和D1(TX)

外部中断:D2(中断0)和D3(中断1)

PWM口:D3、D5、D6、D9、D10和D11

SPI通信:D10(SS)、D11(MOSI)、D12(MISO)和D13(SCK)

LED:D13标志“L”的LED

USB接口:用于下载程序与串口调试

DC电源接口:可接入7V-12V范围内电压

电源输出接口:输出3.3V或5V,常用于对外供电或进行共地处理

模拟口A0-A5:IIC通信:A4(SDA)和A5(SCL)

也可当做数字口使用:A0(D14)、A1(D15)、A2(D16)、A3(D17)、A4(D18)和A5(D19)

第3小节 arduino IDE下载方法

我们先到arduino 官方的网站Arduino – Home下载最新版本的arduino开发软件,进入网站之后点击界面上的SOFTWARE,选择DOWNLOADS进入下载页面,如下图:

Arduino入门

Arduino 软件有很多版本,有wodows,mac linux系统的(如下图),而且还有过去老的版本,你只需要下载一个适合系统的版本。

这里我们以WINDOWS系统的为例给大家介绍一下下载和安装的步骤。

WINDOWS系统的也有两个版本,一个版本是安装版的,一个是下载版的不用安装,直接下载文件到电脑,解压缩就可以用了。

Arduino入门

两个版本都可以正常使用,看你自己的喜好了。选择一个版本,然后将Arduino 开发软件下载到我们的电脑。

Arduino入门

一般情况下,我们点击JUST DOWNLOAD就可以下载了,当然如果你愿意,你可以选择小小的赞助,以帮助伟大的ARDUINO 开源事业。

第4小节 驱动的安装方法

接下来是开发板驱动的安装,这次我们安装的是Arduino Uno 开发板的驱动,这个开发板的USB转串口芯片是Atmega16U2。在ARDUINO 开发软件1.8以上的版本里就已经包含了这个芯片的驱动程序,这样我们使用起来会非常方便。一般插上USB,电脑就会识别到硬件,WINDOWS就会自动安装Atmega16U2的驱动。

如果驱动安装不成功,或者你想手动安装驱动,请打开电脑的设备管理器

显示Atmega16U2的驱动没有安装成功,有一个黄色的感叹号。我们双击硬件更新驱动

(目前克隆版的Arduino比较多,如果你的板子是其他驱动可以选择相应的驱动文件,这里还提供了CH340、CP2101驱动)

Arduino入门

Arduino入门

浏览计算机查找驱动文件。驱动文件的下载链接

Arduino入门

Arduino入门

我们选择这个文件夹,然后点击确定,驱动安装成功。

Arduino入门

这个时候再打开设备管理器,我就可以看到Atmega16U2的驱动程序已经安装成功了,刚刚的那个黄色的感叹号不见了。

Arduino入门

第5小节 Arduino IDE设置和工具栏介绍

装好了开发板的驱动,我们下面要了解Arduino开发软件的使用了,首先我们点击电脑桌面上的

Arduino入门图标,打开Arduino IDE。

 

Arduino入门

为了避免在将程序上载到板上时出现任何错误,必须选择正确的Arduino板名称,该名称与连接到计算机的电路板相匹配。转到工具→开发板,然后选择你的板。

Arduino入门

然后再选择正确的COM口(安装驱动成功后可看到对应COM口)。

Arduino入门

我们的程序上传到板之前,我们必须演示Arduino IDE工具栏中出现的每个符号的功能。

Arduino入门

A – 用于检查是否存在任何编译错误。

B – 用于将程序上传到Arduino板。

C – 用于创建新草图的快捷方式。

D – 用于直接打开示例草图之一。

E – 用于保存草图。

F – 用于从板接收串行数据并将串行数据发送到板的串行监视器。

启动你的第一个程序

上面我们学习了怎么下载软件和安装开发板的驱动,那下面我们就开始正式开始第一个程序,打开文件选择例子,选择第一个文件BASIC里面的BLINK程序

Arduino入门

按照前面方法设置板和COM口,IDE右下角显示对应板和COM口。

Arduino入门

点击

Arduino入门图标开始编译程序,检查错误,检查无误。

Arduino入门

点击点击—>图标开始上传程序,上传成功。

Arduino入门

程序上传成功,板载的LED灯亮一秒钟,灭一秒钟,恭喜你的第一个程序完成了!

第6小节 库文件的添加

首先找到arduino库文件夹:

Arduino入门

然后把所要用到的库文件复制在这个文件夹下就行了。

第7节 单个传感器实验课程

我们下面的课程是先从简单到复杂学习单个模块/传感器的原理,后面再学习一些模块/传感器的组合应用以巩固加深我们的理解。

特别注意:实验时,模块/传感器连接线材时,必须按照资料里的接线方法及位置,电源与信息脚不能错接,否则会损坏模块/传感器。

实验一  点亮LED

实验说明

LED模块:它的控制方法非常简单,要想点亮LED,只要让它两端有一定的电压就可以。

实验中,我们通过编程控制信号端S的高低电平,从而控制LED的亮灭。我们提供两个实验程序,分别控制LED模块上实现点亮和闪烁的效果。

Arduino入门

实验原理

下面附了两个电路原理图,左边我们直接把LED串联一个电阻,负极接地,正极接到单片机的IO口,理论上来说当我们把信号端S输出高电平(5V),LED两端就会有电压,LED就会被点亮,那么我们为什么说这么接不合理呢因就是我们单片机IO口输出电流的能力有限(最大20mA),虽然输出了高电平,但是可能达不到控制LED的电流,此时LED可能比较暗。

右边的接法:控制时,GND和VCC上电后,如果信号端S为高电平,那么三极管Q1就会导通,则LED有电流流过,LED即会亮起(注意:此时电流是由VCC电源端流经LED和电阻R3到GND,而不是直接从单片机IO口输出,此时输出电流的能力就比较强),S端为低电平时三极管Q1截止,那么就没有电流流过LED,那么LED就会熄灭。也就是说,我们这里的三极管Q1相当于一个开关作用,而电阻R1,R3都是一个限流电阻,顾名思义就是限制电流的大小,以免烧坏电子元器件。

Arduino入门
Arduino入门

实验器材

Arduino入门 Arduino入门 Arduino入门

 LED模块*1

Arduino主板*1

连接线*1

接线图

Arduino入门

实验代码

代码1:

代码2:

代码说明

代码1说明:

  1. int ledPin = 3;int是变量类型范围为-32,768 ~ 32,767,这条代码语句意思是取个ledpin的变量名然后赋值为3,后面我们需要用到这个引脚时就直接使用ledpin而不用“3”,当我们接的传感器模块多了,引脚多了我们就需要这样设置一个简单易记的变量名方便我们使用。
  2. pinMode(pin,mode);pin是用于设置模式的Arduino引脚号;mode为模式,可选:输入模式INPUT,输出模式OUTPUT或输入上拉INPUT_PULLUP,在这里我们设置了管脚3为输出模式。
  3. digitalWrite(pin, value);pin是单片机数字管脚,在这里我们定义了管脚3;value是你将要输出的数字电平(HIGH/LOW);如果使用pinMode()将引脚配置为OUTPUT,则其电压将设置为相应的值:5V(在3.3V板上为3.3V)为HIGH,低电平为0V(接地)。如果没有把pinMode()设置为OUTPUT,而是将LED连接到引脚,则在调用digitalWrite(HIGH)时,LED可能会变暗。因为此时digitalWrite()将启用内部上拉电阻,其作用类似于一个大限流电阻。

代码2说明:

  1. setup()中代码是只执行一次,而loop()函数里面的代码是一直循环执行。delay(ms);延时函数,ms为暂停的毫秒数,数据类型:unsigned long(范围 0~ 4,294,967,295 (2^32 – 1))。
  2. 通过整合前面知识。我们再来看代码就清楚明了了,代码中第一条我们把模块信号端接到ledpin也就是数字口D3,设置为高电平,就是点亮模块上LED;第二条延迟1000毫秒,就是让模块上LED点亮1秒。同样第三条第四条代码表示让模块上LED熄灭1秒。代码默认循环,也就是控制模块上LED,循环亮1秒,灭1秒,实现闪烁效果。通过代码设置,我们可

    来源:千年糊涂

    声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年5月23日
下一篇 2022年5月24日

相关推荐