当前位置:首页 > > 开发板
[导读]以前笔者也觉得Arduino太Low,作为创客怎么也得RaspberryPi起步。不过近期越玩越被圈粉。丰富的开源库和拓展硬件可以让你快速实现各种需求。还觉得Arduino太Low?你也许只差一个选择。

有人说Arduino是上帝送给电子入门者的恩赐!有了Arduino,在程序控制下,电路变得更鲜活,更智能。

也有人说,Arduino太low。为啥,板载资源太少,可玩度不够!

是的,需求角度不同,观点自然也不一样,这正是所谓的众口难调!

所以除了Arduino,各种扩展板也应运而生。

Accessory Shield是DFRobot专门为BLUNO(移动设备周边开发平台)所设计的扩展板。Bluno作为首款集成了蓝牙4.0的Arduino UNO主控板,把Android/IOS和Arduino的开源硬件平台用蓝牙4.0紧密的联系在一起。但是光靠BLUNO是不能够与物理世界互动的。尽管用BLUNO与手机建立了通信,但是需要用传感器来采集环境信息,用声光电设备加以反馈。从而利用Arduino丰富的开源硬件资源,Accessory Shield正是为了弥补Arduino的这一不足,通过提供丰富的传感及控制资源,让Arduino更丰满,更具交互性。

虽然Accessory Shield是专为Bluno设计的,但是在一些提供了Arduino UNO兼容接口的开发板上都可以直接使用,比如说现在的STM32 NUCLEO开发板,都提供了UNO兼容接口,当然也就能用在这些开发板上,只不过,代码必须得移植或适配。

扩展板包含一个OLED显示屏,分辨率为128x64,对于简单的信息显示足够了,比如显示个温度、温度信息,ADC采样信息,还是很方便的。扩展板上包括一个有源蜂鸣器,这是最简单的发声元件,非常容易控制。扩展板还包括一个DHT11温湿度传感器,采集环境中的温湿度,是环境监测的首选。板载一个1.5A继电器模块,能够承载普通的大电流器件,另外还有一个螺旋电位器,用来实现ADC功能,其它的器件还有一个RGB LED及一个mini摇杆按键,包括四个方位和一个向下的按键,用来代替普通按键,同时功能更强大。

板载的OLED显示屏使用I2C接口与MCU通信,这是OLED背面的接口连接。

扩展板与Arduino的合照,看上去很和谐!

不过这个扩展板的原配可不是Arduino,而是Bluno。Bluno是=UNO+BLE!

Bluno是ATmega328和TI CC2540的合体版,支持BLE通信。说白了,就是为Arduino披上了BLE的外衣,但仍然使用Arduino的IDE及库来进行开发。

只可惜手头没有Bluno板,不能享受BLE带来的便利!

不过没关系,使用普通的Arduino板,也可以配合Accessory Shield来玩点不一样的。

先来看OLED显示屏。扩展板上的显示屏使用的是SSD1306,分辨率为128X64,该显示屏的主要特性如下

显示屏与MCU的连接如下

可以看到显示屏通过I2C接口与MCU连接,MCU通过I2C接口与SSD1306进行通信,控制屏幕显示输出。

配套的驱动库及示例代码可以帮助用户很快的在屏幕上显示一段Hello, world信息。

先要安装对应的库支持。Accessory Shield提供了3个库支持,如下图所示

BlunoAccessory是扩展板上各外设的驱动库,另外两个是支持库,在BlunoAccessory库中会使用到另外两个库的功能。

先来看第一个Hello, world程序,完整的代码如下

使用Arduino库来编程,不需要关心太多的硬件细节,用户更多的是关注程序所要实现的功能。

这里用到了u8glib,一个Arduino环境下常用的GUI库。U8glib包含丰富的功能,也支持大量的硬件设备,有兴趣的读者不妨到官方主页去了解一下。

将代码编译并上传到Arduino开发板,得到的运行结果如下

有了这个屏,以后再也不需要借助串口来显示运行过程中的一些输出结果了。

扩展板上包括一个DHT11温湿度计,可以用来检测当前的温度和湿度信息。如果想在家里做个小型气象工作站,DHT11就可以派上用场了。

DHT11使用用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。

每个DHT11传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式储存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。

传感器通过3P数字线直插Arduino。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。产品为3脚PH2.0封装,连接方便。

接下来通过Arduino实时显示该传感器的读数变化。在原有代码的基础上,添加获取温、湿度信息,然后在OLED上显示,关键代码如下[!--empirenews.page--]

这里有些奇怪的代码,主要原因是Arduino格式化函数sprintf不支持浮点数据类型,只好使用其它的方法来获取需要的结果。

注意这里用到了u8glib的另一个函数,u8glib.drawRFrame画一个画角矩形,函数原型如下

其中x,y,w,h,r分别代码矩形左上角的坐标位置及宽、高、圆角大小等参数。

显示的最终结果如下图所示

其实OLED输出的另一个重要意义在于:Arduino终于可以脱离PC环境了。以前,要输出诸如温、温度信息必须得依赖PC的串口来实现,想要将Arduino移到墙角去工作?没门!除非将笔记本电脑或者PC一同移动到墙角去,否则串口连接不了,也就看不到温度信息了。

另一种比较常见的应用是ADC,采集模拟电压的值。Accessory Shield上包含一个旋钮,可以用来调整电阻的值,其中滑动端连接到Arduino的A1端口,如下

当旋转旋钮时,A1端的电压值可以在0~5V之间变动,通过ADC功能,可以得到一个0~1023之间的整数值,分别对应0~5V之间的电压。

要获取ADC的结果,只要简单的添加如下语句即可

对应的结果如下

很简单,菜鸟也能轻松玩转!

扩展板上还包括一个蜂鸣器、一个1.5A的继电器和一个四向摇杆,可以实现一些有趣的功能,而借助BlunoAccessory库,访问这些功能也相当简单,有木有兴趣一试?

前面也提到了,Accessory Shield原本是为了Bluno设计的,如果你手头恰好又有这块开发板的话,那就更好玩了,使用官方提供的配套APP程序,就可以在手机上体验更高级的操作了。

Bluno结合Accessory Shield及手机APP,图上演示的是用户摇动摇杆后在APP是看到的即时效果。

小结一下,Accessory Shield提供了一些非常有用的组件,对于已基本掌握Arduino使用的用户来说,无疑是锦上添花。OLED将用户从串口显示中解放了出来,DHT11则是制作气象工作站的必备器件之一,其它的如电位器、继电器也是很实用的组件。Accessory Shield如果和BLE或者WIFI开发板配合使用的话,应用范围就更大了。另外一点,现在大多数开发板都提供了Arduino UNO兼容接口。

还觉得Arduino太Low?你也许只差一个选择。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