Funpack 第十一期 LPC55S69 移植 MicroPython
Funpack 第十一期 LPC55S69 移植 MicroPython
标签
嵌入式系统
cjmf
更新2021-10-28
1718

LPC55S69 简介

LPC55S69 采用Armv8-M架构,包括TrustZone-M和协处理器扩展。LPC55S6x家族利用协处理器扩展型号,大幅提高信号处理效率,采用专有DSP加速器,使计算的时钟周期减少了10倍。还可选择使用第二个Cortex-M33内核,支持灵活地平衡高性能与功率效率。

RT-Thread 简介

RT-Thread 是一款国产的实时操作系统,它会按照排序运行、管理系统资源,并为开发应用程序提供一致的基础。与一般的操作系统相比,最大的特色就是实时性,如果有一个任务需要执行,实时操作系统会在较短时间内执行该任务,不会有较长的延时,以此保证了各个任务的及时执行。实时操作系统中都要包含一个实时任务调度器,这个任务调度器与其他操作系统的最大不同是强调:严格按照优先级来分配CPU时间,并且时间片轮转不是实时调度器的一个必选项。

移植思路

由于 RT-Thread 官方提供了 MicroPython 软件包,并且 MicroPython 底层和硬件绑定时对接了 RT-Thread 驱动框架,因此可以很方便地在运行了 RT-Thread 的板卡上将 MicroPython 跑起来。

所以通过先移植 RT-Thread ,然后再在 RT-Thread 上运行 MicroPython。

移植 RT-Thread 和 MicroPython

  1. 克隆仓库 https://github.com/RT-Thread/rt-thread
  2. 进入 bsp\lpc55sxx\lpc55s69_nxp_evk 运行 `pkgs --upgrade`
  3. 运行 `menuconfig` 选中 `RT-Thread online packages -> language packages ->MicroPython` 和 `RT-Thread Components -> Device virtual file system -> Enable elm-chan fatfs`FkA1hCauDRPIN0foVQPljlMWSBTeFkrrC64QmkGxmPXTHMWvVIiroKmq
  4. 提升堆栈空间,避免内存不足。Fl_PqgnnTX7U_BLYhuPoyB__5mF8
  5. 检查选中情况,如果没有问题,选择 `Save`FqB9aETSyvO7IonvzTWp2SOHfMZ6
  6. 运行 `pkgs --update` 自动下载依赖包
  7. 运行 `scons --target=mdk5 -s`
  8. 直接打开 `project.uvprojx` 即可编译,出现的问题及解决方案在视频中详细描述,这里不再赘述。

 

Python 串口通信

FgBH1D820-wUdEdqubXd1xu9mM0Z

 

MicroPython 实现呼吸灯

from machine import Pin
import utime

led = Pin(("PA4", 37), Pin.OUT_PP)


def counter(h):
    for i in range(h):
        led.value(0)
        utime.sleep(0.000001)
    for i in range(100-h):
        led.value(1)
        utime.sleep(0.000001)

    # print(h)


def main():
    direct = 0
    duty = 10
    while True:
        if(duty >= 99):
            direct = 1
        if(duty <= 10):
            direct = 0
        duty = duty+1 if direct == 0 else duty-1
        counter(duty)
        # utime.sleep(1)


if __name__ == '__main__':
    main()

 

FlwxNHmNDgTYL3oVlboKIviAbJG0

Fn5Egsl54k87xPv7_KM56Gsu7eCa

心得体会

LPC55S69 的性能非常强大,可以实现多样的功能而不考虑算力硬件限制。在此感谢硬核团队的技术支持,也感谢为 RT-Thread 提交 PR 的热心贡献者。

软硬件
元器件
LPC55S69
基于 Arm® Cortex®-M33 的高效微控制器。
附件下载
rtthread-lpc55s6x.hex
breath.zip
团队介绍
团队成员
cjmf
评论
0 / 100
查看更多
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2024 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号