手把手教你在RT-THREAD bsp上运行pikascript脚本点亮小灯

📅 发布时间:2026/7/8 3:57:30 👁️ 浏览次数:
手把手教你在RT-THREAD bsp上运行pikascript脚本点亮小灯
简介这篇文章介绍如何在RT-THREAD bsp上运行pikascript脚本。pikascript相当于一个小型的micropython。最近有一些结构上的调整写这篇文章大概介绍一下如何使用以及开发过程中需要注意的问题。这篇文章几乎适配所有的RT-THREAD上的bsp。部分bsp可能需要修改一些兼容性问题当然 首先你要对RT-THREAD有所熟悉熟悉网页https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/tutorial/quick-start/stm32f103-simulator/stm32f103-simulator操作步骤下载代码首先将代码下下来git clone https://github.com/RT-Thread/rt-thread在这里的bsp找到自己手上开发板这边我选择使用/bsp/stm32/stm32wb55-st-nucleo 开发板,在env的工具里首先先执行下面命令menuconfig和pkgs --update以及scons --targetmdk5这样是为了生成比较新的工程然后打开keil烧入查看是否可以点亮小灯。这样做的目的是为了验证当前的基础工程是否是ok的。打开串口然后将亮灯的小灯注释掉方便后面点灯选择pikascript软件包打开menuconfig选择language分类下面的pikascript版本找到对应的pikascript软件包。然后执行pkgs --update下载软件包。然后执行scons --targetmdk5然后再下载到板子里。在板子上执行pika 命令可以看到下面的界面然后接下来我们就可以通过修改软件包下面的main.py 文件来修改main.py脚本了。当然你也可以像python一样一个命令一个命令敲。main.py目录bsp\stm32\stm32wb55-st-nucleo\packages\pikascript-latest这边我提供如何点亮小灯的py脚本直接将这个脚本覆盖掉main.py里面内容即可import PikaStdLib import pikaRTThread import PikaStdDevice as machine threadpikaRTThread.Thread()memPikaStdLib.MemChecker()ledmachine.GPIO()led.setPin(PB.0)led.setMode(out)led.enable()led.low()fori inrange(0,10):print(hello PikaScript!)led.low()thread.mdelay(500)led.high()thread.mdelay(500)print(mem use max:)mem.max()修改之后记得执行一下scons --targetmdk5这个时候会把main.py脚本设置进去编译代码下载代码。之后执行pika可以看到小灯闪烁。从log中也可以看到对应的信息注意事项小灯引脚小灯引脚PB.0要根据你板子上LED信息进行调整这边就代表PORTB 0 脚上是LED小灯。另外小灯引脚在main.py里面的PB.0这个会根据你的driver_gpio.c里面的get_num 这个函数来的如果还没有可以实现一下这个函数好像是最近加的STM32基本都实现了其他bsp要根据GPIO定义情况实现。报错如果遇到编译不过的情况打开pikascript package包下面的requestment.txt修改如下pikascript-corev1.12.0PikaStdLibv1.12.0pikaRTThreadv1.3.2pikaRTDevicev1.1.4PikaStdDevicev2.3.5也可以根据https://github.com/pikasTech/PikaPython/blob/68e6da3ae5bacda03600a17b51816bdbe9175326/packages.toml#L358这里查看最新的版本用最新的pikaRTDevice版本最近改动比较大的就是pikaRTDevice 这个模块其他模块暂时不会大改动。如何开发根目录下面的SConscript 文件里面执行了两个exeos.system(cwd/pikaPackage.exe)os.system(cwd/rust-msc-latest-win10.exe)执行pikaPackage.exe 会把所有代码更新一遍同样也会把你的本地的修改覆盖掉所以如果你想尝试修改切记把这个注释掉前面加#即可只有第一次下载的时候需要取消注释。rust-msc-latest-win10.exe 这个会将main.py等进行转换。不需要注释STM32开发板应该都可以跑。待办事项目前还不是很完善如果感兴趣可以帮助我们移植相应的模块到驱动接口上目前有以下接口PWMUARTI2CSPIADCDAC这些函数都已经留空大家直接修改即可切记第一次执行完之后要把SConscript 中注释掉。#os.system(cwd/pikaPackage.exe)os.system(cwd/rust-msc-latest-win10.exe)如何提交代码写好.c之后打开网页pikascript.com最下面有个上传模块输入模块名称pikaRTDevice选择版本号然后下一步上传.c即可会自动生成PR参考examplehttps://github.com/pikasTech/PikaPython/tree/master/package/STM32G0https://github.com/pikasTech/PikaPython/tree/master/package/ESP32