如何将micropython升级到v1.15

发布时间:2021-10-09 16:08:08 作者:柒染
来源:亿速云 阅读:227

这篇文章将为大家详细讲解有关如何将micropython升级到v1.15,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

MicroPython在这个版本中增加了对使用CMake作为构建系统的通用支持。RP2移植被合并以使用新的CMake文件,esp32和zephyr移植已切换为纯CMake项目。这三个移植都有围绕CMake构建的SDK,这一更改使它们更易于维护和使用。

作为这项工作的一部分,基于CMake的移植现在支持用户C模块。用户C模块的作者应该同时提供.mk和.cmake配置文件(遵循文档和示例)。

修复了多精度整数库中的一个错误,即长除法例程中的算术溢出。在此修复之前,某些整数除法将花费大量时间并产生不正确的结果。有关详细信息,请参见提交0a59938。此外,还修复了正则表达式,在编译表达式时检查和报告字节溢出错误。参见172fb52。

在uasyncio库中,添加了一个新的MicroPython扩展ThreadSafeFlag,它可以从asyncio事件循环外部进行设置,例如从其他线程、irq或调度程序上下文。它允许像irq这样的抢占式代码中向asyncio任务发送信号,这些任务本质上是协作的(非抢占式的)。asyncio.current_task() 也已添加,语义与CPython相同。

如上所述,esp32移植已切换到基于CMake的完整项目,传统的make功能已被删除(尽管仍保留一个简单的helper Makefile,以使顶级构建/部署命令与其他移植保持一致)。因为切换到 CMake,network.LAN 支持已被删除,并将在以后重新添加(如果需要LAN,请使用以前的版本)。esp32模块增加了对非易失性存储的基本支持。此外,还初步支持 ESP32-S2 和 USB,并定义了一个通用的 S2板。

在mimxrt和samd移植上,USB-CDC-TX处理已修复,因此现在可以可靠地工作。

RP2移植启用了更多的Python核心特性,同时还启用了ubinascii.crc32()、uos.VfsFat和machine.Signal类,以及uerrno模块。uos.urandom() 已添加,并且machine.freq() 现在可以更改CPU时钟频率。machine.UART 类现在支持timeout/timeout_char、反转的TX/RX信号和可配置缓冲区大小的TX/RX。对于PIO,StateMachine添加了restart(), rx_fifo() 和 tx_fifo()助手函数,并支持fifo连接。现在支持用户C模块(通过CMake)和构建不同的板配置(默认仍然是PICO板)。提高了USB的可靠性。

对于stm32移植,现在有更多的板配置选项,例如USBD VID/PID和模块的fine-grained选择。UART类现在支持L0、L4、H7和WB MCU上的LPUART。WB MCU对访问BLE ACL 自由缓冲区列表的竞争条件有一个修复,解决低级BLE bug。

zephyr移植已经更新为使用 Zephyr v2.5.0,并使用 CMake 构建MicroPython。

下面是从git提交历史生成的更改的详细列表,并将其组织为多个部分。

主要组件

all:

py core:

extmod:

lib:

drivers: no changes specific to this component/port

mpy-cross: no changes specific to this component/port

支撑组件

docs:

examples:

tests:

tools:

移植

all ports:

bare-arm port:

cc3200 port: no changes specific to this component/port

esp8266 port:

esp32 port:

javascript port: no changes specific to this component/port

mimxrt port:

minimal port: no changes specific to this component/port

nrf port:

pic16bit port: no changes specific to this component/port

powerpc port: no changes specific to this component/port

qemu-arm port: no changes specific to this component/port

rp2 port:

samd port:

stm32 port:

teensy port: no changes specific to this component/port

unix port:

windows port: no changes specific to this component/port

zephyr port:


关于如何将micropython升级到v1.15就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

推荐阅读:
  1. 如何将项目升级到vue-cli3
  2. opatch auto如何将11.2.0.4 rac升级到11.2.0.4.160419

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

micropython

上一篇:怎么系统地自学Python编程

下一篇:如何使用golang etcd raft协议

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》