Python是最流行的编程语言之一。它以其大量的实用程序库而闻名,而且由于该语言是动态解释的,Python程序比那些必须在执行前进行编译的程序调试起来更快。Instagram、Google、Spotify和YouTube等公司都在使用Python。
在Python对桌面和云继续统治的同时,有两个阵营——MicroPython和CircuitPython——正在为嵌入式项目(如基于微控制器的小玩意)开发以硬件为中心的解释语言版本。传统上,嵌入式硬件的严格计算约束有利于编译语言,但更强大的微控制器正在改变这种局面。
【CircuitPython的起源】
CircuitPython的开发由开源硬件公司Adafruit Industries的Scott Shawcroft牵头。Shawcroft说:“(Adafruit的)目标用户是那些从未编写过程序的人。”他解释说,使用CircuitPython可以很容易地运行一个简单的项目。“我喜欢人们能直接加入进来。”
Shawcroft起初是被Adafruit公司邀请参加项目分享视频系列节目,之后机缘巧合,Adafruit公司创意总监Phillip Torrone联系了Shawcroft,希望将当时已有两年历史的MicroPython移植到一种特定的微控制器上。MicroPython是由物理学家Damien George开发的一个Python精简版本。
【与MicroPython的分歧】
Shawcroft之前并未听说过MicroPython,但被Python放在硬件上的想法吸引。Adafruit公司给Shawcroft的工作只需要Shawcroft研究MicroPython。因此,Damien George开始收到Adafruit提交的大量代码,他“对我们的介入和对一些东西所做的改变有些忧虑”,Shawcroft说。
在与Damien George讨论技术方面的考虑时,Adafruit公司意识到其对该语言未来的看法与George的不同。他们不同意MicroPython在性能和易用性之间的权衡,Shawcroft希望将重点放在库上,希望MicroPython能够替代围绕Arduino微控制器家族兴起的编译软件生态系统。
“Damien主张为C核心人士服务;而且他坚信,Python能够很快。”Shawcroft解释道。“但这并不是Adafruit的目标用户群。”
因此,Adafruit决定另起炉灶。CircuitPython于2017年年中正式诞生。
CircuitPython社区自诞生以来一直在稳步成长。对于Shawcroft来说,管理这个蓬勃发展的社区是他工作中的最大挑战。
虽然与MicroPython有所分歧,但“没有Damien George和MicroPython社区的精彩工作,CircuitPython就不会存在。”CircuitPython官网上这样写道。并对Adafruit继续支持CircuitPython的初学者开发,以及CircuitPython社区成员的来努力表示了感谢。
Python 语言为程序员带来了诸多益处,包括交互式的编程、试验和调试。它提供简化且更人性化的语法,无需进行变量声明和类型指定,也没有繁琐的标点。MicroPython 是 Python 3 的另一个版本,它让我们能够使用 Python 进行微控制器编程。
Adafruit 已对 MicroPython 进行修改,开发了 CircuitPython,旨在直接支持硬件,进一步简化试验和学习,并且加快软件开发。CircuitPython 已经可以支持多个低成本微控制器开发板(基于 Microchip 的 SAMD21 微控制器),以及其他开发板(基于 Nordic Semiconductor 的支持 BLE 的 nRF 微控制器)。