Circuit Playground Express评测
Circuit Playground Express是Adafruit推出的新一代开发板,集电子知识及编程技术于一体,是更完美的下一代开发工具。Express版本是Circuit Playground Classic的升级版,该版本更加完美!新版本不仅集成了更多的传感器,同时也使编程变得更加简单和有趣。
如果是入门者,可以使用Microsoft MakeCode来进行图形化程序开发,该IDE基于Javascript语言。也可以使用它来尝试CircuitPython,Python解释器在Express上运行。随着对编程技术的慢慢深入,还可以使用Arduino IDE,Arduino使用C/C++语言,完全可以控制低层的硬件工作,创作强大的项目完全不在话下。目前,该主板不支持Firmata / Code.org 。
因为可以通过三种不同的方式来进行Express编程,相对来说,Express具有更高的附加值及可重用性。无论是初学者还是资深的电子工程师, Circuit Playground Express都有适合每个人的东西。
Express使用圆形设计,并在其周围提供了适用鳄鱼夹的焊盘,因此不必焊接即可使其工作,相对于传统使用面包板来搭建电路而言,这种连接方式更快捷。可以使用USB, AAA电池组或Lipoly电池(适用于高级用户)供电,供电方式更灵活。除此之外, Circuit Playground Express具有内置USB支持,内置USB意味着你一旦连接好设备就能显示并开始工作,不需要特殊的电缆或适配器。将代码写入开发板后,使用其它的供电方式给开发板供电,开发板就能正常工作。
以下是Circ Circuit Playground Express的主要特色:
• 10个迷你NeoPixels,每个都可以显示任何颜色
• 1个运动传感器(LIS3DH三轴加速度传感器,带有抽头检测,自由落体检测)
• 1 x温度传感器(热敏电阻)
• 1个光传感器(光电晶体管)。也可以充当颜色传感器和脉冲传感器。
• 1个声音传感器(MEMS麦克风)
• 1个带D类放大器的迷你扬声器(7.5mm磁性扬声器/蜂鸣器)
• 2个按钮,标记为A和B.
• 1个滑动开关
• 红外接收器和发射器 - 可以接收和发送任何遥控代码,并在Circuit Playground表示之间发送消息。也可以充当接近传感器。
• 8个鳄鱼夹友好的输入/输出引脚
• 包括I2C,UART,可以做模拟输入的8个引脚,多个PWM输出
• 7个焊盘可以充当电容式触摸输入,其余的1个是真正的模拟输出
• 绿色的“开”LED让你知道它的电源
• 红色“#13”LED用于基本闪烁
• 复位按钮
• ATSAMD21 ARM Cortex M0处理器,运行在3.3V和48MHz
• 2 MB SPI Flash存储器,主要用于CircuitPython存储代码和库。
• MicroUSB端口用于编程和调试
• USB端口可以像串行端口,键盘,鼠标,操纵杆或MIDI!
Circuit Playground Express的神奇之处在于可以通过三种方式:
• MakeCode
• CircuitPython
• Arduino IDE(或直接ARM GCC编程)
如果这是你第一次编程或编码,Adafruit官方建议从 MakeCode 开始 - 它不仅适用于 Circuit Playground Express,而且还可以快速开始编程,但一般都是编码!(一旦你掌握了MakeCode,你就可以看看CircuitPython或者Arduino了。)
MakeCode不需要任何软件安装,它可以在任何带有Web浏览器的计算机上运行。你可以在Mac,Windows,Linux和Chromebook上使用它。MakeCode使用像Scratch一样的拖放块,没有语法或分号。块拼接在一起创建更大和更复杂的项目。MakeCode让你在5分钟或更短的时间内开始使用,内置了指南和项目,但它也很有趣。MakeCode的运行时间令人惊讶,尽管看起来非常简单,但它可以完成通常需要高级编程的非常复杂的任务。你可以非常迅速地获得创意。
MakeCode与Scratch、Node-Red一样,都是使用图形化的编程模式,非常适合初学者或者小朋友来进行电子入门编程。MakeCode针对Express开发板提供了许多现成的组件,当然也包括复杂的程序逻辑组件如条件模块、比较模块来实现程序逻辑。
下图是一个简单的流水灯效果开发界面
在主工作界面的LIGHT模块里包含一个快速的演示功能,如图所示,该模块的功能就是在指定的时间内对板载的LED灯进行循环显示,显示周期为500ms,结合外层的forever无限循环功能,就可以制作出非常惊人的灯光效果,同时在MakeCode的左侧,还能看到实时的模拟效果!
注意到图中"show animation..."模块中的下拉列表指示标志,这里可以选择不同的灯光效果,如下
一亘完成了程序功能的设置,可以点击主工作界面的“Download”按钮,下载生成的.uf2格式的代码文件,该文件可以直接拖放到USB接口映射的大容量磁盘里,从而将代码文件上传到开发板,确实非常方便!
这里补充一下,要进入下载模式,只需要按一下Express开发板上的reset键,然后松开,等开发板上的LED灯变绿,就进入了下载模式。此时在PC端会有一个名为CPLAYBOOT的磁盘,将下载的.uf2文件直接拖到该磁盘,就完成了下载,开发板自动复位,开始运行刚下载的代码。
随着人工智能和机器学习的慢慢普及,Python也渐渐进入大众的视野。毫无疑问,Python是一门非常适合入门AI的程序设计语言,借助这个小小的Express开发板,小小的探索一下Python的奇妙世界,未尝不是一件美事!
Python是发展最快的编程语言,它是一种高级编程语言,这意味着它的设计更容易阅读,编写和维护。Python支持模块和软件包,可以轻松地将你的代码用于其他项目。它有一个内置的解释器,这意味着没有额外的步骤,如编译,让你的代码工作。当然,Python是开源软件,意味着任何人都可以免费使用,修改或改进。CircuitPython被设计为在微控制器板上运行。微控制器板是带有微控制器芯片的主板,实际上它是一台小巧的一体机。你持有的电路板是一块微控制器板!CircuitPython易于使用,因为你只需要使用这个小小的开发板,使用USB电缆和计算机连接好就行了。
CircuitPython为所有这些惊人功能增加了硬件支持。如果你已经具备Python知识,那么你可以轻松将其应用于使用CircuitPython。如果你以前没有经验,其实开始真的很简单!
要在Express上体验Python,首先要将Express开发板变成一个Python解释器,官方为我们提供了专门的.uf2文件,只要将该文件写入到Express开发板,就可以在Express体验Python的开发了。
上图演示了将CircuitPython固件写入到Express开发板的过程。
官方为CircuitPython提供了一个专用的Python代码编辑器,名为Mu,从官方网站下载Mu编辑器安装,接下来使用Mu来写一段简单的代码并让它开始工作
除了熟悉基本的Python语法,要让Express工作的话,还需要熟悉一下具体的硬件库,如上述代码中的board及pulseio模块,好在Python提供了强大的内置帮助功能,使用Mu提供的REPL功能,我们能迅速找到相关的帮助。借助dir命令,可以快速查看相关的信息,如board模块中提供的A0、A1及D13,这些都是开发板引出的引脚,可以连接外部设备来进行编程并使之工作。
上述代码演示了使用内置的D13引脚来输出PWM信号,如果你熟悉PWM的工作机制,想必对于频率及占空比这些概念一定非常熟悉,这段代码就是通过调整占空比来实现PWM输出的。
将代码保存到开发板映射到PC端的磁盘上,命名为main.py,然后就会看到开发板上的LED灯开始呼吸了!
真的不难!
对于喜欢C/C++的用户来说,使用Arduino IDE也可以控制及读取相关的外设信息,不过说实话,Express已板载了这么多传感器及其它功能器件,常见的都有了。不过对于小编来说,有了图形化及Python环境,就够用了,还要什么自行车!
总结来说,Express开发板的优点如下:
• 体积小巧,方便携带
• 板载丰富的功能器件,再也不用搭建实验电路了
• 开发环境丰富,支持图形化、Python及C/C++等开发语言,老少咸宜
• 丰富的教程及DEMO,可以快速入门,老用户也可以找到大量的参考代码,直接使用,节省不少的时间
• ...
对于一块$24.95的开发板来说,咱还能有更多的要求么!截止本文完工时,官网上显示这块开发板已OUT OF STOCK!!!
参考资源:
EXPRESS开发板:https://learn.adafruit.com/adafruit-circuit-playground-express
MakeCode: https://makecode.adafruit.com/
Mu:https://learn.adafruit.com/adafruit-circuit-playground-express/installing-mu-editor