arduino快速入门

  • 介绍arduino的使用方法以及esp8266使用
    • 工具栏介绍
    • 代码界面
    • 第一个功能
    • 第二个功能
    • 外接LED灯

介绍arduino的使用方法以及esp8266使用

(需要C基础)
我会简单地介绍一下arduino(IDE)的工作配置,以及用简单的案例来让初学者快速入门。在此,我使用esp8266(NodeMCU版)的案例来讲解。以及会涉及到esp8266(NodeMCU)的使用。
ps:这里不介绍arduino的硬件方面;不涉及环境安装方面。
不介绍→

第一次入门硬件需要理解的概念:arduino(IDE)就是一个写代码的环境,写好代码之后将编译好的代码逻辑传到开发板中运行,之后和arduino(IDE)无任何关系。
就是说将 “控制开发板的命令” 在arduino(IDE)中按规定写好,然后将命令 传(或者叫烧录) 到开发板中,开发板按你给它的命令一条条执行。

工具栏介绍

)

1.文件–>示例此处是每个库函数的标准示例代码,在刚入手一个库文件时,可以使用示例代码快速了解,当然这里也有最基本的几个内置示例代码。
2. 编辑不需要讲ヽ(✿゚▽゚)ノ
3. 项目–>加载库–>管理库这里就是下载库函数的地方。
4. 工具–>开发板这里选择你的开发板
工具–>UploadSpeed一般直接选择最大值就行,就是将代码烧到开发板的速度。
工具–>端口这里选择你开发板所连接到的接口(只有一个开发板连到电脑的时候就选唯一的那个就行)
6.
快捷栏按钮功能依次为----编译-上传-新建-打开-保存----------打开串口监视器
(以上只说明了个人比较常用的几个功能)

代码界面

如上面的图片显示的一样
新建的内容只有两个函数
setup()和loop()
其实,所有的代码无论多复杂,都遵循着种格式。
setup()里面的代码只运行一遍,类似于初始化。
loop()里面的代码会无限循环运行,说白了就是一个while(true){…}的死循环。
这里没有mian函数来执行,setup()加loop()就相当于main函数。

下面我通过讲解一个示例代码来让初学者快速了解如何play arduino

第一个功能

Blink
这里我们打开文件–>示例–>内置示例–>01.Basics–>Blink

完全由一个setup()和一个loop()构成
首先看setup():

  • pinMode(参数1,参数2); 可以理解为初始化函数。
    参数1为需要设置的串口,或者某单位,参数2为将参数1设置为某状态。
    图中blink代码功能为将LEB_BUILTIN设置为OUTPUT模式

参数1 的常用参数为串口,就是你手中开发板的各个引脚
参数2 的常用参数为OUTPUT和INPUT,一个为输出,一个为输入
LEB_BUILTIN是开发板上自带的一个 led灯

下面看loop():
总共两个函数 一个是digitalWrite(); 一个是delay();

  • digitalWrite(参数1,参数2); 函数功能为将参数1写入数字信号参数2。
    参数1就是之前pinmode过的LEB_BUILTIN,参数2为写入的内容
    使用这个函数就是将“HIGH”信号写入LEB_BUILTIN
    即给led灯高电平,让led灯变亮。
    第二个同理就是给led灯低电平,让led灯变暗。

  • delay(参数1);函数功能为等待或者叫延时。
    参数1为int,单位为毫秒。
    delay(500);就是等待500毫秒(0.5秒)

总结就是对led灯输入高信号,等待0.5秒,输入低信号,等待0.5秒,然后无限循环
即 亮0.5秒,暗0.5秒,亮0.5秒,暗0.5秒~ 进行闪烁。

由于这是示例代码,所以可以直接烧录了。
分析完内容之后,我们直接点击烧录上传

注意:上传之前,确保选定正确的开发板和端口。
以及在烧录失败之后别气馁,硬件可以通过再来一遍来解决问题。
因为硬件即玄学
因为硬件会受天时地利人和的影响:-D

然后观察开发板,烧录成功之后,你就会看到开发板的led小灯闪烁的盛景了。

第二个功能

既然已经学会了闪烁,那么led灯的另一个优秀功能也不能少:呼吸灯。

在呼吸之前,先简单地说两个概念——数字信号和模拟信号。
已经知道的同志可以跳过了。

