色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

MicroPython應用基礎-準備基于MM32F5的MicroPython開發板

冬至子 ? 來源:安德魯的設計筆記本 ? 作者:安德魯蘇 ? 2023-10-19 18:27 ? 次閱讀

引言

本文主要面向 2023年全國大學生物聯網設計競賽安謀科技命題 ,使用星辰處理器的靈動MM32F5微控制器開發板,基于MicroPython開發應用系統。這里講述的操作方法,也適用于靈動早年發布的使用Arm Cortex-M3微控制器的MM32F3微控制器開發板,以及各種使用MM32F3和MM32F5微控制器設計的開發板。

硬件

除了具有足夠Flash和SRAM的微控制器之外,運行MicroPython的電路板上最好有一個存儲介質,用于加載文件系統,進一步通過文件系統保存Python腳本,能夠讓電路板上電之后自動運行。筆者最早使用SD卡作為文件系統的載體,但后來在適配MM32F5微控制器的MicroPython項目中啟用了基于spiflash的LFS文件系統后,就轉而使用spiflash作為文件系統的載體。

相對于使用SD卡,使用spiflash的總體成本更加便宜,而且節約電路板的面積,并且不用擔心不小心丟掉SD卡這個小零件。當然,能夠擺脫使用SD卡轉而使用spiflash存儲芯片的一個更重要的原因,是筆者調通了Thonny IDE同MicroPython聯動,可以通過REPL向MicroPython的文件系統里存Python文件,否則不得不每次把SD卡拔下來通過SD卡讀卡器接到PC上,存好Python腳本文件后再插回電路板。

image.png

figure-smartcar-mm32f5-board-protrait
圖x ICAR-F5270開發板即周邊配套電路板

軟件

搭建MicroPython編譯環境

基于Windows操作系統搭建MicroPython開發環境:

  • 安裝Git,從線上的代碼倉庫中獲取MicroPython項目的源碼。
  • 安裝msys2,GNU工具集的運行環境,在Windows操作系統上模擬MicroPython原生的Linux編譯環境。
  • msys2中安裝make,使用Makefile管理MicroPython工程。
  • msys2中安裝Python,運行編譯MicroPython過程中自動提取QSTR的腳本。
  • msys2中安裝gcc,在MicroPython項目中編譯生成運行在PC平臺的mpy-cross工具,進而可將部分Python腳本文件編譯成微控制器平臺上運行MicroPython可以執行的字節碼,最終可打包進入將要下載到微控制器中的MicroPython固件中去。
  • 安裝arm-eabi-none-gcc并導入msys2,用于編譯MicroPython項目中的C源碼并生成MicroPython固件。
  • 安裝Keil MDK和MM32F5微控制器的Keil設備支持包,用于將編譯創建的MicroPython固件下載到MM32F5微控制器中。
  • 安裝Tera Term,一個常用的開源串口終端軟件,用于同運行MicroPython固件的微控制器開發板進行交互,輸入Python腳本并查看運行結果。

獲取MicroPython源碼

其中,在micropython-su/micropython-1.16/ports/mm32f5-lfs-spiflash目錄下,包含了基于MM32F5微控制器的使用spiflash掛載LFS文件系統的適配工程。如圖x所示。

image.png

figure-mm32f5-lfs-spiflash-project-in-git-repo
圖x MicroPython項目中的mm32f5-lfs-spiflash工程

編譯MicroPython源碼生成固件

下載MicroPython的代碼倉庫后,在msys2環境中,切換當前目錄到micropython-su/micropython-1.16/mpy-cross目錄下,執行make命令,編譯得到PC主機平臺上運行的MicroPython交叉編譯器,mpy-cross

Andrew@Andrew-PC MSYS /d/gitrepos/micropython-su/micropython-1.16/mpy-cross  
# make  
Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.  
GEN build/genhdr/mpversion.h  
CC main.c  
LINK mpy-cross  
   text    data     bss     dec     hex filename  
 306417    3784     416  310617   4bd59 mpy-cross

然后再切換到micropython-su/micropython-1.16/ports/mm32f5-lfs-spiflash目錄下,運行make BOARD=icar-f5270命令,編譯創建基于MM32F5微控制器的ICAR-F5270開發板適用的MicroPython固件。

