0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

RTThread物联网操作系统 来源:未知 2023-05-25 07:45 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

简介这篇文章介绍如何在RT-THREAD bsp上运行pikascript脚本。

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的工具里,首先先执行下面命令menuconfigpkgs --update以及scons --target=mdk5

这样是为了生成比较新的工程,然后打开keil烧入,查看是否可以点亮小灯。

这样做的目的是为了验证当前的基础工程是否是ok的。打开串口

然后将亮灯的小灯注释掉,方便后面点灯

选择pikascript软件包

打开menuconfig选择language分类下面的pikascript版本

73060de4-fa8c-11ed-90ce-dac502259ad0.png

找到对应的pikascript软件包。
然后执行
pkgs --update下载软件包。
然后执行
scons --target=mdk5
然后再下载到板子里。在板子上执行pika 命令,可以看到下面的界面732096fa-fa8c-11ed-90ce-dac502259ad0.png然后接下来我们就可以通过修改软件包下面的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中也可以看到对应的信息
733cd838-fa8c-11ed-90ce-dac502259ad0.png注意事项小灯引脚小灯引脚PB.0要根据你板子上LED信息进行调整,这边就代表PORTB 0 脚上是LED小灯。另外小灯引脚在main.py里面的PB.0 这个会根据你的driver_gpio.c里面的get_num 这个函数来的,如果还没有,可以实现一下,这个函数好像是最近加的,STM32基本都实现了,其他bsp要根据GPIO定义情况实现。

73521cf2-fa8c-11ed-90ce-dac502259ad0.png

报错

如果遇到编译不过的情况,
打开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开发板应该都可以跑。待办事项目前还不是很完善,如果感兴趣,可以帮助我们移植相应的模块到驱动接口上,

目前有以下接口:

  • PWM
  • UART
  • I2C
  • SPI
  • ADC
  • DAC
    这些函数都已经留空,大家直接修改即可,
    切记第一次执行完之后,要把SConscript 中注释掉。

		1#os.system(cwd+'/'+'pikaPackage.exe') 2os.system(cwd+'/'+'rust-msc-latest-win10.exe') 

如何提交代码

写好.c之后 打开网页pikascript.com 最下面有个上传模块7398b9be-fa8c-11ed-90ce-dac502259ad0.png输入模块名称pikaRTDevice73b24906-fa8c-11ed-90ce-dac502259ad0.png选择版本号73d53998-fa8c-11ed-90ce-dac502259ad0.png然后下一步上传.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 开发环境

73f35432-fa8c-11ed-90ce-dac502259ad0.png

立即扫码报名

报名链接

https://jinshuju.net/f/UYxS2k

巡回城市:青岛、北京、西安、成都、武汉、郑州、杭州、深圳、上海、南京

你可以添加微信:rtthread2020 为好友,注明:公司+姓名,拉进RT-Thread官方微信交流群!

74a48694-fa8c-11ed-90ce-dac502259ad0.gif

点击阅读原文,进入RT-Thread 官网


原文标题:手把手教你在RT-THREAD bsp上运行pikascript脚本点亮小灯

文章出处:【微信公众号:RTThread物联网操作系统】欢迎添加关注!文章转载请注明出处。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • RT-Thread
    +关注

    关注

    32

    文章

    1644

    浏览量

    45273

原文标题:手把手教你在RT-THREAD bsp上运行pikascript脚本点亮小灯

