0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

手把手教你在RT-THREAD bsp上運(yùn)行pikascript腳本點(diǎn)亮小燈

RTThread物聯(lián)網(wǎng)操作系統(tǒng) ? 來(lái)源:未知 ? 2023-05-25 07:45 ? 次閱讀
簡(jiǎn)介這篇文章介紹如何在RT-THREAD bsp上運(yùn)行pikascript腳本。

pikascript相當(dāng)于一個(gè)小型的micropython

原文:https://blog.csdn.net/lt6210925/article/details/130694587

最近有一些結(jié)構(gòu)上的調(diào)整,這篇文章大概介紹一下如何使用。以及開(kāi)發(fā)過(guò)程中需要注意的問(wèn)題。

這篇文章幾乎適配所有的RT-THREAD上的bsp。(部分bsp可能需要修改一些兼容性問(wèn)題)

當(dāng)然,首先你要對(duì)RT-THREAD有所熟悉

熟悉網(wǎng)頁(yè)https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/tutorial/quick-start/stm32f103-simulator/stm32f103-simulator

操作步驟

下載代碼

首先將代碼下載下來(lái)
git clone https://github.com/RT-Thread/rt-thread

在這里的bsp找到自己手上開(kāi)發(fā)板,這邊我選擇使用/bsp/stm32/stm32wb55-st-nucleo 開(kāi)發(fā)板,

在env的工具里,首先先執(zhí)行下面命令menuconfigpkgs --update以及scons --target=mdk5

這樣是為了生成比較新的工程,然后打開(kāi)keil燒入,查看是否可以點(diǎn)亮小燈。

這樣做的目的是為了驗(yàn)證當(dāng)前的基礎(chǔ)工程是否是ok的。打開(kāi)串口

然后將亮燈的小燈注釋掉,方便后面點(diǎn)燈

選擇pikascript軟件包

打開(kāi)menuconfig選擇language分類(lèi)下面的pikascript版本

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

找到對(duì)應(yīng)的pikascript軟件包。
然后執(zhí)行
pkgs --update下載軟件包。
然后執(zhí)行
scons --target=mdk5
然后再下載到板子里。在板子上執(zhí)行pika 命令,可以看到下面的界面732096fa-fa8c-11ed-90ce-dac502259ad0.png然后接下來(lái)我們就可以通過(guò)修改軟件包下面的main.py 文件來(lái)修改main.py腳本了。當(dāng)然你也可以像python一樣,一個(gè)命令一個(gè)命令敲。 main.py目錄:bspstm32stm32wb55-st-nucleopackagespikascript-latest這邊我提供如何點(diǎn)亮小燈的py腳本,直接將這個(gè)腳本覆蓋掉main.py里面內(nèi)容即可
 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()
修改之后記得執(zhí)行一下scons --target=mdk5這個(gè)時(shí)候會(huì)把main.py腳本設(shè)置進(jìn)去,編譯代碼下載代碼。之后執(zhí)行pika可以看到小燈閃爍。
從log中也可以看到對(duì)應(yīng)的信息
733cd838-fa8c-11ed-90ce-dac502259ad0.png注意事項(xiàng)小燈引腳小燈引腳PB.0要根據(jù)你板子上LED信息進(jìn)行調(diào)整,這邊就代表PORTB 0 腳上是LED小燈。另外小燈引腳在main.py里面的PB.0 這個(gè)會(huì)根據(jù)你的driver_gpio.c里面的get_num 這個(gè)函數(shù)來(lái)的,如果還沒(méi)有,可以實(shí)現(xiàn)一下,這個(gè)函數(shù)好像是最近加的,STM32基本都實(shí)現(xiàn)了,其他bsp要根據(jù)GPIO定義情況實(shí)現(xiàn)。

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

報(bào)錯(cuò)

如果遇到編譯不過(guò)的情況,
打開(kāi)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
也可以根據(jù)https://github.com/pikasTech/PikaPython/blob/68e6da3ae5bacda03600a17b51816bdbe9175326/packages.toml#L358這里查看最新的版本,用最新的pikaRTDevice版本

最近改動(dòng)比較大的就是pikaRTDevice 這個(gè)模塊,其他模塊暫時(shí)不會(huì)大改動(dòng)。

如何開(kāi)發(fā)

根目錄下面的SConscript 文件里面執(zhí)行了兩個(gè)exe
1os.system(cwd+'/'+'pikaPackage.exe')
2os.system(cwd+'/'+'rust-msc-latest-win10.exe')
執(zhí)行pikaPackage.exe 會(huì)把所有代碼更新一遍(同樣也會(huì)把你的本地的修改覆蓋掉),所以如果你想嘗試修改,切記把這個(gè)注釋掉,前面加#即可,只有第一次下載的時(shí)候需要取消注釋。rust-msc-latest-win10.exe 這個(gè)會(huì)將main.py等進(jìn)行轉(zhuǎn)換。不需要注釋STM32開(kāi)發(fā)板應(yīng)該都可以跑。待辦事項(xiàng)目前還不是很完善,如果感興趣,可以幫助我們移植相應(yīng)的模塊到驅(qū)動(dòng)接口上,

