1. Arduino M0 Pro功能简介
Arduino M0 Pro开发板旨在为人们在智能物联网设备、可穿戴技术、高科技自动化、机器人技术以及其他创意项目中提供可用平台。该产品有助于开发新项目,非常适合作为学习32位应用程序开发的教学工具。
32位ARM Cortex® M0+内核的低功耗 Atmel SAMD21 微控制器,Arduino M0 Pro 开发板扩充了Arduino 开发板系列,性能进一步增强,功能更强大。该开发板的一个主要特色是配备了 Atmel 的嵌入式调试器 (EDBG),该调试器提供一个完整的调试接口,而且无需其它硬件,从而大幅提升了软件调试的便捷性。EDBG 还支持一个虚拟的 COM 端口,可以用于为设备编程,并实现传统的Arduino引导装载程序功能。
该款开发板兼容遵从 ArduinoR3 布局的 3.3VShield,借助一个被集成到Arduino开发环境中的定制开发软件库,全面支持使用Arduino编程语言对Arduino M0 Pro进行开发。
M0 Pro 的主要硬件规格包括封装于48针 LQFP 中的48赫兹 ATSAMD21G18 微控制器、3.3V电压、256KB闪存、32KB SRAM 和 16KB 仿真 EEPROM。输入/输出功能包括带有12 PWM 通道和 UART 的14个数字式I/O插针,6个12位 ADC 输入通道和一个10位的 DAC 输出。
2. Arduino M0 Pro控制器使用方法
图3 Arduino M0 Pro主要接口
Arduino M0 Pro提供了两个Mini USB。其中靠近电源接口的是EDBG USB可以在线调试和串口通讯,而原生USB接口只能上传程序。
3. Arduino IDE软件使用方法
1)下载最新的Arduino IDE,在Arduino IDE文件夹中找到找到drivers文件夹,找到 driver-atmel-bundle-7.0.712.exe双击安装,安装完成后,再找到dpinst-x86.exe双击安装。
2) 将Arduino M0 Pro板的EDGE Mini USB接口用USB线连接到计算机,安装驱动后系统自动识别一个Atmel EDBG Data Gateway和一个虚拟串口EDBG Virtual COM Port(COM号)。
在设备管理器中如图所示:
图4 EDGE Virtual COM Port在windows资源管理器的显示
3) 将Arduino M0 Pro板的原生Mini USB接口用USB线连接到计算机,安装驱动后系统自动识别一个Arduino M0 PRO Native Port(COM号),在设备管理器中如图所示:
图5 Native Port在windows资源管理器的显示
4)配置ArduinoIDE环境。
Arduino M0 Pro板的Mini USB接口与计算机连接,在Arduino IDE中选择【工具】>【板】>【Arduino M0 Pro(Native Port)】,此接口上传速度程序相对慢一些。
Arduino M0 Pro板的EDGE Mini USB接口与计算机连接,在Arduino IDE中选择【工具】>【板】>【Arduino M0 Pro(Programming Port)】,此接口上传程序速度相对较快。
注意对应接口要对应板卡里的编程接口,两个接口都可以上传程序。
图6 Programming Port端口设置 图7 Native USB Port端口设置
4.在线调试Arduino程序过程
1)设置Arduino首选项
图8 Arduino IDE设置首选项菜单
2)在显示详细输出后面的编译选择上。
图9 首选项选项卡
3)我们需要一块MO Pro的板子、一块扩展板、一个LED小灯、一根3P接线和一根USB线来辅助调试
图10 辅助调试所需硬件
4)打开要在线调试的程序,选择Arduino提供的例子blink,正常编译下载程序,完成后在提示区找到Blink.cpp.elf文件位置。
图11 ArduinoIDE显示详细输出窗口
5)将LED灯接在拓展板D13引脚上,之后将拓展板插到MO Pro上
图12 辅助调试硬件连接
6)找到C:\Users\Administrator\AppData\Local\Temp\build1473069485250126787.tmp\Blink.cpp.elf,将文件路径复制下来。
7)在线调试必须安装Atmel Studio,启动Atmel Studio在File下拉菜单Open的下级菜单中找到Open Object File For Debugging。
图13 Atmel Studio 打开调试文件菜单
8)将刚才在Arduino IDE中找到的Blink.cpp.elf文件目录位置复制到Select the Object File to Debug的输入框里,选择下一步。
图14 Atmel Studio打开文件选项卡
9)在device selection下拉列表中选择芯片型号ATSAND21G18A,然后选择Finish完成设置。
图15 芯片选择选项卡
10)在弹出的Remap Object To Desk Files选项卡中点击第一条输入框中的文件位置,找到刚才编译的Blink.ino原文件。
图16 调试文件选项卡 图17 选择Blink.ino文件对话框
11)在Solution Explorer中左键选择Blink.ino文件后,在右键菜单中选择打开。
图18 Solution Explorer资源窗口
12)在Blink程序中设置断点。
选择设置断点的语句所在的行首,在右键菜单中选择Breakpoint下级菜单中的insertBreakpoint。
图19 Atmel Studio Blink文件窗口
13)设置完断点后,如图所示。
图20 设置断点菜单
图21 程序断点设置
图22 程序断点设置结构
14)在设置完要调试的断点后,点选调试,弹出调试工具对话框,在对话框中Selected debgger/programmer下拉列表中选择EDGB FFFFFFFFFF FFFFFFFFFF。再次选择调试。
图23 选择调试设备对话框
15)执行一次Start Debgging,程序就会运行到下一个设置的调试断点。
图24 开始调试状态
16)可以在IO View资源框中直观看到端口的状态。
图25 IO View 资源窗口
17)在相应断电处,LED灯随着在线调试而点亮和熄灭。
图26 调试到第一断点,LED小灯点亮
图27 调试到第二断点,LED小灯熄灭
5.在线调试Arduino程序实例
通过以上的讲解大家是否已经初步了解Arduino M0 Pro的优势所在了呢,下面我们通过一个更复杂的程序与结构来更深入的了解一下Arduino M0 Pro的在线调试功能。
1) 在调试前准备了一个自己DIY的小玩具工艺品,还有Arduino M0 Pro一块,外加一些线材,小工艺品中包括一个超声波模块、一个360°舵机。
图28 所需设备
2) 调试之前需将各个设备连接好,电机接到D10接口,超声波传感器接到A1接口。
图29 调试前按图连接好各设备
3)按照上文,将程序用Atmel Studio打开后,进行到在线调试的步骤。
4)在程序中设置两个断点
图30 设置两个断点,舵机旋转速度不同
5)当程序运行到第一断点时,Arduino M0 Pro控制舵机转速为1580,舵机此时旋转速度相对较慢。
图31 调试到第一断点,舵机旋转速度为1580
图32 此时舵机旋转相对较慢,动画放映慢
6)当程序运行到第二断点时,Arduino M0 Pro控制舵机转速为2000,舵机此时旋转速度相对较块。
图33 调试到第二断点,舵机旋转速度为2000
图34 此时舵机旋转相对较快,动画放映快
至此完成了Arduino M0 Pro控制板简单的在线调试过程,我们通过在线调试可以更加直观的了解程序的执行过程并了解硬件的运行状态。
QQ群: 271230889(讨论,解惑)
微博:@奥松机器人基地
----------------------------------------------------------------------------------------------------------------
温馨提示:予人玫瑰,手留余香;如果你喜欢这篇文章,不妨转发推荐给你身边的朋友!
相关文章:
近期新闻
热门新闻
奥松智能微信