使用Micro Python嵌入式软件的5个优势

几年前,2013年12月,达米安·乔治(Damien George)成功资助了Kickstarter项目,该项目启动了Micro Python。 微型Python 是旨在在微控制器上运行的“精简且快速的Python 3实现”。在EDN.com上的一篇文章中,“使用Micro Python的实时软件”, I discussed the background of the language and the ARM Cortex-M hardware that it is designed to run 上 . In 这个 文章 , let’s examine five advantages of using 微型Python for embedded software that C makes difficult or nearly impossible.

优势1 –可读的语言

任何编写过C代码的开发人员都知道 C编程语言可以产生有史以来最隐秘的软件 由人类开发。整个比赛都致力于写作 被混淆且无法理解的程序。 Python是不同的。 Python的开发考虑了可读性。 Python易于阅读,易于使用 写作,与其他语言相比学习曲线较低。缩放比例 适用于微控制器的Micro Python形式的Python版本提供了可能性 快速原型制作和改进代码维护的机会,以及 portability.

优势2 –内置异常和错误处理

C编程语言没有异常和错误 处理。因此,嵌入式系统的开发人员必须坚持 开发自己的异常和错误处理解决方案。 微型Python 上的 另一方面包括并扩展了Python的异常和错误处理。的 Micro Python的默认行为是在出现以下错误时停止程序执行 遇到时,打印出文件和行号,以便开发人员可以 轻松发现问题。

微型Python 的默认异常和错误处理 使用try / except和try / except / finally块很容易覆盖。 就像在高级语言中一样,用try / except块包围一个块 如果发生异常,可以将其捕获并进行相应处理。的 脚本将继续运行,希望与用户一起处理异常 noticing a thing.

优势3 –开源免费

微型Python 是开源的,并使用MIT软件 许可,这意味着可以以开发人员认为的任何方式使用和滥用它 适当。开发团队可以获取最新版本并运行它。 想要更大或更小的处理器,只需将Micro Python移植到该处理器即可 微控制器。主树提供了许多不同示例的示例 处理器和配置。可以与社区分享改进之处 如果开发团队想要共享,则合并回主干 当然。优点是免费获取和移植Micro Python,并且 需要很少的时间投入。

优势4 –面向对象的语言

使用Micro Python填补了C语言的许多空白 缺乏编程语言,包括创建类和使用的能力 面向对象的编程技术。嵌入式软件开发人员使用 Micro Python可以利用现代编程结构,例如 继承和多态性。封装和信息隐藏可以 无需太多努力即可轻松实施。有些人会争论这些相同的结构 可以用C语言产生,该语言可以追溯到1972年,但事实是 the amount of time and effort required makes 这个 argument laughable and the 实现高度容易出错。

优势5 –提取硬件层

微型Python 为底层抽象了细节 微控制器硬件。不用担心位和字节, 开发人员只需访问外围对象的方法来控制 硬件。硬件控制通过专用的pyb库完成。至 控制LED,开发人员只需创建一个使用初始化的对象 LED引脚信息,然后打开或关闭LED变得微不足道 练习访问对象的打开和关闭方法。的抽象 硬件层使工程师可以专注于特定的应用程序 而不是低矮的硬件如何工作。

最后的想法

微型Python 是一种用于嵌入式软件的有趣语言,可以为开发人员提供一种新工具,可以在其中快速开发嵌入式系统的原型。 微型Python 甚至可以为IoT或消费电子产品提供更短的开发路径。语言端口才刚刚走上舞台,只有时间才能证明它会被广泛采用还是在孤立的圈子中引起追捧。

5 thoughts 上 “使用Micro Python嵌入式软件的5个优势”

  1. 我同意C带来的所有缺点,也同意Python的优点。但是,为什么要比较Micro Python与C而不是C ++?如今,C ++被广泛使用,甚至在嵌入式系统中也是如此。我猜想,Micro Python在这种比较中剩下的唯一优势就是更好的可读性。
    此外,有人必须编写硬件对象,尤其是在您经常更改底层硬件的嵌入式系统中,并且您很少指望SoC制造商即使使用C语言也不能提供用于访问实际硬件的代码段,更不用说Micro Python了。

    1. 80%的嵌入式系统仍使用C编写。每个SoC或微控制器提供商都开发其SDK’在C中不是C ++。 MicroPython和C之间的比较对于一般社区来说更有意义。感谢您的评论!

  2. 想知道为什么每个SoC或MCU供应商都使用C而不是C ++开发其sdk。我相信,如果使用C代替C ++,Arduino肯定不会那么成功。 C ++产生了巨大的变化。

    1. I’我不确定为什么总是首选C。一世’一些知名的供应商推出了一个新平台,并使用C进行了开发,然后创建了C ++之类的功能,例如“this”。我认为他们看到他们的行业调查结果表明80%的系统使用C,并且他们担心使用C ++会失去市场份额。

      1. 厂商现在该改变了吗?
        我们不’需要微控制器使用C ++的所有高级功能。
        ATMega328的C ++已经很棒。
        这些代码可以在支持C ++的任何平台中重复使用。
        在享受使用C ++之后,我再也不想在仅支持C的平台上工作了。

        使用C / C ++的一个很大的缺点是构建应用程序并将其上传到目标板所需的时间。
        Micropython很快!

发表评论

您的电子邮件地址不会被公开。 必需的地方已做标记 *

该网站使用Akismet减少垃圾邮件。 了解如何处理您的评论数据.