关于这个问题,我个人建议大家应该多了解一下Python以及C语言本身的特点。 当然,Python很流行,也很强大,但是对于单片机开发来说,王者开发语言仍然是C语言。
另外,并不意味着微控制器不能使用Python完成。 其实可以使用MicroPython进行开发,但是成本较高。 需要了解微控制器和Python,入门门槛较高。
为什么我们仍然用 C 语言为微控制器编程? 答案是:C语言是最适合单片机编程的高级语言。
这个问题的意思应该是:现在有很多有用的高级语言,比如Java、Python、Go等,为什么这些语言不能用来写单片机程序呢? 所以这个问题的答案是:不不不,但是不合适。
(1)单片机编程的特点
首先,首先要考虑的是,单片机的程序空间和数据空间都是有限的,因此程序应尽可能保持简短、简洁,以节省程序占用的存储空间。
其次,MCU编程的主要对象之一是MCU的端口和内部寄存器的操作和配置,需要相对精确的时序控制。
第三,在单片机的算术运算中,尽量使用加法、减法、移位运算,因为乘法和除法运算会非常耗时,尤其是除法,会消耗大量的时间。 对于速度本身有限的微控制器来说,这是一个问题。 一个很大的负担。
(2)用高级语言编写单片机程序的缺陷
高级语言可以实现更优化的算法和更方便的执行计划。 然而,高级语言比汇编和C语言占用的程序存储空间要多得多。 这是最致命的一点。 单片机有限的存储空间需要精心规划来设计程序,根本无法承受高级语言臃肿的代码量。 高级语言无法实现精确的时序控制。
(3)最后选择C语言
C语言是一个折衷的选择。 其实用C语言来开发单片机也是一种折衷的方案,因为最适合单片机开发的编程语言太过晦涩难懂,而且各个单片机的汇编指令都有很大不同,所以我想干脆就是将程序从这种单片机移植到另一种单片机上的一厢情愿。 最好重新编写一下程序。 C语言代码执行效率高,比较精简,更容易移植……因此,在当今的单片机编程语言中,C语言将占据绝对的主导地位。
欢迎大家关注我,我将持续为大家带来最新的Python硬技能!