MicroPython是一个小型的开源Python编程语言解释器,运行在小型嵌入式开发板上。使用MicroPython,您可以编写干净、简单的Python代码来控制硬件,而不必使用复杂的底层语言,如C或c++ (Arduino用于编程)。 Python编程语言的简单性使MicroPython成为编程和硬件新手的理想选择。MicroPython功能非常齐全,支持大多数Python语法,所以即使是经验丰富的Python老手也会发现使用MicroPython很熟悉和有趣。 除了易于使用之外,MicroPython还有一些独特的特性,使它有别于其他嵌入式系统:

  • 交互式REPL,或读-求-印循环 - 这允许你连接到一个板,并让它执行代码,而不需要编译或上传-完美的快速学习和试验硬件!
  • 广泛的软件库 - 像普通的Python编程语言一样,MicroPython“包含了电池”,并内置了库来支持许多任务。例如,通过MicroPython的内置库,可以很容易地解析来自web服务的JSON数据,使用正则表达式搜索文本,甚至进行网络套接字编程。
  • 可扩展性 - 对于高级用户来说,MicroPython可以通过低级C/ c++函数进行扩展,因此在需要时,您可以将富有表现力的高级MicroPython代码与更快的低级代码混合使用。

几乎所有你能想到的东西!就像Arduino板一样,MicroPython可以控制硬件和连接的设备。您可以控制GPIO引脚闪烁灯,读取开关,以及更多。您可以驱动PWM输出伺服器,led等或读取模拟传感器与模拟数字转换器。与I2C或SPI设备通话也很容易,你甚至可以在一些板上找到网络和WiFi支持。MicroPython甚至有用于控制其他硬件的库,如NeoPixels和LED条,微型OLED显示器等等。 简而言之,MicroPython可以做很多事情!

MicroPython有很少的限制,几乎Arduino能做的任何事情都可以通过MicroPython板完成。然而,需要注意的是,与类似的Arduino或其他基于C/ c++的底层代码相比,MicroPython代码没有那么快,可能会使用更多的内存。通常这并不重要,因为速度和内存差异很小,不会影响大多数正常使用。 但是要注意,那些对时间或性能要求很严格的代码可能无法在MicroPython中工作。例如,在MicroPython中完全“敲打”一个快速串行协议可能不是最好的主意。然而,有一些方法可以混合MicroPython和低级C/ c++代码,这样您就可以同时拥有这两个世界的优点——您的主要逻辑是干净且易于理解的MicroPython代码,而性能关键部分是用更快的低级代码编写的。 MicroPython语言实现了大部分核心Python 3语言,但是MicroPython不能实现整个Python 3标准库。Python以拥有广泛的标准库而闻名,但是试图将这么大的库压缩到只有千字节内存的小板上是不可能的。相反,MicroPython实现了一些Python标准库的更小版本,为您提供了很棒的开发体验。