010101010类似于这种只有两个状态的,就是数字信号。
例如开关,亮黑,正反。这种只有两种状态的情况,上面刚刚说过的闪烁灯就是数字信号(只有HIGH和LOW)。
而模拟信号就是可以渐变式的表示。可以连续地用多组数值表示的信号。
接下来要了解的呼吸灯就会用到模拟信号。
例如声音的高低,灯的亮度等等,可以让数值从1到100随意取值(假设区间为1到100)
如图,左边是模拟信号,右边是数字信号。

更多概念请百度= _ =: 万恶度娘.

好了,直接看呼吸灯的代码:

stepup();中依旧是pinmode我们的小led灯。
此处,我增加了一个Serial,串口函数
以下是serial函数的几个接口:

Serial.begin(); //开启串行通信接口并设置通信波特率Serial.end();    //关闭通信串口Serial.available();//判断串口缓冲器是否有数据装入Serial.read();    //读取串口数据Serial.peek();    //返回下一字节(字符)输入数据,但不删除它Serial.flush();    //清空串口缓存Serial.print();    //写入字符串数据到串口Serial.println();   //写入字符串数据+换行到串口Serial.write();     //写入二进制数据到串口Serial.SerialEvent();//read时触发的事件函数Serial.readBytes(buffer,length);//读取固定长度的二进制流Serial.println(incomingByte, DEC);//打印接到数据十进制表示的ascii码。  HEX 十六进制表示

加入串口监视器功能的目的是能让我们看到数据,确保传送的数据是自己想要的数据。

loop();中是两个for循环(逻辑内容不解释了)
其中,我手上esp8266板范围是(0~1024),并且这坑爹板子还是0代表最亮,1024代表最暗!(╯‵□′)╯︵┴─┴
因为在比较亮的区间肉眼观察效果不太明显,所以我设置成了500到1024.

然后烧写。。。
上传成功之后可以看到小灯灯在生动的 娇喘 呼吸。
打开串口监视器,选择serial.begin()中设置的波特率,然后就能时刻观察到 i 的数值。

外接LED灯

在学会操作内置led灯后,我们将尝试使用引脚来操作外接设备

  • 引脚介绍
      D开头的(D0,D1,D2等等)就是数字信号引脚
      A开头的(A0等等)就是模拟信号引脚。
      TX和RX为输入输出口。(注意:TX为数据输出,RX为数据输入。在两开发板对接数据流通时,输入对应输出,输出对应输入!就是TX接RX,RX接TX)
      GND为接地(或者电源负极)
      3V3或者Vin为电源正极
    (其他引脚这里不解释)

LED灯:

长引脚接正极,短引脚接地。
代码:

和之前的blink几乎一样,唯一不同就是pinmode的引脚,digitalWrite的引脚发生了改变。
效果就是本来开发板内置的LED变成了外接的LED灯。
烧录,效果:

然后是呼吸灯:

需要注意的是LED灯的范围是正常的0到255(0最暗,255最亮)
然后烧录,效果:

