文档章节

世界那么大,语言那么多,为什么选择Micropython,它的优势在哪?

bodasisiter
 bodasisiter
发布于 06/23 10:08
字数 1589
阅读 500
收藏 12

   

    最近国内MicroPython风靡程序界,是什么原因导致它这么火呢?是因为他功能强大,遵循Mit协议开源么?

    错!因为使用它真的是太舒服了!!!

    Micropython的由来,这得益于Damien George这位伟大的计算机工程师,Damien George每天都会使用Python工作,他有一天冒出一个大胆的想法:能否用Python来控制单片机,从而实现对机器人的操作呢?

    Python语言本身就是一款简单上手的脚本语言,一些非计算机专业的爱好者都选Python语言作为入门语言,但是美中不足(中国跟美国为什么不参加世界杯),它不能实现对一些底层的操作,在硬件领域毫不起眼。所以,Damien George利用6个月时间打造了MicroPython,这就是MicroPyhton的由来。

    MicroPython它基于ANSIC,语法跟Python3基本一致,拥有独立的解析器、编译器、虚拟机和类库等。目前他支持基于32-bit的ARM处理器,比如说STM32F401、STM32F405、STM32F407。

    下面告诉大家我使用汇编、C、MicroPython这3种语言做了以下几点比较,为什么说MicroPython使用如此舒服呢??!!!

    1.编译环境
    C语言、汇编语言在编写程序之前,需要下载编译环境,然而Micropython不需要任何编译环境,只需将开发板U口插入电脑,便可在电脑上出现一个盘符,跟插入U盘似得,然后打开U盘,直接记事本编辑main.py就行,它的舒服在于MicroPython不需要任何工具和环境,任何文本工具+1块开发板即可开发编译,可以给它起个外号--口袋编程计算机。。。国内做的比较好的就是TPYBoard v102开发板,有兴趣的可以去学习了解一下,它资料齐全,有视频学习资料,还是不错的,我就是这么入坑的哦。


    2.操作难度
    汇编语言基本操作简单,但是要实现复杂的项目目标相对较难,代码冗长,调试查错困难;C语言有了语句和大量的库函数,相对汇编来说简单了;MicroPython有了比C更多的库函数,代码格式不仅变得简洁,在库的支持下很多函数和方法都不用自己再去写,直接import xx就可以,把类库导入就ok。以前点一个灯需要五六行代码,现在只需要1行代码就可以点亮LED,So  Easy。


    3.程序结构
    汇编语言总体使用跳转结构,不管是子程序的调用还是循环或者散转理论上都是用跳转的方式,中断操作或强行出程序段的操作都需要对压栈有有精确的控制,要求非常严格;C语言总体使用循环结构或顺序结构,不再需要到处跳来执行程序,中断操作会自动进行压栈不需要人为干预,在时序要求高时可嵌入汇编提高效率;MciroPython可以使用C的程序结构或者使用线程结构,线程结构要求的是严格且合理的分配好线程工作时间不能出现冲突,对资源要有很好的把控,不能空挂线程浪费资源,理论上多线程可以更高效的运行,虽然单核同时只能运行单线程但是从宏观角度来说是同步的,在时间要求不严格的情况下可以有效的降低程序的编写难度。

    4.编写方式
    汇编在不使用宏的情况下,通常都是指令直接操作单元,需要记忆大量的数据单元用途,且由于程序行数较多(可能会到一两千行)需要来回翻看程序代码,整个编写流程比较繁琐。而且由于都是8位的单元复杂的数据运算需要嵌套C语言来完成;C语言使用使用任何变量都需要先定义,相比不用特意去记忆变量名称,整体结构清晰多数编程软件都有跳转子程序功能,查找程序块非常方便。有大量的成品头文件包含各种常用函数,相对少了很多复杂的程序代码编写;MicroPython继承了C的编写优点,且不需要预定义,不需要任何结束符号,只需要换行即可继续编写,但是要注意一些特殊情况下Tab键的使用。

    5.易读性
    汇编本身难读因为标记少且直接操作单元,视觉结构上不仅就两列代码而且需要不停的跳转所以本身在读取上就很难;C语言简单的操作代码比较清晰,但是复杂的就会方法中找方法,很多复杂的代码非本人去找,就让人感到非常头疼;MicroPython相比C有更好的易读性,且由于取消了很多特殊符号整体感觉也比较清晰,很多方法都是单独写成单独的库,直接调用即可,每个功能都有单独的类库,看起来极其方便,一目了然。

    通过这几个维度的对比,大家应该很轻松就知道我为什么说MicroPython用起来让人舒服。目前AI是当前社会发展的主流,MicroPython的出现是一个时机,让很多像我这样的初学者,也可以自己做智能小车,学习硬件,它比C语言学习更简单,更适合加入教育,人人都可以学编程,写程序,由此可以看出MicroPython未来市场前景是非常大的,是比Arduino更强大、更容易编程的开发板。

