Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
PikaScript
手把手教你在RT-THREAD bsp上运行pikascript脚本点亮小灯
发布于 2023-05-15 23:25:27 浏览:503
订阅该版
[tocm] ## 简介 这篇文章介绍如何在RT-THREAD bsp上运行pikascript脚本。 pikascript相当于一个小型的micropython。 最近有一些结构上的调整,写这篇文章大概介绍一下如何使用,以及开发过程中需要注意的问题。 这篇文章几乎适配所有的RT-THREAD上的bsp。(部分bsp可能需要修改一些兼容性问题) 图片不显示,可以直接点击https://blog.csdn.net/lt6210925/article/details/130694587 查看 ## 操作步骤 ### 下载代码 首先将代码下下来 `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` ![在这里插入图片描述](https://img-blog.csdnimg.cn/0eb8f0637e894a4292b141feaa31bdd5.png)找到对应的pikascript软件包。 然后执行`pkgs --update` 下载软件包。 然后执行`scons --target=mdk5` 然后再下载到板子里。在板子上执行pika 命令,可以看到下面的界面 ![在这里插入图片描述](https://img-blog.csdnimg.cn/bbd4fe009a6b46f999d2ebf02ee76d11.png) 然后接下来我们就可以通过修改软件包下面的main.py 文件来修改main.py脚本了。 当然你也可以像python一样,一个命令一个命令敲。 main.py目录: bsp\stm32\stm32wb55-st-nucleo\packages\pikascript-latest 这边我提供如何点亮小灯的py脚本。 ```c import PikaStdLib import pikaRTThread import PikaStdDevice as machine thread = pikaRTThread.Thread() mem = PikaStdLib.MemChecker() led = machine.GPIO() led.setPin('PB.0') led.setMode('out') led.enable() led.low() for i in range(0, 10): print('hello PikaScript!') led.low() thread.mdelay(500) led.high() thread.mdelay(500) print('mem use max:') mem.max() ``` 修改之后记得执行一下`scons --target=mdk5` 这个时候会把main.py脚本设置进去,编译代码下载代码。之后执行pika可以看到小灯闪烁。 从log中也可以看到对应的信息 ![在这里插入图片描述](https://img-blog.csdnimg.cn/6350714fb7864f4bbb84b7db20ee4ffe.png) ### 注意事项 #### 小灯引脚 小灯引脚在main.py里面的`PB.0` 这个根据你的driver_gpio.c里面的get_num 这个函数来的,如果还没有,可以实现一下 ![在这里插入图片描述](https://img-blog.csdnimg.cn/e38f3944b8664cae81617b4cb46321d6.png) #### 如何开发 根目录下面的SConscript 文件里面执行了两个exe ```c os.system(cwd + '/' + 'pikaPackage.exe') os.system(cwd + '/' + 'rust-msc-latest-win10.exe') ``` 执行pikaPackage.exe 会把所有代码更新一遍(同样也会把你的本地的修改覆盖掉),所以如果你想尝试修改,切记把这个注释掉,前面加#即可,只有第一次下载的时候需要取消注释。 rust-msc-latest-win10.exe 这个会将main.py等进行转换。不需要注释 STM32开发板应该都可以跑。 #### 待办事项 目前还不是很完善,如果感兴趣,可以帮助我们移植相应的模块到驱动接口上, 目前有以下接口: - PWM - UART - I2C - SPI - ADC - DAC 这些函数都已经留空,大家直接修改即可, 切记第一次执行完之后,要把SConscript 中注释掉。 ```c #os.system(cwd + '/' + 'pikaPackage.exe') os.system(cwd + '/' + 'rust-msc-latest-win10.exe') ``` 参考example https://github.com/pikasTech/PikaPython/tree/master/package/STM32G0 https://github.com/pikasTech/PikaPython/tree/master/package/ESP32
1
条评论
默认排序
按发布时间排序
登录
注册新账号
关于作者
RTT_逍遥
https://github.com/supperthomas
文章
36
回答
499
被采纳
75
关注TA
发私信
相关文章
1
利用qemu-vexpress-a9学习pikascript的问题
2
pikascript 移植报错
3
rt-thread下运行pikascript 无法打印数字
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
WIZnet_W5500
UART
ota在线升级
PWM
cubemx
freemodbus
flash
packages_软件包
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
flashDB
socket
中断
Debug
编译报错
SFUD
msh
rt_mq_消息队列_msg_queue
keil_MDK
ulog
MicroPython
C++_cpp
本月问答贡献
出出啊
1517
个答案
342
次被采纳
小小李sunny
1443
个答案
289
次被采纳
张世争
805
个答案
174
次被采纳
crystal266
547
个答案
161
次被采纳
whj467467222
1222
个答案
148
次被采纳
本月文章贡献
出出啊
1
篇文章
4
次点赞
小小李sunny
1
篇文章
1
次点赞
张世争
1
篇文章
1
次点赞
crystal266
2
篇文章
2
次点赞
whj467467222
2
篇文章
1
次点赞
回到
顶部
发布
问题
投诉
建议
回到
底部