日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

micropython固件源码_Micropython加速物联网开发7 - Micropython源码编译与固件更新

發(fā)布時(shí)間:2024/9/27 python 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 micropython固件源码_Micropython加速物联网开发7 - Micropython源码编译与固件更新 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在實(shí)際開發(fā)中,難免會(huì)遇到編譯Micropython源碼的情況:比如當(dāng)前固件損壞、固件版本升級(jí)、需要裁剪固件節(jié)省空間等。本文介紹在Linux環(huán)境中編譯Micropython源碼并下載到TPYBoard運(yùn)行的流程。

獲取Micropython源碼

Linux環(huán)境下獲取Micropython源碼非常簡(jiǎn)單,使用git clone:

git clone https://github.com/micropython/micropython.git

安裝arm-none-eabi交叉編譯器

到?官網(wǎng)?下載arm-none-eabi安裝包,我使用的是gcc-arm-none-eabi-5_4-2016q3-20160926-linux.tar.bz2。

解壓:tar jxvf?gcc-arm-none-eabi-5_4-2016q3-20160926-linux.tar.bz2

解壓后生成目錄gcc-arm-none-eabi-5_4-2016q3,編譯器指令在bin目錄中。

將交叉編譯器加入環(huán)境變量:

在/etc/profile文件末尾添加export PATH=/opt/mpy_compiler/gcc-arm-none-eabi-5_4-2016q3/bin:$PATH

執(zhí)行source /etc/profile

輸入arm-none-eabi-gcc -v驗(yàn)證編譯器安裝、設(shè)置結(jié)果,能夠成功返回編譯器信息則表示安裝成功。

X86 Linux GCC版本約定

我使用的centos默認(rèn)gcc版本為4.4.7,在編譯mpy-cross過(guò)程中報(bào)錯(cuò):py/objdict.c:473: error: dereferencing pointer ‘o’ does break strict-aliasing rules,原因是編譯器版本太低,因此將gcc編譯器升級(jí)到4.8。

升級(jí)步驟如下:

wget http://people.centos.org/tru/devtools-2/devtools-2.repo

mv devtools-2.repo /etc/yum.repos.d

yum install devtoolset-2-gcc devtoolset-2-binutils devtoolset-2-gcc-c++

安裝之后編譯器指令路徑為:/opt/rh/devtoolset-2/root/usr/bin

備份舊版本,為編譯器建立新的軟鏈接:

mv /usr/bin/gcc /usr/bin/gcc-4.4.7

mv /usr/bin/g++ /usr/bin/g++-4.4.7

mv /usr/bin/c++ /usr/bin/c++-4.4.7

ln -s /opt/rh/devtoolset-2/root/usr/bin/gcc /usr/bin/gcc

ln -s /opt/rh/devtoolset-2/root/usr/bin/c++ /usr/bin/c++

ln -s /opt/rh/devtoolset-2/root/usr/bin/g++ /usr/bin/g++

查看gcc版本:

[root@donkey bin]# gcc --version

gcc (GCC) 4.8.2 20140120 (Red Hat 4.8.2-15)

Copyright (C) 2013 Free Software Foundation, Inc.

This is free software; see the source for copying conditions. There is NO

warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

編譯mpy-cross

mpy-cross是Micropython自身的交叉編譯器,編譯固件之前需要先編譯mpy-cross。cd mpy-crossmake編譯完成生成命令mpy-cross:

CC main.c

CC gccollect.c

LINK mpy-cross

text data bss dec hex filename

133582 784 872 135238 21046 mpy-cross

編譯stmhal

stmhal為Micropython針對(duì)STM32的實(shí)現(xiàn),因此編譯該目錄的代碼生成固件。

目前Micropython支持STM32的多種型號(hào),這些型號(hào)的定義在目錄/stmhal/boards中,需要在Makefile中修改型號(hào)。本例中Makefile定義如下:

BOARD ?= PYBV10

進(jìn)入stmhal目錄進(jìn)行編譯:

cd stmhal

make

LINK build-PYBV10/firmware.elf

text data bss dec hex filename

321020 352 28088 349460 55514 build-PYBV10/firmware.elf

Create build-PYBV10/firmware.dfu

Create build-PYBV10/firmware.hex

編譯后生成.dfu和.hex固件:

[root@donkey build-PYBV10]# pwd

/opt/micropython/stmhal/build-PYBV10