© 著作权归作者所有

共有 人打赏支持
bodasisiter
粉丝 18
博文 162
码字总数 146859
作品 0
潍坊
Python玩转单片机:从基础到进阶,几款主流的开发板大盘点!

Python俨然已成为当下最热门的编程语言(可以说没有之一)。Python火到什么程度?它将被加入小学生教材,纳入高考,估计在不远的将来可能会成为一项常用的技能。 学习python能做什么? 可以快...

bodasisiter
09/05
0
0
零基础如何优雅入门“网红”Python?小白必看的MicroPython视频合集:从入门到精通!

零基础如何优雅入门“网红”Python?小白必看的MicroPython视频合集:从入门到精通! 若问时下最火的一门编程语言是什么?答案一定是Python。 就连高考都开始考Python啦! 这把火已经烧到了程...

bodasisiter
09/10
0
0
MicroPython入门:能跑MicroPython开发板大盘点!

相信对于很多刚刚接触MicroPython的DIY创客来说,首先是被一些大神的作品吸引,然后有冲动自己动手,却发现入门很难,特别是面对各式各样的开发板不知如何选择。目前市面上关于MicroPython开...

bodasisiter
07/06
0
0
人生苦短,用 RT-Thread MicroPython 享受编程的乐趣

在 i.MX RT1050 EVK 开发板上实现这样的一个读取板载的 6 轴传感器信息和系统 CPU 利用率等信息,实时显示到网页中效果,你猜需要多少代码? 事实上 RT-Thread 的同事利用 RT-Thread MicroP...

RTThread物联网操作系统
05/02
0
0
MicroPython新货上架【TPYBoard新品合集】你想要的好玩意儿全在这!

八月火力全开! TPYBoard一大波新品隆重上市! 一次次的研发、尝试 无数次的改进、优化 新品强势来袭 发烧友们期待已久的 STM32F407系列也已全新上线啦~ 1.STM32F407开发板 https://item.tao...

bodasisiter
08/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

阿里开源的 java 诊断工具—— Arthas

Arthas 是 阿里巴巴最近开源出来的一个针对 java 的工具,主要是针对 java 的问题进行诊断! 一、概述 这个工具可以协助你做下面这些事情: 这个类是从哪个 jar 包加载而来的? 为什么会报各...

xiaomin0322
27分钟前
2
0
去除shell read 读取的最后一个字符

# 读取管道数据cat | while read line; do echo $line # 此时 line包含 \n or \r\ndone# 去除 read 读取的特殊字符line=${line%?} # 去除最后一个字符...

tigerBin
27分钟前
1
0
Qt之listView设置编辑状态

QListView默认是可以编辑的,可以用setEditTrigers设置QListView的条目是否可以编辑,以及如何进入编辑状态。比如: ui->listView->setEditTriggers(QAbstractItemView::DoubleClicked | QAb...

OceanStar
28分钟前
1
0
Linux批量替换

sed -i "s/http://cache.co188.com///image.co188.com/g" grep http:\/\/image.co188.com -rl . *.html sed -i "s/http://cache.co188.com///cache.co188.com/g" grep http:\/\/cache.co188.......

cpaku
37分钟前
1
0
设置plsql永久注册码

填写注册码: Product Code:4t46t6vydkvsxekkvf3fjnpzy5wbuhphqz serial Number:601769 password:xs374ca...

小橙子的曼曼
42分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部