Arduino开发教程
🎏🎏主要开发专栏🎏🎏
《arduino学习》:学习最简单开源便利的单片机Arduino,与时俱进😆😆😆
《Arduino编程参考》:本专栏围绕Arduino语法和Arduino库使用开发;🌻🌻🌻
《 Arduino小项目开发》:本专栏围绕Arduino生态结合实际需求设计综合的小项目开发。🌼🌼🌼
《HomeAssistant》:介绍homeassistant中基本开发, 重点设计esphome和nodered开发,包含小爱同学打印机等诸多设备添加。🎉🎉🎉
总之我会持续更新对应专栏博客(开源一直会维持在60%),部分付费专栏迫于交话费,买杯咖啡!
1 前言
Arduino出生于Ivrea交互设计学院,是一种用于快速制作原型的简便工具,主要面向没有电子和编程背景的学生。
官网支持:https://www.arduino.cc/
国内支持:
- Arduino 教程_w3cschool:https://www.w3cschool.cn/arduino/
- Arduino中文论坛DF:https://mc.dfrobot.com.cn/forum-92-1.html
- Arduino太极创客开发:http://www.taichi-maker.com/
Arduino板一旦进入更广泛的社区,便开始进行更改以适应新的需求和挑战,将其产品从简单的8位板扩展到IoT应用,可穿戴,3D打印和嵌入式环境的产品。🎉🎉🎉
所有Arduino硬件和软件都是完全开源的,使用户能够独立构建它们,并且通过全球用户的贡献而不断发展。笔者认为就是便携带的小伙伴,根据提前设定的要求完成一定的动作反馈!
1.1 大道之悟
作为单片机初学者😆😆😆,本人首选Arduino,刚开始不免会有许多困惑,现在也小有成就,都是慢慢积累的过程,现在养成了每周在CSDN上写博客的习惯,就算是翻译国外友人的idea也同样有所发展。
既然我们齐聚C站,秉着“终生学习,共享进步!!!”的理念,我们将学会用arduino常用传感器和执行器,通过以下三个篇章,由浅入深,由低到高,由差到强层层递进。🤞🤞🤞
1.2 Arduino 硬件
多年来,Arduino发布了100多种硬件产品:板,扩展板,载体,套件和其他配件。在此页面中,您将找到所有活动Arduino硬件的概述,包括Nano,MKR和Classic系列。
官网支持;https://www.arduino.cc/en/hardware
常见Arduino开发板系列有Uno、Nano、Mega2560、ESP8266、ESP32、PI PICO,他们的生态还在不断壮大,会有越来越多的开发板支持!
- Arduino Uno:入门版
- Arduino UNO是基于ATmega328P的微控制器板。它具有 14 个数字输入/输出引脚(其中 6 个可用作 PWM 输出)、6 个模拟输入、一个 16 MHz 陶瓷谐振器、一个 USB 连接、一个电源插孔、一个 ICSP 接头和一个复位按钮。它包含支持微控制器所需的一切;只需使用 USB 电缆将其连接到计算机,或使用 AC-DC-DC 适配器或电池为其供电即可开始使用。您可以修补UNO,而不必担心做错事,最坏的情况是,您可以花几美元更换芯片并重新开始。
- 官网支持:https://docs.arduino.cc/hardware/uno-rev3
- 原理图:
- Arduino nano:便携版
- 经典的Nano是Arduino Nano家族董事会中最古老的成员。它类似于Arduino Duemilanove,但用于面包板,没有专用的电源插孔。经典Nano的继任者是例如具有WiFi模块的Nano 33 IoT或具有低功耗蓝牙®和多个环境传感器的Nano 33 BLE Sense。
- 官网支持:https://docs.arduino.cc/hardware/nano
- 原理图:
- Arduino mega:中配版
Arduino Mega 2560是基于ATmega2560的微控制器板。它具有 54 个数字输入/输出引脚(其中 15 个可用作 PWM输出)、16 个模拟输入、4 个 UART(硬件串行端口)、一个 16 MHz 晶体振荡器、一个 USB 连接、一个电源插孔、一个 ICSP接头和一个复位按钮。
- esp8266:物联版
- ESP8266EX 内置超低功耗 Tensilica L106 32 位 RISC 处理器,CPU 时钟速度最高可达 160 MHz,支持实时操作系统 (RTOS) 和 Wi-Fi 协议栈,可将高达 80% 的处理能力留给应用编程和开发。
- 官网支持:https://www.espressif.com/zh-hans/products/socs/esp8266
- 原理图:
- ESP32 :高配版
- ESP32 将天线开关、RF balun、功率放大器、接收低噪声放大器、滤波器、电源管理模块等功能集于一体。ESP32 只需极少的外围器件,即可实现强大的处理性能、可靠的安全性能,和 Wi-Fi & 蓝牙功能。ESP32 可作为独立系统运行应用程序或是主机
MCU 的从设备,通过 SPI / SDIO 或 I2C / UART 接口提供 Wi-Fi 和蓝牙功能。- 官网支持:https://www.espressif.com/zh-hans/products/socs/esp32
- DEVKIT V1原理图
ESP32S2:高配版 原理图:
- PI PICO:实用版
树莓派PICO系列目前由四块板组成;Raspberry Pi Pico(最左),Pico H(中左),Pico W(中右)和Pico WH(最右)。
Raspberry Pi Pico是一款低成本、高性能的微控制器板,具有灵活的数字接口。主要功能包括:双核 Arm Cortex M0+ 处理器,运行频率高达 133 MHz 的灵活时钟,264kB SRAM 和 2MB 板载闪存。
官网支持:https://www.raspberrypi.com/documentation/microcontrollers/raspberry-pi-pico.html
原理图:
1.3 Arduino 软件
目前Arduino各种环境下都有匹配的IDE开发,特别是Arduino2.0 IDE、Web IED、PLC IDE,非常友好!还兼容VScode开发环境,国内有linkboy,Mixly,操作起来很容易上手,而且有相当多的开源项目!!!😎😎😎
linkboy官网:http://linkboy.com.cn/
Mixly官网:https://mixly.org/
Arduino软件:https://www.arduino.cc/en/software
环境搭建教程:
- 【ESP8266-NodeMCU开发之Arduino环境搭建】
- 【ESP32-NodeMCU物联网开发之Arduino环境搭建】
- 【ESP-C3-32S-Kit 2M开发板环境搭建Arduino】
- 【Arduino IDE 2.0他来了】
2.基础篇
🎈基础篇主要涉及Arduino常见的GPIO硬件和官方库软件资源,围绕GPIO输入输出操作,还有更嗨的ADC和PWM驱动实验,这些通过简易点灯、电机、通讯的实际应用。
2.1 点灯操作
这里包涵web开发点灯,以及本地SDK的PWM呼吸灯实验,可以设计彩虹灯的WS2812B,其实显示屏就是高级的点灯矩阵,等等有趣的玩法欢迎你的探索!
- 什么是Arduino?
- Arduino与LED深度握手
- Arduino与16LED圆环WS2812B握手
- Arduino +ADC+B10K电位器
- Arduino与震动马达模块握手
- Arduino与增量编码器握手
2.2 电机驱动
常规的电机分为有刷电机和无刷电机,有刷电机常见四驱车马达、交流电机、步进电机、舵机、伺服电机;无刷电机常见无刷直流电机
无刷直流电机最强科普:https://zhuanlan.zhihu.com/p/371992455
2.3 机器通讯
Arduino通讯分为有线通信和无线通信,其中有线通信包括GPIO逻辑通讯,UART串口通讯,I2C通讯,SPI通讯等,无线通信包括红外、蓝牙、wifi、433、NBIoT、LoRa等无线电频段。
3. 提高篇
🎈🎈提高篇主要涉及Arduino常见的资源优化整合,围绕生活中小的项目开发,搭配主流的编程软件(Mixly,Arduino IDE,Mind+,Linkboy),通过传感器数据采集,入门版Uno单片机处理,执行器反馈的实际应用。
3.1 联合实验
此部分主要目的是培养顺序处理和联合实验能力,依次是条件触发✨——信息处理✨✨——任务处理✨✨✨
3.2 物联开发
🎈🎈物联网开发教程 接入Blinker、ONENET、阿里云、巴法云、腾讯网、机智云物联网平台教程,主要基于ArduinoIDE开发采用esp8266硬件设计
4. 进阶篇
🎈🎈🎈进阶篇深入涉及Arduino常见的资源优化整合,围绕生活中小的项目进行系统性开发,搭配主流的编程软件(Mixly,Arduino IDE,Mind+,Linkboy),通过传感器数据采集,单片机处理,执行器反馈的实际应用,另外穿透有通讯交互,有点机器人协调的味儿,🤩🤩🤩其中包含一定的控制逻辑和算法辅助系统更加出色完成对应的问题。
4.1 实物开发
此部分涉及博主的实物开发,其中会构建解题思路,硬件选型,程序设计、整体调试等内容,非常硬核
4.2 友人优作
此部分是国内外友人的优秀作品收藏夹,游船、飞机、汽车、坦克等等!!!😊😊😊
5. 优质工具
5.1 串口工具
这里提供快速可视化的开源串口工具,加快显示步伐,支持保存数据哟!还有进阶版的
5.2 开发工具
非常期待RT-Thread社区的成长
【基于 RT-Thread Studio的CPK-RA6M4 开发板环境搭建】
【基于RT-Thread+RA6M4的智能鱼缸系统设计之鱼我所欲也】
去年参加比赛获得第六名,这次我又来参加比赛,哈哈哈
5.3 3D打印机
3D打印机非常适合玩硬件的,随时随地打印一些不切实际的idea🤣🤣🤣,虽然打印机经常坏,我依然深深的喜爱,所以研一就说服导师购买😊😊😊
6. 小结
通过对生活中需要简单的控制系统,我们可以让Arduino作为主心骨,其他外设有机衔接从而完成功能,进而丰富我们的生活。🛹🛹🛹
下面我收集单片机资料时,某位大神总结的单片机硬件资源思维导图,特此供上😊😊😊,方便大家查漏补缺
从而实现对外部世界进行感知,充分认识这个有机与无机的环境,科学地合理地进行创作和发挥效益,然后为人类社会发展贡献一点微薄之力。🤣🤣🤣
- 我会持续更新对应专栏博客,非常期待你的三连!!!🎉🎉🎉
- 如果鹏鹏有哪里说的不妥,还请大哥大姐们多多评论指教!!!👍👍👍
- 下面有我的🐧🐧🐧群推广,欢迎志同道合的朋友们加入,期待与你的思维碰撞😘😘😘