查看: 6992|回复: 10

RT1052 + RT Thread 之 Micropython

[复制链接]
  • TA的每日心情
    开心
    2020-3-29 09:54
  • 签到天数: 418 天

    [LV.9]以坛为家II

    21

    主题

    2928

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    3307
    最后登录
    2021-4-7
    发表于 2018-11-4 11:21:39 | 显示全部楼层 |阅读模式
    上一篇介绍了飞凌RT1052 + RT Thread 系统里跑LED ,今天就接着在RT Thread的RTOS系统上添加支持Micropython运行
    的支持包。也就是在RT Thread 的RTOS 上嵌入Micropython。

    那我们就来对比下,原生的Micropython 和 RT Thread 上跑Micropython的差异和优势:

    1、开发板适配的角度:
    • 原生的 MicroPython :只是对官方自己的开发板支持的非常良好,想要用非官方的板子来跑 MicroPython 就需要自己从头折腾底层的移植。
    • RT-Thread MicroPython:只要是 RT-Thread 支持的板子,有一定资源,都能跑 RT-Thread 版本的 MicroPython ,很大程度上降低了 MicroPython的门槛。


    2、驱动适配的角度:
    • 原生的 MicroPython :如果花了精力,让原生 MicroPython 在自己板子上跑起来,但接下来的驱动适配(Pin/Uart/I2C/SPI等等)工作,第一次搞的话,又会有一大堆坑迎面而来。
    • RT-Thread MicroPython:RT-Thread 支持设备驱动框架,只要是 RT-Thread 支持的板子集成了对应的设备驱动,上层 Python 都可以直接调用,省时又省力。


    3、二次开发的角度:
    • 原生的 MicroPython :有了 MicroPython 后虽然上层能实现 Python 开发,但不可能避免的项目里的有些功能确实是目前的 MicroPython 不支持的,而且只能用 C 来实现。此时就需要修改 MicroPython 源代码,熟悉官方的软件框架,大部分还是裸机模型,这些都会是比较吃力的工作。
    • RT-Thread MicroPython:而 RT-Thread 支持众多 C 的可重用组件,软件包数量目前已经突破 50+ 了,你想要的功能几乎是都能找到,配合图形化的开发工具,二次开发的难度一下子就降低下来了。


    4、多线程的角度:
    • 原生的 MicroPython :官方那边只是很少的 Board 支持多线程,如果自己动手来开发,门槛还是相当高的。
    • RT-Thread MicroPython:RT-Thread 属于 RTOS ,原生就支持多线程。上层的 Python 多线程接口跟 Python 官方也都是保持一致的。


    5、社区生态的角度:
    • 原生的 MicroPython :官方在国外生态还是不错的,可是语言门槛、距离门槛,会让我们国内开发者感觉跟官方的距离还是挺远的。
    • RT-Thread MicroPython:RT-Thread 作为国内最大的嵌入式开源社区,活跃度非常高。RT-Thread 也专门编写的了 《RT-Thread MicroPython 开发手册》,由浅入深的角度带大家一起玩 MicroPython。针对常见的开发板还提供了下载即用的固件,论坛也有专门的 MicroPython 版块,里面还有很多学习资源。



    哈哈,看完介绍,那就直接开撸了:

    首先还是使用RTThread 提供的ENV工具,用ENV工具可以非常方便的添加RT Thread的各种支持包。

    好了,接下来就一步一步的来实现了: 到imxrt1052-evk 然后先 pkgs --upgrade 。先更新下最新的支持包。。

    QQ截图20181102100117.jpg

    然后是就是,menuconfig 命令开启菜单配置功能。。。
    然后选择RT Thread online packages

    QQ截图20181102100211.jpg

    然后,找到language packages 继续确认

    QQ截图20181102100233.jpg

    然后找到Micropython的选项,按键Y就可以确认。。这样,RT Thread的Micropython支持包就被
    配置为激活了。。这里按照默认配置就可以。。


    QQ截图20181102100246.jpg

    好了,保存配置,退出到ENV里。。

    QQ截图20181102100255.jpg

    然后,我们需要使用 pkgs --update 指令来下载Micropython的支持包到本地。。
    (这里说下,menuconfig -s 里可以配置,自动下载配置的支持包,但是有bug,有时候会卡住。
    不建议新手,开启这个功能。还是先手动,操作。。)
    截图红箭头处可以看到,下载的过程和结果。。

    QQ截图20181102100341.jpg

    好了,在目录下,就可以看到,下载好的Micropython,最新的支持包了

    QQ截图20181102100508.jpg

    接下来,使用 scons --target=mdk5 来生成mdk5的过程文件。。

    QQ截图20181102100424.jpg

    过程配置好了,就可以直接用keil 打开工程了。。

    QQ截图20181102100443.jpg

    现在在keil 工程里,就可以看到,RT Thread的工程里添加上了Micropython了


    QQ截图20181102100525.jpg

    这里还需要对,工程进行下,正确的配置。
    RT Thread 官方的工程里,是老版本的mcu 我们需要配置下。。

    QQ截图20181102100749.jpg

    配置使用jlink v9  SWD 模式

    QQ截图20181102102207.jpg

    还有就是配置下载算法,这个非常关键,配置错了,下载不进去,就会很抓狂了。。

    QQ截图20181102100847.jpg

    好了,这里为了演示,我修改了,Micropython的初始化信息,添加了 Compiled By Paderboy。。。

    QQ截图20181102101038.jpg

    好了,前期的各种配置都做好了。接下来就是编译工程了。。
    编译工程比较费时。。

    QQ截图20181102102109.jpg

    编译好了,就可以准备,下载前的工作了。。。 RT1052 板卡断电,拨码开关3设置为ON
    然后,上电,点击下载;

    QQ截图20181102102228.jpg

    工程下载好了,接下来就是;RT1052 板卡断电,拨码开关3设置为OFF


    QQ截图20181102102308.jpg

    然后,接好串口,开启putty 配置115200的波特率。。
    给RT1052 板卡上电,就可以看到 RT Thread系统正常输出Logo了。。
    在红箭头处,可以看到,RT RTOS系统里已经有Python(也就是Micropython)

    QQ截图20181102102430.jpg

    好了,直接输入python 就会进入Micropython的运行环境了。。
    红箭头处,可以看到,Micropython打印的logo里有我上面修改的
    Compiled By Paderboy
    QQ截图20181102102459.jpg

    接下来直接,用print 测试输出打印测试。。

    QQ截图20181102102712.jpg

    现在就可以愉快的用Micropython的命令来给FORLINX i.MX RT1052 点亮板载的led灯了。。

    QQ截图20181102103215.jpg


    QQ截图20181102103345.jpg

    好了,最后必须给RT Thread RTOS 一个大大的赞。。。国产的RTOS 也能这么给力。。。。



    该会员没有填写今日想说内容.
    回复

    使用道具 举报

  • TA的每日心情

    2021-2-4 09:24
  • 签到天数: 190 天

    [LV.7]常住居民III

    38

    主题

    591

    帖子

    28

    金牌会员

    Rank: 6Rank: 6

    积分
    2193
    最后登录
    2023-12-1
    发表于 2018-11-4 11:50:46 | 显示全部楼层
    大神,学习一波,rtt太强大了,我也在学的过程中
    哎...今天够累的,签到来了~
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2020-3-29 09:54
  • 签到天数: 418 天

    [LV.9]以坛为家II

    21

    主题

    2928

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    3307
    最后登录
    2021-4-7
     楼主| 发表于 2018-11-4 12:03:09 | 显示全部楼层
    mzy2364 发表于 2018-11-4 11:50
    大神,学习一波,rtt太强大了,我也在学的过程中

    一起学习。。。。
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    0

    主题

    2

    帖子

    0

    新手上路

    Rank: 1

    积分
    6
    最后登录
    2018-11-4
    发表于 2018-11-4 12:36:05 | 显示全部楼层
    师爷。。我来了。。。。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2024-2-8 09:39
  • 签到天数: 217 天

    [LV.7]常住居民III

    92

    主题

    1111

    帖子

    29

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    7576

    热心会员

    最后登录
    2024-4-17
    发表于 2018-11-4 12:49:02 | 显示全部楼层
    看了您的贴子,突然对RTT很感兴趣了,本来以为是像 freeRTOS那样的轻量级系统,现在看支持,太强大了,有时间一定好好研究一下
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2020-3-29 09:54
  • 签到天数: 418 天

    [LV.9]以坛为家II

    21

    主题

    2928

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    3307
    最后登录
    2021-4-7
     楼主| 发表于 2018-11-4 12:53:33 | 显示全部楼层
    az158 发表于 2018-11-4 12:49
    看了您的贴子,突然对RTT很感兴趣了,本来以为是像 freeRTOS那样的轻量级系统,现在看支持,太强大了,有时 ...

    很强大,,,
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2020-3-29 09:54
  • 签到天数: 418 天

    [LV.9]以坛为家II

    21

    主题

    2928

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    3307
    最后登录
    2021-4-7
     楼主| 发表于 2018-11-4 12:53:52 | 显示全部楼层
    wo00niu 发表于 2018-11-4 12:36
    师爷。。我来了。。。。

    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-11-17 09:58
  • 签到天数: 15 天

    [LV.4]偶尔看看III

    3

    主题

    253

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    2968
    最后登录
    2019-10-21
    发表于 2018-11-7 08:24:50 | 显示全部楼层
    RTT 不错
    Hi,I am creep!
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2020-3-29 09:54
  • 签到天数: 418 天

    [LV.9]以坛为家II

    21

    主题

    2928

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    3307
    最后登录
    2021-4-7
     楼主| 发表于 2018-11-8 21:13:55 | 显示全部楼层
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    0

    主题

    2

    帖子

    0

    新手上路

    Rank: 1

    积分
    10
    最后登录
    2021-1-20
    发表于 2020-4-29 11:58:34 | 显示全部楼层
    学习学习
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2024-4-19 23:58 , Processed in 0.171201 second(s), 31 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表