arduino基础-基于esp8266相关推荐

  1. arduino loar_采用ESP8266和Arduino设计基于IoT的患者健康监测系统

    随着大量新的医疗保健技术的发展,物联网正在迅速改变医疗保健行业.在本篇文章中,我们使用ESP8266和Arduino设计了一款基于IoT的患者健康监测系统.该项目中使用的物联网平台是ThingSpea ...

  2. 最简单DIY基于ESP8266的智能彩灯②(在网页用按键和滑动条控制RGB灯)

    ESP8266和ESP32智能彩灯开发系列文章目录 第一篇:最简单DIY基于ESP8266的智能彩灯①(在网页用按钮点亮普通RGB灯) 第二篇:最简单DIY基于ESP8266的智能彩灯②(在网页用按键 ...

  3. 最简单DIY基于ESP8266的智能彩灯③(在网页用按钮+滑动条+手机APP控制RGB灯)

    ESP8266和ESP32智能彩灯开发系列文章目录 第一篇:最简单DIY基于ESP8266的智能彩灯①(在网页用按钮点亮普通RGB灯) 第二篇:最简单DIY基于ESP8266的智能彩灯②(在网页用按键 ...

  4. 基于ESP8266网页控制RGB三色灯的颜色

    基于ESP8266网页控制RGB三色灯的颜色 首先让我们来了解一下的RGB三色灯的原理,RGB有四个引脚,最短的引脚接地,另外三个引脚接高电平,依次是亮红色,绿色,蓝色,这是三种最基本的配色,然而我们 ...

  5. 基于ESP8266的联网温度监测点

    基于ESP8266的联网温度监测点 起源 是啥玩意 耗材 电路 程序 esp8266部分 网站PHP程序 接收程序 查看程序 使用方法 起源 闲的慌,想找点事情做 监测详细的温度可以作为其他自动化控制 ...

  6. php与硬件通过wifi对接,基于ESP8266的WiFi排插接入贝壳互联实现天猫精灵控制

    认识众多玩家高手/拆客/DIYer,查阅更多资源,一起学习技术知识 您需要 登录 才可以下载或查看,没有帐号?立即注册 x 本帖最后由 hzy3774 于 2020-1-8 00:45 编辑 * 实验 ...

  7. Obloq模块:基于ESP8266的物联网模块

    OBLOQ 物联网模块 OBLOQ模块是DFRobot公司开发的一款基于ESP8266芯片的物联网通信模块.模块使用串口(TTL UART)和Arduino(或者其他单片机)通信,支持MQTT,HTT ...

  8. Arduino基础入门篇01—进入Arduino的世界

    欢迎来到Arduino的世界,本文主要介绍Arduino的优势,开发所涉及的硬件分类,开发语言及开发环境的下载.可登陆Arduino官网学习了解更多Arduino信息. 什么是Arduino Ardu ...

  9. 最简单DIY基于ESP8266的智能彩灯①(在网页用按钮点亮普通RGB灯)

    ESP8266和ESP32智能彩灯开发系列文章目录 第一篇:最简单DIY基于ESP8266的智能彩灯①(在网页用按钮点亮普通RGB灯) 文章目录 ESP8266和ESP32智能彩灯开发系列文章目录 前 ...

最新文章

  1. 4 种数据库缓存最终一致性的优缺点对比?最终选择方案四!
  2. Cloudera Manager安装之利用parcels方式(在线或离线)安装3或4节点集群(包含最新稳定版本或指定版本的安装)(添加服务)(Ubuntu14.04)(五)...
  3. element表格图片放大_图片在表格中,鼠标经过图片上方,图片有放大预览效果 (vue+element )...
  4. 【问链-Eos公开课】第二课 EOS环境搭建(Ubuntu系统下)
  5. 虚拟机上装的centos7使用xshell连接不上_使用Xshell连接虚拟机Ubuntu
  6. 1004 C语言设置测试数据个数和测试结束标志
  7. 对服务与工厂感到困惑
  8. redmine cannot load such file – rbpdf-font
  9. 安卓手机管理器_神器推荐,安卓手机拯救者来了!!!
  10. Ivy Bridge处理器
  11. 郑州市城市建成区20年时空变化特征提取与分析
  12. html新建文件夹,JS实现新建文件夹功能
  13. xp 无法关闭计算机,电脑xp系统关不了机,一直显示在正在关机为什么 除了重装,还能怎么办...
  14. 采集工具助力企业拓客,让你的业务快速扩张
  15. 辣评10月自主SUV销量:优胜劣汰开始 哪些产品将死得其所?
  16. 【转载】纳兰性德的诗词全集
  17. 【重要征稿】IEEE 2022年网络、计算机和通信国际学术研讨会(ISNCC2022)
  18. “魔盗”窃密木马(FakeCDR)研究
  19. 03.尚硅谷网课3-字符实体与语义标签
  20. windows 新版skia编译 版本号m37_2062(2018.1.1)

热门文章

  1. LeetCode 6 ZigZag Conversion(Z型转换)(String)
  2. AXURE RP EXTENSION For Chrome----解决办法
  3. 帆软初级证书 第一部分 Fine Report 答案
  4. 西电操作系统上机实验4
  5. 5G协议与信令(笔记)
  6. PLECS中DLL模块的使用
  7. 基于java MySQL 毕业设计 超市进销存系统
  8. OSPF初级知识整理
  9. sonix sn9c120a 芯片的官方资料
  10. Ubuntu20.04 AX210无线网卡驱动解决方法之一