Arduino集成开发环境(或是Arduino IDE)包含了一个用于写代码的文本编辑器、一个消息区、一个文本控制台以及一个带有常用功能按钮和文本菜单的工具栏。软件连接Arduino和Genuino之后,能给所连接的控制板上传程序,还能与控制板相互通信。
使用Arduino软件(IDE)编写的代码被称为项目(sketches),这些项目写在文本编辑器中,以.ino的文件形式保存,软件中的文本编辑器有剪切/粘贴和搜索/替换功能。当保存、输出以及出现错误时消息区会显示反馈信息。控制台会文字形式显示Arduino软件(IDE)的输出信息,包括完整的错误信息以及其他消息。整个窗口的右下角会显示当前选定的控制板和串口信息。工具栏按钮包含验证、下载程序、新建、打开、保存以及串口监视器的功能。
注意:Arduino软件(IDE)1.0之前的版本中项目的保存格式为.pde,你能够用1.0版本的软件打开这些文件,软件会提示你将这些项目保存为.ino的形式。
其他命令我们能够在文本菜单中找到,文本菜单包含五个部分文件、编辑、项目、工具、帮助。这些菜单是与你执行的操作与内容有关的,所以只有那些与当前操作有关的菜单才能使用。
这里你能够轻易的找到和Arduino软件(IDE)相关的各种文档。在未联网的情况下能够找到入门、参考资料、IDE使用指南以及其他的本地文档,这些文档是我们网站资源的拷贝,通过它们能够链接到我们的网站。
Arduino软件(IDE)采用项目的方式对项目进行管理:所有的代码(或草图)存在一个统一的位置,可以通过菜单文件>项目文件夹或是工具栏中的打开按钮从项目文件夹中打开一个项目。当你第一次运行Arduino软件的时候会自动创建一个项目文件夹,你可以通过“首选项”的对话框来改变项目文件夹的位置。
1.0版本之后保存文件的扩展名是.ino,之前的版本保存文件的扩展名为.pde。在1.0以及之后的版本中你依然可以打开.pde的文件,软件会自动重命名为.ino。
允许你在项目中使用多个文件(每一个文件有一个自己的选项卡),这些文件可以是正常的Arduino代码文件(扩展名不可见),也可以是C文件(扩展名.c)、C++文件(.cpp)或是头文件(.h)。
上传程序之前,你需要通过工具>控制板以及工具>端口选择正确的选项,控制板的描述在这里。在Mac中,端口可能像/dev/tty.usbmodem241 (Uno或Mega2560或Leonardo)这样,或是像/dev/tty.usbserial-1B1 (Duemilanove或更老的版本)这样,或是像/dev/tty.USA19QW1b1P1.1 (使用Keyspan USB转串口适配器连接的控制板)这样。在Windows中,通常是COM1或COM2 (串口板),或是COM4, COM5, COM7或更大(USB接口板),通常在Windows的设备管理器中查看USB串口设备的串口号。在Linux中,通常显示的是/dev/ttyACMx , /dev/ttyUSBx之类的。
一旦你选择了正确的控制板和端口,那么当你点击工具栏中的上传按钮或是在项目菜单中选择上传子菜单时,当前的Arduino控制板就会自动重启然后开始上传。老版的控制板(Diecimila之前)没有自动重启功能,所以当你开始上传时需要按以下板上的重启按钮。更多的控制板的情况是,当上传时你能看到RX和TX灯开始闪烁。当上传完成时,Arduino软件(IDE)将显示一个上传完成的信息,或是显示一个上传错误的信息。
当你上传项目时,使用到了Arduino的引导程序,这个一个在微控制器中运行的非常小的程序 ,这个程序允许你在没有其他附件硬件设备的情况下上传代码。引导程序在控制板重启的时候会运行几秒钟,此时就能够将项目上传到微控制器当中。当引导程序运行时板载的LED(13脚)会闪烁(比如重启的时候)。
库为项目提供了额外的功能,比如,硬件的使用和数据的处理。要在项目中使用库,需要选择菜单项目>Include Library(导入库) 。这将在代码开头通过#include 的形式添加一个或多个库文件到你的项目当中,因为库会随你的项目上传到控制板当中,所以这会增加代码对存储空间的占用,如果代码中不再需要一个库,最简单的就是在代码中删除相应的#include部分。
在参考文件中有 库的列表 ,一些库是包含在Arduino的软件当中的,另外一些则是在不同的网站或是库管理器上下载的。IDE软件从1.0.5开始,你能够从一个.zip文件中导入一个库并用在项目中,具体参照第三方库安装指南.
想写自己的库,可以参考 这个教程。
添加第三方硬件可以直接添加到项目文件夹所在目录的hardware文件夹中,平台安装必须包含控制板定义(出现在控制板菜单项中)、核心库、引导程序以及编程器定义。步骤是首先创建一个hareware的文件夹,然后将第三方平台解压到相应的文件夹下。(不要使用“arduino”作为子目录的名字,这样有可能改变原本的Arduino平台。)卸载的话简单删除文件夹就好了。
创建第三方硬件安装包的详细内容可以参考Arduino IDE 1.5第三方硬件说明.
显示Arduino或Genuino(USB或串口板)发送的数据,要想发送数据给控制板的话,就需要在文本框中输入文本,然后点击"发送"按钮或回车。从下来菜单中选择合适的波特率,这个波特率要与程序中Serial.begin后的参数一致。注意在Windows、Mac或Linux中,当你打开串口监视器的时候Arduino或Genuino会重启(程序会重新开始运行)。
控制板同样能够和Processing, Flash, MaxMSP等软件通信,参考交互页面了解细节。
一些首选项能够通过首选项对话框设定(Mac中在Arduino菜单下,Windows或Linux中在文件菜单下。)其他的设定能够在首选项对话框中设定的目录中找到。
从版本1.0.1开始,Arduino软件(IDE)已被翻译成30多种语言,默认的情况下,IDE会根据系统的语言选择相应的语言(注意:在Windows中以及可以在Linux中,这是由系统的日期和时间格式来确定的,而不是由操作系统显示的语言来确定的。)
如果你想手动更改语言,那就打开Arduino软件,然后在首选项的对话框中选择编辑器语言,在弹出的下来菜单中选择相应的语言,然后重启软件使所选择的语言生效,如果你的操作系统不支持你所选择的语言,那么IDE会默认采用英文。
你能够返回Arduino的默认设置,让IDE根据系统的语言选择相应的语言,只需要在语言选择的下拉菜单中选择系统默认。当你重启软件时这个设置会生效。同样的,改变你的系统设置后,你需要重新启动Arduino软件才能变为新的默认语言。
选择控制板有两个作用:设定编译或上传程序是的参数(比如CPU的速度和波特率),以及设定上传引导程序时的文件以及熔丝位设置。一些控制板只是引导程序不一样,所以即使你在一个特定的选择下上传成功了,在上传引导程序之前也要仔细检查一下。这里我们将不同的控制板做一个比较。
关于安装其他控制板的介绍,参考 第三方硬件 的相关内容。
SPI是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚。
ESP32的DAC函数可以实现真正的模拟输出。
ESP32 没有Arduino输出 PWM 的 analogWrite(pin, value) 方法,取而代之的 ESP32 有一个 LEDC 来实现PWM功能。
本书由少年创学院联合创始人兼院长、知名创客程晨撰写,以Arduino作为硬件平台,介绍了使用米思齐(Mixly)软件进行程序开发的方法。
本文档作为UNO R4 WiFi的技术概览,您将找到一系列资源和指南链接,帮助您开始下一个项目。
Arduino OneButton库是一个用于简化按钮操作的库,它可以轻松地处理按钮的单击、双击和长按等操作。适用于Arduino开发板以及ESP32等其他基于Arduino的开发板。
本文从Arduino Uno入手,看看怎样在这个"简单"的8bit单片机搭建一个属于自己的bootloader
许多硬件厂商都希望自己的开发板能被Arduino IDE集成开发环境所支持。这里就以小脚丫开发板所使用的开发包为例,介绍一下第三方开发包的制作方法。
ESP32 可以通过 SDMMC 和 SPI 两种方式读取SD/TF卡数据。