以前微處理器(MPU)與微控制器(MCU)是截然不同的兩種設(shè)備,MPU支持豐富的軟件系統(tǒng),如Linux和相關(guān)的軟件堆棧,而MCU通常將專注于裸機(jī)和RTOS。近年來,隨著MCU的性能越來越高,MCU和MPU之間的區(qū)別變得越來越模糊。STM32MP135是一款入門級的高性價比MPU,適用于MCU性能達(dá)不到要求或者需要跑Linux的場景。米爾的STM32MP135開發(fā)板提供基于STM32Cube的Bare metal裸機(jī)開發(fā)的軟件,能夠進(jìn)一步加強實時性能支持以滿足用戶實現(xiàn)硬實時應(yīng)用的需求。這一點尤其對習(xí)慣于使用MCU開發(fā)的用戶來說非常友好,可以讓開發(fā)者在使用MPU強大性能的同時獲得類似MCU的開發(fā)體驗。米爾提供了支持裸機(jī)開發(fā)環(huán)境,接下來就讓我們介紹如何在米爾的STM32MP135開發(fā)板上進(jìn)行裸機(jī)開發(fā)。
為了感謝廣大客戶一直對ST和米爾的支持,米爾這次推出STM32MP135開發(fā)板打折活動,粉絲價5折,限量20套,搶完恢復(fù)原價。
1.環(huán)境搭建
1.1.獲取源碼
下載米爾提供的04_Sources/STM32CubeMP13-1.0.0源碼包,并使用 STM32CubeIDE導(dǎo)入STM32Cube_FW_MP13_V1.0.0\Projects\STM32MP135C-DK\Examples\DDR\DDR_Init文件,點擊File->Import->Existing Projects into Workspace。
?
1.2.編譯源碼
成功導(dǎo)入工程后進(jìn)行編譯,點擊進(jìn)行編譯,當(dāng)下方出現(xiàn)0 errors, 0 warnings表示編譯成功。
?
1.3.開發(fā)板接線
當(dāng)工程源碼編譯完后,開發(fā)板需要連接ST-Link進(jìn)行調(diào)試,并且將撥碼開關(guān)撥到工程模式1-4:1000,用到的接口是J7,由于出廠時沒有將引腳焊接,需要用戶自行焊接,接線方式如下圖:
?
1.4.調(diào)試工程
在2.3中編譯完后,接下來進(jìn)行調(diào)試的操作,點擊調(diào)試,如圖:
?
進(jìn)入到界面之后點擊全速運行,看到開發(fā)板的藍(lán)燈在閃爍說明ddr初始化成功:
?
2.應(yīng)用加載
2.1.應(yīng)用環(huán)境配置
在初始化完ddr后,接下來就是讓應(yīng)用程序跑在ddr上,這里我們選用MYD-YF13X-20230601\STM32CubeMP13-1.0.0\Projects\STM32MP135C-DK\Templates\BSP_BasicTemplates路徑下的工程應(yīng)用:
根據(jù)1.1中的方法導(dǎo)入工程,看到工程成功導(dǎo)入之后,右鍵點擊工程文件名,然后點擊properties:
?
在執(zhí)行以上操作后彈出Enter Value后添加USE_DDR字符并保存:
?
繼續(xù)右鍵點擊工程文件名,然后點擊properties:
?
按照以上步驟打開STM32CubeMP13-1.0.0\Projects\STM32MP135C-DK\Templates\BSP_BasicTemplates\STM32CubeIDE\MP13_BSP_BasicTemplates路徑下的stm32mp13xx_a7_sysram.ld文件:
?
將REGION_ALIAS("RAM", DDR_BASE);部分的注釋刪除,再把REGION_ALIAS("RAM", SYSRAM_BASE)給注釋掉,保存并選中:
?
2.2.調(diào)試應(yīng)用
將以上環(huán)境配置完成之后,在應(yīng)用調(diào)試階段也需要進(jìn)行一個配置,打開工程的調(diào)試設(shè)置界面,點擊startup,將monitor reset刪除,保存并調(diào)試:
?
將開發(fā)板接上串口,全速運行,串口會打印Hello World - USE_STM32MP135 BOARD,至此應(yīng)用調(diào)試成功。
?
3.創(chuàng)建應(yīng)用
3.1.適配硬件
以米爾MYD-YF13x開發(fā)板上的心跳燈為例,首先要確定心跳燈用到的GPIO口。查看硬件原理圖可以看到心跳燈連接的是SPI5_MOSI:
?
通過查看米爾的Pin List可知道SPI5_MOSI對應(yīng)的引腳是PH12,那么接下來就開始創(chuàng)建工程來配置心跳燈的閃爍。
3.2.工程創(chuàng)建
米爾創(chuàng)建的工程位于STM32CubeMP13-1.0.0\Projects\STM32MP135C-DK\Examples\GPIO\GPIO_EXTI路徑下,根據(jù)1.1中的方法導(dǎo)入工程,如下:
?
開始對心跳燈進(jìn)行配置,修改stm32mp13xx_disco.h里的心跳燈引腳配置:
?
修改完后回到main.c文件里在while函數(shù)中添加心跳燈的代碼:
?
編譯并調(diào)試后,讓程序全速運行,可以看到開發(fā)板上的藍(lán)燈閃爍:
?
至此創(chuàng)建的工程調(diào)試成功。
?
產(chǎn)品介紹
米爾STM32MP135開發(fā)板,基于STM32MP13系列處理器,單核Cortex-A7 設(shè)計,運行頻率高達(dá)1GHz,專為入門級Linux、裸機(jī)或RTOS系統(tǒng)設(shè)計。開發(fā)板采用12V/2A直流供電,搭載了2路千兆以太網(wǎng)接口、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è)網(wǎng)關(guān)、工業(yè)HMI等場景。
-
mcu
+關(guān)注
關(guān)注
146文章
17734瀏覽量
358573 -
MPU
+關(guān)注
關(guān)注
0文章
400瀏覽量
49543 -
RTOS
+關(guān)注
關(guān)注
24文章
837瀏覽量
120609
發(fā)布評論請先 登錄
請問STM32MP135 I2C MemAddress最多兩個字節(jié)嗎?
STM32MP135 Nor Flash啟動,MX25L51245G_STM32MP135C-CUSTOM_HW_A7.bin如何修改?
Microchip PIC32A系列MCU 集成高性能模擬外設(shè)的32位MCU

STM32CubeMX生成STM32mp135D的USART1,2,3,6代碼初始化是空的,為什么?
芯??萍?2位MCU加速工業(yè)芯片國產(chǎn)替代

高性能MCU對比 MCU在智能家居中的應(yīng)用
雅特力發(fā)布高性能電機(jī)控制專用MCU
米爾STM32MP2核心板首發(fā)新品上市!高性能+多接口+邊緣算力
請問stm32mp135的中斷響應(yīng)時間為什么這么慢?
國民技術(shù)推出全新一代高性能MCU新品

評論