以前微處理器(MPU)與微控制器(MCU)是截然不同的兩種設備,MPU支持豐富的軟件系統(tǒng),如Linux和相關的軟件堆棧,而MCU通常將專注于裸機和RTOS。近年來,隨著MCU的性能越來越高,MCU和MPU之間的區(qū)別變得越來越模糊。
STM32MP135是一款入門級的高性價比MPU,適用于MCU性能達不到要求或者需要跑Linux的場景。米爾的STM32MP135開發(fā)板提供基于STM32Cube的Bare metal裸機開發(fā)的軟件,能夠進一步加強實時性能支持以滿足用戶實現(xiàn)硬實時應用的需求。這一點尤其對習慣于使用MCU開發(fā)的用戶來說非常友好,可以讓開發(fā)者在使用MPU強大性能的同時獲得類似MCU的開發(fā)體驗。米爾提供了支持裸機開發(fā)環(huán)境,接下來就讓我們介紹如何在米爾的STM32MP135開發(fā)板上進行裸機開發(fā)。
米爾基于STM32MP135核心板及開發(fā)板
環(huán)境搭建
獲取源碼
下載米爾提供的 04_Sources/STM32CubeMP13-1.0.0源碼包,并使用 STM32CubeIDE??導入STM32Cube_FW_MP13_V1.0.0ProjectsSTM32MP135C-DKExamplesDDRDDR_Init文件,點擊File->Import->Existing Projects into Workspace。
編譯源碼
成功導入工程后進行編譯,點擊 進行編譯,當下方出現(xiàn)0 errors, 0 warnings表示編譯成功。
開發(fā)板接線
當工程源碼編譯完后,開發(fā)板需要連接ST-Link進行調試,并且將撥碼開關撥到工程模式1-4:1000,用到的接口是J7,由于出廠時沒有將引腳焊接,需要用戶自行焊接,接線方式如下圖:
調試工程
- 在2.3中編譯完后,接下來進行調試的操作,點擊調試,如圖:
- 進入到界面之后點擊全速運行,看到開發(fā)板的藍燈在閃爍說明ddr初始化成功:
應用加載
應用環(huán)境配置
在初始化完ddr后,接下來就是讓應用程序跑在ddr上,這里我們選用MYD-YF13X-20230601STM32CubeMP13-1.0.0ProjectsSTM32MP135C-DKTemplatesBSP_BasicTemplates路徑下的工程應用:
- 根據1.1中的方法導入工程,看到工程成功導入之后,右鍵點擊工程文件名,然后點擊properties:
- 在執(zhí)行以上操作后彈出Enter Value后添加USE_DDR字符并保存:
- 繼續(xù)右鍵點擊工程文件名,然后點擊properties:
- 按照以上步驟打開STM32CubeMP13-1.0.0ProjectsSTM32MP135C-DKTemplatesBSP_BasicTemplatesSTM32CubeIDEMP13_BSP_BasicTemplates路徑下的stm32mp13xx_a7_sysram.ld文件:
- 將REGION_ALIAS("RAM", DDR_BASE);部分的注釋刪除,再把REGION_ALIAS("RAM", SYSRAM_BASE)給注釋掉,保存并選中:
調試應用
將以上環(huán)境配置完成之后,在應用調試階段也需要進行一個配置,打開工程的調試設置界面,點擊startup,將monitor reset刪除,保存并調試:
將開發(fā)板接上串口,全速運行,串口會打印Hello World - USE_STM32MP135 BOARD,至此應用調試成功。
創(chuàng)建應用
適配硬件
以米爾MYD-YF13x開發(fā)板上的心跳燈為例,首先要確定心跳燈用到的GPIO口。查看硬件原理圖可以看到心跳燈連接的是SPI5_MOSI:
通過查看米爾的Pin List可知道SPI5_MOSI對應的引腳是PH12,那么接下來就開始創(chuàng)建工程來配置心跳燈的閃爍。
工程創(chuàng)建
米爾創(chuàng)建的工程位于STM32CubeMP13-1.0.0ProjectsSTM32MP135C-DKExamplesGPIOGPIO_EXTI路徑下,根據1.1中的方法導入工程,如下:
開始對心跳燈進行配置,修改stm32mp13xx_disco.h里的心跳燈引腳配置:
修改完后回到main.c文件里在while函數中添加心跳燈的代碼:
編譯并調試后,讓程序全速運行,可以看到開發(fā)板上的藍燈閃爍:
至此創(chuàng)建的工程調試成功。
產品介紹
米爾STM32MP135開發(fā)板,基于STM32MP13系列處理器,單核?Cortex-A7 設計,運行頻率高達1GHz,專為入門級Linux、裸機或RTOS系統(tǒng)設計。開發(fā)板采用12V/2A直流供電,搭載了2路千兆以太網接口、1路USB2.0協(xié)議MINI PCIE插座的4G模塊接口、1路RGB顯示接口、1路音頻輸入輸出接口、2路USB HOST Type A、1路 USB?OTG Type-C接口、1路Micro SD接口等。開發(fā)板接口豐富,適用于能源電力、工業(yè)控制、工業(yè)網關、工業(yè)HMI等場景。
產品鏈接:https://www.myir.cn/shows/110/57.html