Andrew@Andrew-PC MSYS /d/gitrepos/micropython-su/micropython-1.16/ports/mm32f5-lfs-spiflash  
# make BOARD=icar-f5270  
Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.  
mkdir -p build-icar-f5270/genhdr  
GEN build-icar-f5270/genhdr/mpversion.h  
GEN build-icar-f5270/genhdr/moduledefs.h  
...  
CC ../../lib/libm/wf_lgamma.c  
CC ../../lib/libm/wf_tgamma.c  
CC ../../lib/libm/ef_sqrt.c  
CC ../../drivers/bus/softspi.c  
AS ../../lib/utils/gchelper_m3.s  
CC ../../lib/mm32mcu/mm32f5270/devices/mm32f5277e/startup_mm32f5277e.S  
LINK build-icar-f5270/firmware.elf  
   text    data     bss     dec     hex filename  
 169492     976   10424  180892   2c29c build-icar-f5270/firmware.elf

下載MicroPython固件到電路板

比較穩妥的做法,借用Keil MDK,通過DAP-Link向MM32F5微控制器下載編譯好的firmware.hex文件。

在Keil工程的配置選項對話框的Debug頁面中,指定使用CMSIS-DAP調試器。在Output頁面中,使用Select Folder for Objects ...指定將要下載文件的路徑位于新創建的build-icar-f5270目錄下。如圖x所示。

image.png

figure-keil-daplink-download-1
圖x 借用Keil下載MicroPython固件到芯片

運行第一個樣例工程

啟動串口終端軟件,識別到DAP-Link虛擬出來的UART串口,配置串口通信波特率115200,無校驗、8位數據、1位停止位,連上UART。

復位MM32F5電路板,運行MicroPython固件的程序。此時,用戶可以在串口終端軟件的界面中看到MicroPython啟動運行的提示信息,然后可以試著在串口終端軟件的界面中試著輸入一些Python語句,運行程序。如圖x所示。

image.png

figure-micropython-repl-welcome
圖x 試用MicroPython的REPL

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 微控制器
    +關注

    關注

    48

    文章

    7646

    瀏覽量

    151869
  • Cortex-M3
    +關注

    關注

    9

    文章

    270

    瀏覽量

    59541
  • GNU
    GNU
    +關注

    關注

    0

    文章

    143

    瀏覽量

    17523
  • SRAM存儲器
    +關注

    關注

    0

    文章

    88

    瀏覽量

    13363
  • Micropython
    +關注

    關注

    0

    文章

    68

    瀏覽量

    4762