目前有以下接口:

  • PWM
  • UART
  • I2C
  • SPI
  • ADC
  • DAC
    這些函數(shù)都已經(jīng)留空,大家直接修改即可,
    切記第一次執(zhí)行完之后,要把SConscript 中注釋掉。

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

如何提交代碼

寫(xiě)好.c之后 打開(kāi)網(wǎng)頁(yè)pikascript.com 最下面有個(gè)上傳模塊7398b9be-fa8c-11ed-90ce-dac502259ad0.png輸入模塊名稱(chēng)pikaRTDevice73b24906-fa8c-11ed-90ce-dac502259ad0.png選擇版本號(hào)73d53998-fa8c-11ed-90ce-dac502259ad0.png然后下一步上傳.c即可,會(huì)自動(dòng)生成PR 參考examplehttps://github.com/pikasTech/PikaPython/tree/master/package/STM32G0https://github.com/pikasTech/PikaPython/tree/master/package/ESP32

———————End———————

RT-Thread線下入門(mén)培訓(xùn)

6月 - 鄭州、杭州、深圳

1.免費(fèi)2.動(dòng)手實(shí)驗(yàn)+理論3.主辦方免費(fèi)提供開(kāi)發(fā)板4.自行攜帶電腦,及插線板用于筆記本電腦充電5.參與者需要有C語(yǔ)言、單片機(jī)ARM Cortex-M核)基礎(chǔ),請(qǐng)?zhí)崆鞍惭b好RT-Thread Studio 開(kāi)發(fā)環(huán)境

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

立即掃碼報(bào)名

報(bào)名鏈接

https://jinshuju.net/f/UYxS2k

巡回城市:青島、北京、西安、成都、武漢、鄭州、杭州、深圳、上海、南京

你可以添加微信:rtthread2020 為好友,注明:公司+姓名,拉進(jìn)RT-Thread官方微信交流群!

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

點(diǎn)擊閱讀原文,進(jìn)入RT-Thread 官網(wǎng)


原文標(biāo)題:手把手教你在RT-THREAD bsp上運(yùn)行pikascript腳本點(diǎn)亮小燈