[root@donkey build-PYBV10]# ls firmware*

firmware0.bin firmware1.bin firmware.dfu firmware.elf firmware.hex firmware.map

[root@donkey build-PYBV10]# du -h firmware.dfu

316K firmware.dfu

下載固件

下載方式有SWD ST-Link和DFU兩種,前者依賴ST-Link硬件,因此建議通過(guò)USB使用DFU模式燒寫固件,該方法非常簡(jiǎn)便。

安裝DfuSedemo工具,運(yùn)行。

將TPYBoard開發(fā)板的BOOT0和3.3V引腳短接,BOOT0引腳即DFU。

按下RST鍵,釋放RST鍵。

斷開BOOT0和3.3V。

此時(shí)DfuSedemo工具左上角的"Available DFU and compatible HID Devices"會(huì)識(shí)別到開發(fā)板。

點(diǎn)擊"Choose..." 選擇編譯好的.dfu文件,點(diǎn)擊"Upgrade"進(jìn)行固件燒寫。

提示"Upgrade successful!"則固件燒寫成功,重啟TPYBoard,此時(shí)將運(yùn)行新的固件。

總結(jié)

以上是生活随笔為你收集整理的micropython固件源码_Micropython加速物联网开发7 - Micropython源码编译与固件更新的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 高清日韩一区 | av首页在线观看 | 疯狂做受xxxx国产 | 久久久久国产一区二区 | 欧美性tv| 精品一区二区三区在线视频 | 欧美福利视频一区二区 | 高清国产一区二区 | 成人在线免费视频播放 | 97视频免费看 | 欧美成人第一页 | 在线视频免费观看你懂的 | 久久一区二区视频 | 国产一级爱c视频 | 在线观看无码精品 | 欧美男同又粗又长又大 | 亚洲成人av电影 | av在线二区 | 一区二区三区在线视频免费观看 | 骚虎免费视频 | 成人深夜视频在线观看 | 国产精品性爱在线 | 亚洲老妇色熟女老太 | 在线看黄色的网站 | 亚洲精品成人在线视频 | 蜜臀av性久久久久蜜臀aⅴ流畅 | 欧洲视频一区二区三区 | 久久久av电影 | 午夜影院黄| 影音av在线 | 800av在线播放 | 国产va视频 | 毛片大全 | 明日花绮罗高潮无打码 | 亚洲一区二区三区在线 | 明日叶三叶 | 亚洲影库 | 中文字幕在线免费播放 | 午夜男人影院 | 图片区小说区视频区 | 国产精品16p | 99在线视频播放 | 综合av第一页 | 一二区精品| 成人黄色免费视频 | 久久久久久国 | 51调教丨国产调教视频 | 国产一区二区高清 | 国产精品嫩草影院桃色 | 涩涩视频在线播放 | 婷婷毛片 | 久久综合激情网 | 久久久久久国产精品免费播放 | 二区三区偷拍浴室洗澡视频 | xxxxx黄色片| 黄色aaa视频 | 天堂网一区 | 亚洲一区视频在线播放 | 欧美性受xxxx白人性爽 | 日干夜干天天干 | 久久伊人一区二区 | 雷电将军和丘丘人繁衍后代视频 | 成人中文在线 | 四季av一区二区三区免费观看 | 日韩久 | 欧美一级欧美三级 | 国产高清成人久久 | 欧美日韩国产一区二区三区在线观看 | 中文字幕精品一区二区精 | 欧美日韩精品一区二区三区 | 亚洲欧美黄| 影音先锋中文字幕人妻 | 性色在线视频 | 亚洲另类av| 免费在线观看视频 | 午夜少妇久久久久久久久 | 日韩不卡视频一区二区 | 日本欧美另类 | 亚洲春色在线观看 | 国产精品久久亚洲7777 | 久热在线视频 | 在线中文字幕第一页 | 国产性猛交96| 午夜精品网 | 国产精品aaa| 国产精品熟女久久久久久 | 中文在线国产 | 五月婷婷激情五月 | 爱搞国产| 国产日产亚洲精品 | 国产福利在线免费观看 | 色综合久久88色综合天天 | 欧美va视频 | 亚洲自拍av在线 | 免费在线播放视频 | 亚欧洲精品在线视频免费观看 | 美女又爽又黄视频毛茸茸 | 呦呦av| 亚洲欧美日韩在线 |