本节书摘来自华章计算机《arduino开发实战指南:labview卷》一书中的第2章,第2.1节,作者:余崇梓著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
2.1.1 arduino ide界面
双击arduino应用软件的执行文件arduino.exe,打开arduino开发环境。
arduino开发环境包含一个用于写代码的文本编辑器,一个消息显示区域,一个文本控制台,以及一个有常用功能按钮的工具栏和一系列菜单。它与arduino硬件连接,可以进行程序下载以及通信。arduino ide界面如图2-1
所示。

使用arduino编写的软件称为sketch。这些sketch在文本编辑器里编写。sketch以后缀名为.ino的文件保存。它具有剪切、粘贴和搜索/替换文本的特性。当进行保存或导出操作的时候,消息区可以给出反馈信息,同时消息区还可以显示错误信息。控制台显示arduino平台错误及其他文本信息。软件右下角显示当前使用的硬件板型及串行端口号。工具栏按钮允许使用者进行程序验证和下载,并能创建、打开和实时保存sketch,并能打开串口监听器。
2.1.2 arduino ide工具栏
arduino ide工具栏如图2-2所示。下面对这些工具逐一进行介绍。
verify
?检查代码错误。
upload
?编译代码并下载至arduino i/o板。
注意,如果正在使用一个外部编程器,可以按住计算机上的shift键,在使用这个图标的时候,图标文本将变为upload using programmer。
new
?新建sketch。
open
?打开已有的sketch。
save
?保存sketch。
serial monitor
?打开串口监听器。
2.1.3 arduino ide菜单栏
除了工具栏以外,还有其他更多命令可以在file、edit、sketch、tools、help五个菜单中找到。arduino ide菜单栏如图2-3所示。
1.file菜单
像其他很多软件的file(文件)菜单一样,arduino ide的file菜单也包括了基本的new、open、save、save as、print等选项。另外,在file菜单中也可以打开很多示例,也可以在file菜单中进行程序下载,如图2-4所示。
在file菜单下,选择preferences,可以进行参数设置,包括:程序库位置、语言、编辑器字体大小、输出时显示详细信息、使用外部编辑器等,如图2-5所示。
2.edit菜单
edit(编辑)菜单提供了基本的剪切、复制、程序注释、取消注释、查找等功能,如
图2-6所示。
下面主要介绍arduino ide edit菜单两个特别的功能。
copy for forum
将sketch代码以合适的方式复制到剪贴板,以便于发布到论坛。
copy as html
将sketch代码以html形式复制到剪贴板,适合嵌入web页面中。
3.sketch菜单
sketch菜单如图2-7所示,主要有verify/compile、show sketch folder、add file及import library选项。
verify/compile
检查代码错误。
show sketch folder
打开当前的sketch文件夹。
add file
添加源文件到sketch(将从目前的位置复制它)。被添加文件出现在新选项卡的sketch窗口中。可以使用tab菜单将文件删除。
import library
导入库,可以在sketch中添加#include语句。
在sketch中,库提供了一些额外的功能。例如,和硬件协同工作或数据处理。在sketch中使用库的时候,选择sketch→import library,将会在你的sketch中插入#include语句,在编译sketch的时候也会编译这个库。因为库和sketch一起被下载到硬件板上,所以会占用更多资源。如果一个库不再需要了,可以在sketch中简单地删除相应的#include语句。
4.tools菜单
tools(工具)菜单包括了在arduino ide中可用的一些工具,如图2-8所示。
auto format
自动格式化。
archive sketch
以.zip格式备份当前的sketch,zip文件和sketch在同一个文件夹中。
board
选择所使用的板型。
serial port
这个菜单包含了计算机上的所有串行设备(真实或虚拟的),每次打开这个菜单的时候它都将进行自动刷新。
programmer
当对板子或芯片编程的时候,选择一个硬件编程器,不用板载的usb串口连接。一般情况下不会用到这个菜单,当要对一个新的单片机烧写bootloader的时候才会用到。
burn bootloader
当要给arduino板上一个新单片机烧写bootloader的时候需要用到这个菜单。正常情况下不需要用到这个菜单,当使用一个新的atmega单片机(没有自带bootloader)的时候才需要用到这个菜单,在烧写bootloader之前要确保在board菜单里面选择了正确的硬件板型。
uploading
在进行upload之前,需要在tools→board和tools→serial port两个菜单里选择正确的选项。
一旦在菜单里选择了正确的板型和串口,单击工具栏中的upload菜单或者在file菜单中选择upload,当前的arduino板将会自动复位并开始下载。在大部分的板子上,当下载sketch的时候,会看到rx和tx的led会闪烁,当下载完成后,arduino软件环境会显示完成(或出错)的消息。
当下载sketch的时候,使用的是arduino的bootloader——已经被加载到单片机中的一小段程序。它允许使用者脱离外部硬件就能够下载代码。当板子复位的时候,bootloader会运行几秒钟,然后它将运行最新加载到单片机的sketch程序。当bootloader开始运行的时候,板载的led(数字引脚13)会闪烁。
arduino uno可以通过arduino软件进行编程,在ide中选择tools→board(根据板子上的单片机类型选择)。
arduino uno上的atmega328已经预先烧写了一个bootloader,允许使用者下载新的代码而不需要使用外部硬件编程器。它使用stk500协议通信。可以不使用预先烧写的bootloader,而通过icsp(in-circuit serial programming)接口进行编程。
atmega16u2(或arduino uno rev1、rev2板上的atmega8u2)固件代码是开源的。atmega16u2/8u2含有dfu引导装载程序,它可以通过下面的方式使能:
在rev1板上:连接板背面的焊接跳线,然后重启atmega8u2。
在rev2或更新的板上:有一个电阻,把atmega8u2/atmega16u2的hwb先拉到地,使它更容易进入dfu模式。
然后可以使用atmel的flip软件或者dfu编程器加载一个新的固件。或者可以通过isp接口使用外部编程器编程。
显示从arduino板(usb 或串口板)发回来的串行数据。如果要发送数据给板子,选择和sketch中匹配的波特率,输入文本并单击send按钮。
5.help菜单
在help(帮助)菜单中可以查看arduino ide的版本号,并可以通过help菜单中的链接查找在线帮助资料及文档,如图2-9所示。