文章出處:【微信公眾號(hào):RTThread物聯(lián)網(wǎng)操作系統(tǒng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。


聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • RT-Thread
    +關(guān)注

    關(guān)注

    31

    文章

    1289

    瀏覽量

    40140

原文標(biāo)題:手把手教你在RT-THREAD bsp上運(yùn)行pikascript腳本點(diǎn)亮小燈

文章出處:【微信號(hào):RTThread,微信公眾號(hào):RTThread物聯(lián)網(wǎng)操作系統(tǒng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Air780E模組LuatOS開(kāi)發(fā)實(shí)戰(zhàn) —— 手把手教你搞定數(shù)據(jù)打包解包

    本文要說(shuō)的是低功耗4G模組Air780E的LuatOS開(kāi)發(fā)實(shí)戰(zhàn),我將手把手教你搞定數(shù)據(jù)打包解包。
    的頭像 發(fā)表于 12-03 11:17 ?175次閱讀
    Air780E模組LuatOS開(kāi)發(fā)實(shí)戰(zhàn) —— <b class='flag-5'>手把手</b><b class='flag-5'>教你</b>搞定數(shù)據(jù)打包解包

    RT-ThreadCAN實(shí)踐

    開(kāi)箱測(cè)試RT-Thread官方已完成了對(duì)英飛凌XMC7200EVK的移植,通過(guò)shell可以看到做好了uart3的console。本文將介紹如何進(jìn)行RT-ThreadCan移植。接下來(lái)我們要完成CAN_FD的驅(qū)動(dòng)移植,并正常啟動(dòng)RT-T
    的頭像 發(fā)表于 11-13 01:03 ?1186次閱讀
    <b class='flag-5'>RT-Thread</b><b class='flag-5'>上</b>CAN實(shí)踐

    rt-thread bsp里esp32c3里編譯出的bin文件燒到esp32的開(kāi)發(fā)板運(yùn)行提示chipid不對(duì),為什么?

    rt-thread bsp里esp32c3里編譯出的bin文件燒到esp32的開(kāi)發(fā)板 運(yùn)行提示chipid不對(duì),是否有方法修改能支持es
    發(fā)表于 09-27 10:01

    rt-thread studio導(dǎo)入bsp失敗的原因?

    rt-thread studio導(dǎo)入bsp失敗,bsp:gd32470z-lckfb
    發(fā)表于 09-27 09:54

    rt-thread studio導(dǎo)入bsp失敗的原因?

    rt-thread studio導(dǎo)入bsp失敗,bsp:gd32470z-lckfb
    發(fā)表于 09-13 07:49

    rt-thread studio手動(dòng)導(dǎo)入bsp失敗的原因?怎么處理?

    rt-thread studio 手動(dòng)導(dǎo)入bsp 失敗。 版本: 2.2.8 構(gòu)建ID: 202405200930 導(dǎo)入的bsp 是直接從rt-thread 代碼倉(cāng)庫(kù)下載的
    發(fā)表于 09-13 06:45

    手把手教你排序算法怎么寫(xiě)

    今天以直接插入排序算法,給大家分享一下排序算法的實(shí)現(xiàn)思路,主要包含以下部分內(nèi)容:插入排序介紹插入排序算法實(shí)現(xiàn)手把手教你排序算法怎么寫(xiě)在添加新的記錄時(shí),使用順序查找的方式找到其要插入的位置,然后將
    的頭像 發(fā)表于 06-04 08:03 ?694次閱讀
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b>排序算法怎么寫(xiě)

    6月6日杭州站RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    6月6日下午我們將在杭州舉辦RT-Thread混合部署線下workshop,瑞芯微RK3568平臺(tái)實(shí)現(xiàn)同時(shí)運(yùn)行RT-Thread和lin
    的頭像 發(fā)表于 05-28 08:35 ?448次閱讀
    6月6日杭州站<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    5月16日南京站RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    5月16日下午我們將在南京舉辦RT-Thread混合部署線下workshop,瑞芯微RK3568平臺(tái)實(shí)現(xiàn)同時(shí)運(yùn)行RT-Thread和li
    的頭像 發(fā)表于 05-01 08:35 ?372次閱讀
    5月16日南京站<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    RT-Thread混合部署Workshop北京站來(lái)啦!

    4月25日,下午我們將在北京舉辦RT-Thread混合部署線下workshop,瑞芯微RK3568平臺(tái)實(shí)現(xiàn)同時(shí)運(yùn)行RT-Thread和l
    的頭像 發(fā)表于 04-19 08:34 ?448次閱讀
    <b class='flag-5'>RT-Thread</b>混合部署Workshop北京站來(lái)啦!

    4月25日北京站RT-Thread線下workshop,探索RT-Thread混合部署新模式

    4月25日,下午我們將在北京舉辦RT-Thread混合部署線下workshop,瑞芯微RK3568平臺(tái)實(shí)現(xiàn)同時(shí)運(yùn)行RT-Thread和l
    的頭像 發(fā)表于 04-16 08:35 ?424次閱讀
    4月25日北京站<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式

    4月10日深圳場(chǎng)RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    4月10日我們將在深圳福田舉辦RT-Thread混合部署線下workshop,瑞芯微RK3568平臺(tái)實(shí)現(xiàn)同時(shí)運(yùn)行RT-Thread和li
    的頭像 發(fā)表于 03-27 11:36 ?827次閱讀
    4月10日深圳場(chǎng)<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    4月10日深圳場(chǎng)RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    4月10日我們將在深圳福田舉辦RT-Thread混合部署線下workshop,瑞芯微RK3568平臺(tái)實(shí)現(xiàn)同時(shí)運(yùn)行RT-Thread和li
    的頭像 發(fā)表于 03-27 08:34 ?537次閱讀
    4月10日深圳場(chǎng)<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    如何在PSoC62 Evaluation kit開(kāi)發(fā)板運(yùn)行RT-Thread呢?

    本文主要介紹如何在PSoC62 Evaluation kit開(kāi)發(fā)板運(yùn)行RT-Thread,如何連接CYW43012 WiFi藍(lán)牙模組,以及如何進(jìn)行WiFi聯(lián)網(wǎng)、網(wǎng)絡(luò)延遲、網(wǎng)絡(luò)帶寬測(cè)試。
    的頭像 發(fā)表于 02-27 10:49 ?1026次閱讀
    如何在PSoC62 Evaluation kit開(kāi)發(fā)板<b class='flag-5'>上</b><b class='flag-5'>運(yùn)行</b><b class='flag-5'>RT-Thread</b>呢?

    工程送樣!手把手教你用好廣和通RedCap模組FG131&amp;amp;FG132系列

    工程送樣!手把手教你用好廣和通RedCap模組FG131&FG132系列
    的頭像 發(fā)表于 01-11 18:22 ?705次閱讀
    工程送樣!<b class='flag-5'>手把手</b><b class='flag-5'>教你</b>用好廣和通RedCap模組FG131&amp;amp;FG132系列