MicroPython与CircuitPython

编程语言 2023-03-07 600 次浏览 0 条评论 次点赞

Python 是增长最快的编程语言,从 DevOps 到统计分析,甚至桌面软件,它无处不在,但在微控制器开发领域明显缺少 Python 的使用。MicroPython/CircuitPython 比竞争语言更容易为初学者所接受,同时对于工业用例来说仍然足够强大。您可以从学习基础知识到从事实际工作,而且速度很快。

MicroPyhton-vs-CircuitPython-800x445.jpg

传统上,对机器人、微控制器、电子设备和其他硬件进行编程必须使用汇编程序或 C++ 等低级语言,并牺牲很多功能。随着MicroPython/CircuitPython的推出,这一切都发生了变化。将其对比其他语言,C++ 快速、紧凑且随处可用,但MicroPython/CircuitPython 在易用性和便利性方面胜过 C++;在确实需要最低级别的原始性能时,您可能仍旧需要汇编语言(Assembly)。最后,您还可以将 C++ 代码和汇编程序添加到 MicroPython 项目中。


MicroPython


MicroPython 是 Python 的软件实现,最初是由澳大利亚程序员和理论物理学家 Damien George 发起Kickstarter 众筹创建的。它在很大程度上与 Python 3 兼容,用 C 编写,是在微控制器硬件上运行的完整 Python 编译器和运行时,为 Python 所有惊人的特性添加了硬件支持——除了可以运行在最初开发的 pyboard 微控制器(基于 STM32 并具有大量 GPIO)上外,经过优化以在更多微控制器上运行。

Python 离开了台式机和服务器,进入了传感器、执行器、电机、LCD 显示器、按钮和电路的世界。在微控制器世界中,MicroPython是操作系统,代码无需编译或上传即可执行,非常适合快速学习和试验硬件。

comic.jpg

2016 年,为 BBC Micro:Bit 创建了一个 MicroPython 版本,作为 Python 软件基金会对与 BBC 的 Micro:Bit 合作伙伴关系的贡献的一部分。


CircuitPython


2017 年 7 月,MicroPython 被分叉创建了 CircuitPython 以支持不同的硬件集,这是一个强调简化低成本微控制器的实验和教育的 MicroPython 版本,面向学生和初学者。为了让人更轻松体验微控制器和机器人编程,Edublocks 等项目启用了类似 Scratch 的拖放式体验,支持 CircuitPython。

68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f61646166727569742d636972637569742d707974686f6e2f43697263756974507974686f6e5f5265706f5f6865616465725f6c6f676f2e706e67.png

CircuitPython 的开发由 Adafruit Industries 提供支持,所以提供对 Adafruit 系列硬件的支持但降低了与 ESP8266 的兼容性。大多数 Adafruit 实现都将微控制器板显示为 USB 连接驱动器,在这些情况下,添加代码就像将它拖到磁盘一样简单。在 Adafruit 每周时事通讯 Python on Hardware 中会提供有关单板上 CircuitPython、MicroPython 和 Python 的新闻,Welcome CircuitPython 也由 adafruit.com 提供。


MicroPython/CircuitPython创客


lcds___displays_pica1.jpg

创客(Maker)的兴趣主要集中在以工程化为导向的主题上,热衷于对现实世界的硬件进行编程,进而制作各种有趣的小发明。

4116-14.jpg

带有彩色文件图标显示的软盘驱动器是一个使用 CircuitPython 实现的有趣的无焊接项目,在 3D 打印外壳中安装 Adafruit PyPortal 显示模块,通过 CircuitPython 代码使其显示存放在根目录中的文件。

利用 3D 打印(教程参见《最实用的3D打印入门指南》)和硬件编程,您会发现以下项目非常有趣——如Winamp音乐播放器、RealPlayer和Quicktime视频播放器,以及卡式录音带音乐播放器。

winamp-oyn-ambmain61df71558b13c.jpg

ECCcbTOUIAA7BH6.jpg

RealPlayer

Quicktime

MakerBot Mixtape


MakerBot Mixtape

👍

本文由 CulmartPlay 整理发布,参考 CC-BY-SA 3.0 协议共享,欢迎转载、引用或改编。
感谢您的支持,以共同推动STEM公益教育!

楼主残忍的关闭了评论