什么是 Arduino?
Arduino 是一个开源硬件平台,具有内置的编程支持。不需要额外的硬件或软件(例如 Hex 刻录机)将您的程序(即 hex 文件)传输到 Arduin0。为基本操作连接了所有必要的外围设备。它基于简单的 AVR 微控制器。
Arduino 是当今一个不断发展的行业,其背后的主要原因是绝大多数库。用户不必再次发明轮子。长而传统的代码现在已经减少到几行。它易于使用并提高生产力。Arduino 可用于制作各种采用模拟和数字输入的项目,并且可以轻松地与不同的硬件(如开关、编码器、传感器、电机、继电器等)连接。
Arduino 板 PCB 设计和原理图可在互联网社区和博客上免费获得,也可以从各自的卖家处购买,其集成开发环境可免费下载,此 IDE 的不同版本可用于使其与不同的操作系统(操作系统)兼容,如 Mac、Windows 等。
为什么选择 Arduino?
1) Arduino 有内置的编程器来烧录十六进制文件,对于大多数初学者来说,单独购买微控制器和刻录机是非常烦人的,有时很烦人,当糟糕的硬件有一点隐藏的断线时,你会浪费大量宝贵的时间。
2) 它是开源的,因此整个世界开发人员不断致力于升级和修复其错误,因此它的支持在全球范围内随时可用。
3) 数量最多的库是免费提供的,因此人们不需要编写大量基本代码来运行。
4) Arduino 支持许多不同的扩展板,这些扩展板可以通过公对母接头连接到基本的 Arduino 板。它减少了传统布线,并且出错的机会更少。它还节省空间和功耗。
上述所有功能通常不适用于单个独立微控制器。这就是 Arduino 受到业余爱好者和专业人士喜爱的原因。
Arduino 的类型:
Arduino 有很多板子,从基本的 Arduino UNO 开始,到 Arduino mega、ArduinoFio、Lily Pad等。
- Arduino UNO
- Arduino Mega
- Arduino Duemilanove
- Arduino FIo
- Lily Pad Arduino
- Aurdino Extreme V2
和许多其他板。
Arduino UNO 的功能
Arduino UNO 的显著特点是:
- 微控制器 (MCU) ATmega328
- 工作电压 (DC) 5V
- 输入电源电压 (外部) 6-20VDC (MAX)
- 推荐输入电源电压 (DC) 7-12V
- 数字输入/输出 (I/O) 引脚数量 14
- PWM(脉宽调制)输出 6(引脚 3、5、6、9、10 和 11)
- 输入引脚(模拟) 6 (A0-A5)
- 直流电流(最大值) 40 mA (每个 I/O 引脚)
- 3.3V 引脚的直流电流 50 mA
- 闪存 32 KB (ATmega328) ( 0.5 KB 由引导加载程序使用)
- 时钟速度(陶瓷谐振器) 16 MHz
- SRAM(内存)2 KB (ATmega328 MCU)
- EEPROM(内存)1 KB (ATmega328 MCU)
Arduino 编程 – 分步
Aurdino 编程(第一个程序))
让我们从 Arduino UNO 开始,它很简单,它基于 Atmega 328 微控制器
现在从 Arduino First 基本程序开始。
从 www.arduino.cc 下载 Arduino IDE,安装它,然后双击软件图标运行。
基础 Arduino 编程函数语句:
Arduino 编码有两个主要块。其中一个称为 void setup,另一个是 void loop。在 void setup 中,我们定义哪个 pin 应该是 input 和 output。它用于初始化变量并开始使用库。
代码的第二个块是 void loop。它包含放在括号内的所有代码和逻辑(它将无休止地重复)。
现在让我们编写一段LED闪烁代码:
代码解释:
这段代码将定义引脚13为内部LED,并设置它为输出模式,然后通过循环不断地将其设置为高电平(点亮LED)和低电平(熄灭LED),并在每次状态改变之间加入1秒(1000毫秒)的延迟。
此代码在setup()函数中初始化了引脚配置,在loop()函数中实现了LED的闪烁逻辑。loop()函数会不断重复执行,因此LED将会持续地以1秒间隔进行亮灭交替。如果您想更改闪烁速度,只需调整delay()函数中的参数值即可。
内部 LED = 13;
这里 13 是引脚号,LED 是该引脚的新名称,现在我们可以访问具有两个名称的同一引脚。
PinMode(x,y) 函数:
我们想编写代码来使 LED 闪烁。PinMode (X, Y) 函数:此函数接受 2 个参数
1) 密码名称或号码 (X)
2) 定义为输出或输入 (y)
示例:pinMode(led,OUPUT)
上述语句将 Led 定义为 output。
digitalWrite(x,y) 函数:
此函数将 Digital 1 或 0 写入此函数参数中定义的引脚。此函数还接受 2 个参数
- 引脚编号或名称
- 是写 “Low” 还是 “High”
例:
数字写入(LED,HIGH)
上述语句将在名为 LED 的引脚上写入 +5 伏特。
延迟功能:
这是 Arduino IDE 的内置功能。它只有一个参数,即它给出以毫秒为单位的延迟。
例:
延迟 (1000);
那么这个函数会给我们 1000 毫秒的延迟。
上传代码
现在单击按钮(如下图所示)将程序加载到 Arduino 板。大功告成!