首页 > 评测 > 创客造梦机——Arduino M0评测

创客造梦机——Arduino M0评测

opensource   创客   Arduino   M0   
  • 作者:seesea
  • 来源:21ic
  • [导读]
  • 前言 梦想总是要有的,万一实现了呢?Arduino M0对于笔者来说就是实现创客梦想的造梦机。

开发环境准备
 
1.官网下载 IDE:http://www.arduino.org/software
 
根据官网指引下载所需要的开发环境,我下载了 windows 的绿色免安装 zip 包来使用。
图片10.png
 
2.安装
 
根据系统以及下载的版本来进行,我下载的免安装包只要解压出来就可以了。
 
3.驱动安装
 
将 Arduino M0 接到电脑,如果需要手工安装驱动,可以选择到 IDE 的安装目录下的 drivers 文件夹进行获取:
图片11.png
 
4.端口设置
图片12.png
 
5.板卡类型选择
图片13.png
 
6.完成!
 
可以写代码和编译下载啦!
 
主要特色功能测试
 
初次上电
 
体验一下出厂的 blink 吧,可以看到周期为 2 秒的方波,以及可以看出高电平电压为 3.3V:
图片14.png
 
DAC 测试
 
首要的肯定是体验一下特色功能 DAC 啦,用 Arduino 多少年了,多希望有一个真正的模拟输出啊,这下可以输出真正的正弦波啦!Arduino M0 提供一个 10 位分辨率的 DAC,使用 A0 引脚做为输出。
 
简单写个测试代码:
图片15.png
 
上电看看波形,漂亮的正弦波就在眼前:
图片16.png
 
要在以前没有 M0,同样的程序在 UNO 上用 PWM 在数字 IO 口上输出的“正弦波”简直是不忍直视惨不忍睹啊:
图片25.png
 
“算力”测试
 
这么高的主频,不得试一下么“算力”么?UNO 和 M0 来计时比一下计算 9999 次乘法的时间吧,可以看到计算时间相差接近 4 倍:
 
UNO 的计算计时:
图片17.png
 
M0 的计算计时:
图片18.png
 
RTC 测试
 
Arduino M0拥有内置 RTC,这为需要实时时钟的场合提供了便利。之前使用 UNO 的话必须使用 RTC 模块或者使用软件模拟,M0 可是内置了真正的 RTC 哦!官方提供了专用于 M0/M0 Pro 的 RTCInt 库,使用非常简单,举个粟子吧,打开示例程序的 RTC 菜单选择 RTC_simple 示例,注意修改串口对象 Serial 为 SerialUSB,编译下载后运行如下,可以看到 RTC 时间信息:
图片19.png
 
精确控时,从 RTC 开始!
 
待机模式测试
 
除了 RTCInt 库外,Arduino M0 还享有 REST 库的特殊待遇,这个库也是特别为 M0/M0 pro 准备的电源管理库。之前其它型号板子需要使用 AVR 编程操作寄存器方式来进行电源控制,M0 有官方库支持就方便多了,REST 库提供接口使 M0 进入待机模式,以及提供外部中断和 RTC 两种唤醒模式。使用官方示例做点修改来测试吧:
图片20.png
 
正常模式运行于 delay() 时的电流:
图片21.png
 
运行于待机模式时的电流:
图片26.png
 
低碳环保好睡眠!
 
调整 ADC 的分辨率的测试
 
以往 UNO 只能固定在 10 位分辨率下进行模数转换,M0 硬件支持最大 12 位模数转换,并提供接口方便调整分辨率以供不同的需求下使用。这里使用不同的分辨率来测试 A0 接在 3.3V 上的转换结果:
 
接线:
图片22.png
 
程序及运行结果,可以看到不同的分辨率输出:
图片27.png
 
顺便提一下 M0 的 PWM 输出也可以调整到最高 12 位的分辨率哟,这有助于在使用 DAC 时更平滑地输出模拟值。
 
滑滑滑,就是要你滑,用了 12 位分辨率啊,上 DAC 再也不走楼梯了,一口气滑到底,电压不抖无毛刺,一片啊,顶过去五片!
 
USB HOST
 
Arduino M0 还有一个特色的功能是支持当 USB HOST 外接 USB 设备,可以方便地接鼠标、键盘等输入设备,还可以连接安卓手机。手头没有 USB 转接线测试不了,以后有器材了再试。
  • 本文系21ic原创,未经许可禁止转载!

网友评论