Arduino Uno基础知识学习笔记
已经两年多没碰单片机了,现在正好有空,决定重新开始认真学习一下。
这一篇Blog主要介绍Arduino和基本元器件的一些基础知识
基础信息
来自arduino官网的介绍:
Arduino是一个基于易于使用的硬件和软件的开源原型设计平台。 Arduino板能够读取输入 - 传感器上的灯光,按钮上的手指或Twitter消息 - 并将其转换为输出 - 激活电机,打开LED,在线发布内容。您可以通过向板上的微控制器发送一组指令来告诉您的电路板该做什么。为此,您需要使用Arduino编程语言(基于连线)和基于Processing的Arduino软件(IDE)。
在使用中值得注意的是:
- 每个输出引脚最多提供40mA电流
- 总输出电流不得超过200mA
- Arduino勿放置在金属板上
- 输出引脚不可接地
- 输入引脚电压不得超过3.3V(5V)
- 不得向Vin引脚提供超过12V的电压
引脚说明
电源
Arduino Uno开发板可以使用三种方式供电:
直流电源插孔 -可以使用电源插孔为Arduino开发板供电。电源插孔通常连接到一个适配器。开发板的供电范围可以是5-20V,但制造商建议将其保持在7-12V之间。高于12V时,稳压芯片可能会过热,低于7V可能会供电不足。
VIN引脚 - 该引脚用于使用外部电源为Arduino Uno开发板供电。电压应控制在上述提到的范围内。
USB电缆 - 连接到计算机时,提供500mA/5V电压。
5v和3v3
根据制造商的数据手册,它们提供稳压的5V和3.3v,向外部组件供电。
GND
在Arduino Uno引脚分配图中,可以看到有5个GND引脚,它们都是互连的。
GND引脚用于闭合电路回路,并在整个电路中提供一个公共逻辑参考电平。务必确保所有的GND(Arduino、外设和组件)相互连接并且有共同点。
RESET - 复位Arduino开发板。
IOREF - 该引脚是输入/输出参考。它提供了微控制器工作的参考电压。
模拟输入
Arduino Uno有6个模拟引脚,它们作为ADC(模数转换器)使用。
这些引脚用作模拟输入,但也可用作数字输入或数字输出。
Arduino引脚A0-A5能够读取模拟电压。在Arduino上,ADC具有10位分辨率,这意味着它可以通过1,024个数字电平表示模拟电压。 ADC将电压转换成微处理器可以理解的位。
数字引脚
Arduino Uno的引脚0-13用作数字输入/输出引脚。其中,引脚13连接到板载的LED指示灯;引脚3、5、6、9、10、11具有PWM功能。
当数字引脚配置为输入时,电压由外部设备提供。该电压可以在0-5V之间变化,并转换成数字表示(0或1)。为了确定这一点,有2个阈值:
低于0.8v - 视为0
高于2.0v - 视为1
关于PWN
脉宽调制(PWM)是一种调制技术,用于将消息编码为脉冲信号。 PWM由两个关键部分组成:频率和占空比。 PWM频率决定了完成单个周期(周期)所需的时间以及信号从高到低的波动速度。占空比决定信号在总时间段内保持高电平的时间。
以1kHz为例,若脉冲宽度为周期一半(称50%工作周期),就相当于输出高电位的一半电压;10%工作周期,就相当于高电位的十分之一电压。
PWN的电压输出计算方式如下:
模拟输出电压=脉冲宽度×高电平值
串行通信待补充
Arduino IDE
这是Arduino官方提供的集成开发环境。里面提供了一些示例程序和头文件。
安装过程略。但值得注意的是,如果购买的是部分国产arduino板,官方驱动可能无法识别到设备,此时需要安装CH340驱动。BTW,Mac OS和Linux不需要驱动。
当然也可以使用vscode进行开发,只需安装如下两个插件即可
新建一个adruino程序,输入ar
+Tab
即可自动生成程序基础框架。
vscode右下角可以设置开发板信息和端口信息
右上角可以进行编译、上传等操作
注意:使用前记得将arduino ide路径添加进vscode中arduino设置的path
参考文章:
引脚分配图及定义