嵌入式与Python之间在概念上存在着明显的差异,嵌入式是一个开发领域,而python是一种编程语言。

对于新手来说,如果有时间,python是应该去学的。一方面是因为python语言本身相对简单,即使在没有任何编程的情况基础下,它也可以很顺利入门,另外一方面是因为python还可以进行嵌入式开发。

不管你是待业还是失业,在这个被互联网围绕的时代里,选择python与嵌入式,就多了一项技能。

python 比较厉害的地方是在于,可以用python处理很多大量的数据,这个是它的强项。

而且Python有强大的社区支持,是一款比容易入门的脚本语言,因此一些非IT领域的人都选它作为入门语言。但是它不能进行一些底层的操控,在硬件领域并不起眼。然而那都是若干年之前的事情了。随着硬件性能的不断提升,编程开发语言的优劣开始变得不那么明显。

实际上如今,Python可以直接进行单片机的开发了!

Python语言开发STM32单片机

MicroPython基于ANSI C,语法跟Pyton 3基本一致,可以通过Python脚本语言开发单片机程序。它拥有自家的解析器、编译器、虚拟机和类库等。我们熟悉的ARM处理器,像STM32F405、STM32f407等上面可以直接运行Python语言。用户完全可以实现硬件底层的访问和控制,LED流水灯、LCD显示、电压检测、电机控制、SD卡访问等都是轻松玩转。

Python应用在在实时嵌入式系统中

众所周知,Python跑在Linux与Windows上都没问题,诸如Raspberry Pi等单板计算机也不在话下。这么牛?在实时嵌入式系统中是否也有Python的一席之地?答案是肯定的。

Python在实时嵌入式系统开发中的主要应用如下:

设备调试和控制

在嵌入式软件开发过程中,开发人员常常需要分析总线通信量,如USB、SPI或I2C。有的分析仅仅是出于调试目的,但有时则需要控制总线分析仪并发送信息至嵌入式系统。许多总线分析仪和通信工具都有友好的用户接口,可以用来控制工具。他们通常还提供一种方法来开发脚本,也可以用来控制工具。Python是一种普遍支持的脚本语言,有时则是一些工具的接口,或是用来控制工具。

自动化测试

通过Python控制工具在嵌入式系统中发送和接收消息的能力,使得利用Python构建自动化测试(包括回归测试)成为可能。Python脚本可以设置嵌入式系统进入不同的状态,设置配置文件,并测试所有可能的干扰以及系统与外部环境的相互作用。使用Python开发自动化测试的好处是,回归测试可以开发持续测试并训练系统。任何的代码变动导致的bug或不合格的结果都将被实时的检测出来。

学习面向对象编程

Python是一门免费的编程语言,可以跨多个平台使用,对于学生和非编程人员而言比较简单。该语言与C语言不同,它也是现代式的,并且可以在自由形态的脚本类型中结构化,或是作为一个复杂的面向对象的体系结构。

Python本身也很灵活。甚至还有这种情景:没有编程经验的电气工程师可以利用Python写出有用的测试脚本或用最少的时间实施电板检查。

Python的学习曲线并不陡峭,熟悉Python学习曲线的开发人员发现,当你有了其它语言的基础之后,学习Python比学习任意其他的编程语言都要简单。