pikascript相当于一个小型的micropython。
原文:https://blog.csdn.net/lt6210925/article/details/130694587
最近有一些结构上的调整,这篇文章大概介绍一下如何使用。以及开发过程中需要注意的问题。
这篇文章几乎适配所有的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 --target=mdk5
这样是为了生成比较新的工程,然后打开keil烧入,查看是否可以点亮小灯。
这样做的目的是为了验证当前的基础工程是否是ok的。打开串口
然后将亮灯的小灯注释掉,方便后面点灯
选择pikascript软件包
打开menuconfig
选择language
分类下面的pikascript版本
找到对应的pikascript软件包。
然后执行
pkgs --update
下载软件包。然后执行
scons --target=mdk5
然后再下载到板子里。在板子上执行pika 命令,可以看到下面的界面然后接下来我们就可以通过修改软件包下面的main.py 文件来修改main.py脚本了。当然你也可以像python一样,一个命令一个命令敲。 main.py目录:bspstm32stm32wb55-st-nucleopackagespikascript-latest这边我提供如何点亮小灯的py脚本,直接将这个脚本覆盖掉main.py里面内容即可
1importPikaStdLib
2importpikaRTThread
3importPikaStdDeviceasmachine
4
5thread=pikaRTThread.Thread()
6mem=PikaStdLib.MemChecker()
7led=machine.GPIO()
8led.setPin('PB.0')
9led.setMode('out')
10led.enable()
11led.low()
12
13foriinrange(0,10):
14print('helloPikaScript!')
15led.low()
16thread.mdelay(500)
17led.high()
18thread.mdelay(500)
19
20print('memusemax:')
21mem.max()
修改之后记得执行一下scons --target=mdk5
这个时候会把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修改如下
1pikascript-core==v1.12.0
2PikaStdLib==v1.12.0
3pikaRTThread==v1.3.2
4pikaRTDevice==v1.1.4
5PikaStdDevice==v2.3.5
也可以根据https://github.com/pikasTech/PikaPython/blob/68e6da3ae5bacda03600a17b51816bdbe9175326/packages.toml#L358这里查看最新的版本,用最新的pikaRTDevice版本最近改动比较大的就是pikaRTDevice 这个模块,其他模块暂时不会大改动。
如何开发
根目录下面的SConscript 文件里面执行了两个exe
1os.system(cwd+'/'+'pikaPackage.exe')
2os.system(cwd+'/'+'rust-msc-latest-win10.exe')
执行pikaPackage.exe 会把所有代码更新一遍(同样也会把你的本地的修改覆盖掉),所以如果你想尝试修改,切记把这个注释掉,前面加#即可,只有第一次下载的时候需要取消注释。rust-msc-latest-win10.exe 这个会将main.py等进行转换。不需要注释STM32开发板应该都可以跑。待办事项目前还不是很完善,如果感兴趣,可以帮助我们移植相应的模块到驱动接口上,目前有以下接口:
1#os.system(cwd+'/'+'pikaPackage.exe') 2os.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———————End———————
RT-Thread线下入门培训
6月 - 郑州、杭州、深圳
1.免费2.动手实验+理论3.主办方免费提供开发板4.自行携带电脑,及插线板用于笔记本电脑充电5.参与者需要有C语言、单片机(ARM Cortex-M核)基础,请提前安装好RT-Thread Studio 开发环境
立即扫码报名
报名链接
https://jinshuju.net/f/UYxS2k
巡回城市:青岛、北京、西安、成都、武汉、郑州、杭州、深圳、上海、南京
你可以添加微信:rtthread2020 为好友,注明:公司+姓名,拉进RT-Thread官方微信交流群!
点击阅读原文,进入RT-Thread 官网
-
RT-Thread
+关注
关注
31文章
1271浏览量
39905
原文标题:手把手教你在RT-THREAD bsp上运行pikascript脚本点亮小灯
文章出处:【微信号:RTThread,微信公众号:RTThread物联网操作系统】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论