收藏 人收藏

    評論

    相關推薦

    手工打造基于MM32F5微控制器的MicroPython開發板

    集成(感謝同事Hao的出色工作),使我得以在MM32F5微控制上運行的MicroPython項目中,使用基于flash存儲芯片的LittleFS文件系統,替換掉基于SD卡的FatFS文件系統。經過剛剛過去兩天一夜的編碼和調試,終于大功告成!
    的頭像 發表于 06-16 10:57 ?1423次閱讀
    手工打造基于<b class='flag-5'>MM32F5</b>微控制器的<b class='flag-5'>MicroPython</b><b class='flag-5'>開發板</b>

    【FireBeetle 2 ESP32-S3開發板測評】MicroPython開發體驗

    【FireBeetle 2 ESP32-S3開發板測評】MicroPython開發體驗
    的頭像 發表于 07-23 09:02 ?1888次閱讀
    【FireBeetle 2 ESP32-S3<b class='flag-5'>開發板</b>測評】<b class='flag-5'>MicroPython</b><b class='flag-5'>開發</b>體驗

    STM32F746Disco開發板MicroPython固件

    STM32F746Disco是2015年最熱的開發板之一,Cotex-M7內核加上大液晶屏,做各種演示效果很棒。下面是STM32F746Disco開發板的最新
    發表于 09-27 11:17

    玩轉MicroPython開發板!你和Ta會有什么火花?

    開發板,你和它會有什么火花?TPYBoardv102  TPYBoardv102是一款典型的MicroPython開發板,搭載STM32F405芯片,支持DFU和SWD兩種調試方式,現
    發表于 06-03 10:50

    MicroPython入門|開發板種類那么多,哪塊才適合你玩?

      TPYBoardv102是一款典型的MicroPython開發板,搭載STM32F405芯片,支持DFU和SWD兩種調試方式,現分為三個版本,簡約版、以及分別兼容MicroPython
    發表于 06-20 18:13

    MicroPython入門:能跑MicroPython開發板大盤點!

    v102是一款典型的MicroPython開發板,搭載STM32F405芯片,支持DFU和SWD兩種調試方式,現分為三個版本,簡約版、以及分別兼容MicroPython官方
    發表于 07-06 14:43

    MicroPython開發板—TPYBoard開發板測評分享!

    TurnipSmart公司制作的一款MicroPython開發板,它基于STM32F405單片機,通過USB接口進行數據傳輸。該開發板內置4個LED燈、一個加速傳感器,可在3V-10V
    發表于 08-14 00:18

    開發板Micropython平臺

    NUCLEO-F401RE(STM32F401RE)開發板Micropython平臺 開發準備
    發表于 08-06 06:56

    Micropython開發板的制作資料分享

    作為一個偏硬件的繪圖員,趕上部門測試一款產品備用芯片STM32F405RG,恰巧這款芯片支持MicroPython,于是就萌生了畫一款方便做硬件測試的Micropython開發板。話不
    發表于 01-06 07:23

    如何學習MicroPython MicroPython入門知識

    對于深入研究實時嵌入式應用程序之前,對MicroPython感興趣的開發人員必須先選擇支持開發套件或微處理器。開發人員尋找支持的開發工具包的
    的頭像 發表于 08-07 11:43 ?5397次閱讀

    MicroPython開發板的電路原理圖免費下載

    本文檔的主要內容詳細介紹的是MicroPython開發板的電路原理圖免費下載。
    發表于 01-09 08:00 ?51次下載
    <b class='flag-5'>MicroPython</b><b class='flag-5'>開發板</b>的電路原理圖免費下載

    MicroPython開發板原理圖PCB源文件源代碼開源

    發現MicroPython開發板的確很不錯。功能比Arduino強,使用也很靈活。淘寶上microPython開發板很少,價格也很高,都是200以上。因此,考慮到價格原因,加上
    發表于 11-12 14:58 ?30次下載
    <b class='flag-5'>MicroPython</b><b class='flag-5'>開發板</b>原理圖PCB源文件源代碼開源

    MacOS上ESP8266開發板microPython教程

    MacOS上ESP8266開發板microPython教程
    發表于 11-30 17:36 ?8次下載
    MacOS上ESP8266<b class='flag-5'>開發板</b>刷<b class='flag-5'>microPython</b>教程

    [長文干貨]MicroPython移植到野火STM32F429開發板

    [長文干貨]MicroPython移植到野火STM32F429開發板
    發表于 12-05 18:51 ?27次下載
    [長文干貨]<b class='flag-5'>MicroPython</b>移植到野火STM32<b class='flag-5'>F</b>429<b class='flag-5'>開發板</b>

    使用MicroPython開發ESP32(01):快速入門

    文章目錄為什么使用MicroPython開發ESP32快速入門開發板準備開發工具選擇固件下載與燒錄我的總結為什么使用
    發表于 12-29 18:49 ?22次下載
    使用<b class='flag-5'>MicroPython</b><b class='flag-5'>開發</b>ESP32(01):快速入門
    主站蜘蛛池模板: 攵女yin乱合集高h | YY6080A旧里番在线观看 | 色偷偷7777www | 国内精品久久久久影院男同志 | 人人听力网mp3下载 人人舔人人爱 | 在线视频久久只有精品第一日韩 | 亚洲在线2018最新无码 | 天天狠狠色噜噜 | 你的欲梦裸身在线播放 | 好爽好深太大了再快一点 | 拍戏被CAO翻了H| 亚洲国产中文字幕在线视频 | 黄页免费观看 | 很黄很色60分钟在线观看 | 谁有成人网站地址 | 光棍天堂在线a | 亚洲无人区码二码三码区别图 | 最新2017年韩国伦理片在线 | 久久99综合国产精品亚洲首页 | 超碰国产视频免费播放 | 国产99久久九九精品无码不卡 | 22eee在线播放成人免费视频 | 99久久香蕉国产线看观看 | 快播h动漫网站 | 女生扒开尿口 | 黑兽在线观看高清在线播放樱花 | 亚洲中文字幕永久在线全国 | 狠狠射首页| 清晨紧湿爱运动h高h | 人成片在线观看亚洲无遮拦 | 色欲AV精品一区二区入口 | 91久久综合精品国产丝袜长腿 | 91国在线啪精品一区 | 花蝴蝶在线直播观看 | 做暖暖视频在线看片免费 | 久久香蕉国产线看观看精品 | 被男按摩师添的好爽在线直播 | 久久高清免费视频 | 在线看免费毛片 | 乳色吐息在线观看全集免费观看 | 一本道无码字幕在线看 |