文章出处:【微信号:RTThread,微信公众号:RTThread物联网操作系统】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    RT-Thread新开发工具支持:e2studio手把手适配教程 | 技术集结

    Titan-RA8P1的芯片是Renensas的RA8P1系列芯片,瑞萨官方使用的IDE是e2studio。本文介绍如何在e2studio中创建工程并结合RT-Thread的源码,e2studio
    的头像 发表于 04-02 18:06 3606次阅读
    <b class='flag-5'>RT-Thread</b>新开发工具支持:e2studio<b class='flag-5'>手把手</b>适配教程 | 技术集结

    极海APM32F427 MCURT-Thread系统使用LwIP网络功能

    下面是基于RT-Thread的ENV命令行开发环境,APM32F427使用LwIP网络协议栈实现网络通信功能的。
    的头像 发表于 04-02 15:19 8856次阅读
    极海APM32F427 MCU<b class='flag-5'>在</b><b class='flag-5'>RT-Thread</b>系统<b class='flag-5'>上</b>使用LwIP网络功能

    敢不敢让你的芯片上榜?RT-Thread最全BSP支持清单重磅更新!| 技术集结

    作为全球领先的实时嵌入式操作系统,RT-Thread已经积累了超过400款芯片的成熟板级支持包(BSP),覆盖主流架构Cortex-M/R/A、AArch64、RISC-V(32/64)以及多种高端
    的头像 发表于 11-22 09:04 1383次阅读
    敢不敢让你的芯片上榜?<b class='flag-5'>RT-Thread</b>最全<b class='flag-5'>BSP</b>支持清单重磅更新!| 技术集结

    【迅为RK3568开发板NPU实战】别再闲置你的NPU!手把手教你玩转RKNN-Toolkit2 的使用

    【迅为RK3568开发板NPU实战】别再闲置你的NPU!手把手教你玩转RKNN-Toolkit2 的使用
    的头像 发表于 11-11 14:21 1571次阅读
    【迅为RK3568开发板NPU实战】别再闲置你的NPU!<b class='flag-5'>手把手</b><b class='flag-5'>教你</b>玩转RKNN-Toolkit2 的使用

    【直播预告】高性价比智慧视觉处理器FH8626V300L解析,与RT-Thread全栈开发实战 | 问学直播

    对智慧视觉领域感兴趣,或是行业从业者注意啦!11月13日20:00,RT-Thread携手富瀚微技术专家,为您带来FH8626V300L全栈开发实战线上直播,手把手带你从芯片解读到RT-Thread
    的头像 发表于 11-11 11:53 963次阅读
    【直播预告】高性价比智慧视觉处理器FH8626V300L解析,与<b class='flag-5'>RT-Thread</b>全栈开发实战 | 问学直播

    【CPKCOR-RA8D1】5、运行RT-THREAD的适应性调整

    RT-THREAD官方已推出RA8D1的bsp,但是由于时间较为久远,支持的FSP版本较为陈旧。而且bsp是针对ra8d1-ek、ra8d1-vision-board两个开发板制作的,对于
    发表于 10-27 14:49

    rt-thread studio 导入BSP 失败怎么解决?

    rt-thread studio 手动导入bsp 失败。 版本: 2.2.8 构建ID: 202405200930 导入的bsp 是直接从rt-thread 代码仓库下载的 .log
    发表于 10-11 11:07

    scons --target=eclipse 命令执行后,BSP包的dist下生成一个工程,怎么使用rt-thread studio 打开?

    我使用 scons —target=eclipse 可以制作 BSP包,看网上的资料,这个工程,也是rt-thread studio能够使用的工程,请问怎么使用 rt-thread studio 导入或者打开这个工程?
    发表于 10-09 07:09

    RT-Thread生成玄铁RISC-V BSP的CDK工程开发指南 | 技术集结

    目录开发环境配置工程创建CDK工程运行CDK工程编译工程运行与调试RT-Thread课程上线玄铁系列RISC-VBSP上手指南RT-Thread已对玄铁(XuanTie)E、C、R系列
    的头像 发表于 09-28 10:06 4718次阅读
    <b class='flag-5'>RT-Thread</b>生成玄铁RISC-V <b class='flag-5'>BSP</b>的CDK工程开发指南 | 技术集结

    如何使用rt-thread studio中,使用 定制化的SDK建立工程?

    步骤: rt-thread bsp n32 n32l40xcl-stb scons --target=eclipse 再 Scons –dist 生成 dist 目录 进入目录后 再 scons
    发表于 09-26 06:16

    Ubuntu开发基于先楫MCU的RT-Thread应用指南

    1、前言RT-ThreadEnv是RT-Thread推出的开发辅助工具,针对基于RT-Thread操作系统的项目工程,提供编译构建环境、图形化系统配置及软件包管理功能。其内置的menuconfig
    的头像 发表于 08-29 12:22 2169次阅读
    <b class='flag-5'>在</b>Ubuntu<b class='flag-5'>上</b>开发基于先楫MCU的<b class='flag-5'>RT-Thread</b>应用指南

    RT-Thread Nano硬核移植指南:手把手实现VGLite图形驱动适配 | 技术集结

    VGLite是NXP提供的轻量级2D图形API,本文将手把手带你实现VGLite图形驱动适配RT-Thread。文章分为、下两篇,将手把手教您移植。上篇对
    的头像 发表于 07-17 14:40 3659次阅读
    <b class='flag-5'>RT-Thread</b> Nano硬核移植指南:<b class='flag-5'>手把手</b>实现VGLite图形驱动适配 | 技术集结

    揭秘RT-Thread的AUTOSAR CP系统

    本文探讨了RT-Thread与AUTOSARCP的融合,解决车载ECU开发中实时性、安全性与灵活性的平衡问题。通过分层安全内核(rt-safetyos/autoos)和工具链整合,兼容AUTOSAR
    的头像 发表于 06-23 20:22 3475次阅读
    揭秘<b class='flag-5'>RT-Thread</b><b class='flag-5'>上</b>的AUTOSAR CP系统

    手把手教你如何调优Linux网络参数

    高并发网络服务场景中,Linux内核的默认网络参数往往无法满足需求,导致性能瓶颈、连接超时甚至服务崩溃。本文基于真实案例分析,从参数解读、问题诊断到优化实践,手把手教你如何调优Linux网络参数,支撑百万级并发连接。
    的头像 发表于 05-29 09:21 1218次阅读

    正点原子Linux系列全新视频教程来啦!手把手教你MP257开发板,让您轻松入门!

    正点原子Linux系列全新视频教程来啦!手把手教你MP257开发板,让您轻松入门! 一、视频观看 正点原子手把手教你学STM32MP257-第1期:https://www.bilib
    发表于 05-16 10:42