這里分享我們?cè)?a target="_blank">STM32應(yīng)用中可能遇到的兩個(gè)小話題,尤其對(duì)于STM32應(yīng)用新手。
話題一、STM32管腳重映射支持任意組合嗎?
有人使用STM32F4芯片做開(kāi)發(fā),用到USART1外設(shè)。發(fā)現(xiàn)有4個(gè)GPIO管腳可以支持USART1復(fù)用,即PA9,PA10,PB6,PB7。
他在21論壇發(fā)帖咨詢?cè)诒3諸X或RX功能不變的前提下,這4個(gè)管腳是否基于TX/RX功能自由組合呢?即是否支持下圖中箭頭所指的4種組合來(lái)使用。
在我的印象中,STM32系列中只有最早推出的STM32F1系列的管腳復(fù)用功能稍微弱點(diǎn)外,其它系列在外設(shè)功能端口與GPIO復(fù)用方面表現(xiàn)得更為靈活。比方以USART1的復(fù)用管腳為例,STM32F1系列是以組為單位,僅支持PA9/PA10或PB6/PB7兩種組合。而后推出的其它STM32系列,仍以USART1為例,都支持上面的4種組合。
換言之,后面推出的STM32系列管腳復(fù)用功能往往是以單個(gè)管腳進(jìn)行配置,不再以組為單位進(jìn)行配置鎖定,為開(kāi)發(fā)者自由安排管腳提供方便。具體到開(kāi)篇話題本身,STM32F4系列芯片的USART1是完全支持上面列舉的4種組合的。該發(fā)帖者后來(lái)進(jìn)一步補(bǔ)充說(shuō),經(jīng)過(guò)多個(gè)小時(shí)的驗(yàn)證發(fā)現(xiàn)也的確支持上面的4種使用組合。
其實(shí),關(guān)于這個(gè)問(wèn)題,完全不必要花幾個(gè)小時(shí)來(lái)確認(rèn)。
我們使用CubeMx進(jìn)行配置時(shí)即可快速驗(yàn)證。比如當(dāng)我們選擇開(kāi)啟USART1后,CubeMx會(huì)先給我們安排兩個(gè)可用USART1通信管腳。此時(shí)我們可以按住鍵盤上的CTRL鍵并保持住,然后鼠標(biāo)左鍵點(diǎn)擊當(dāng)前安排的USART功能腳,并做拽拉動(dòng)作,其它跟當(dāng)前被拽拉腳具有相同功能的管腳就會(huì)閃動(dòng)起來(lái)。然后我們就可以嘗試去做替換,將當(dāng)前功能腳替換為新的管腳。
通過(guò)這種方法,我們不難找出所有可能使用的組合。以STM32F4系列的USART1的復(fù)用管腳為例,基于CubeMx配置就可以直觀地看到4種可使用的組合。見(jiàn)下面幾幅圖。
話題二、STM32F407 讀保護(hù)從leve0設(shè)置leve1程序不再運(yùn)行疑似丟失。
有人在程序調(diào)試階段,通過(guò)用戶代碼修改選項(xiàng)字節(jié)開(kāi)啟讀保護(hù)功能。發(fā)現(xiàn)實(shí)施此操作后,不僅程序停擺不運(yùn)行了,STLINK也連不上開(kāi)發(fā)板,感覺(jué)代碼被擦除一般。
其實(shí),這是個(gè)比較常見(jiàn)的話題。當(dāng)我們通過(guò)用戶代碼開(kāi)啟讀保護(hù)功能后,芯片開(kāi)啟保護(hù)機(jī)制。肯定會(huì)斷開(kāi)調(diào)試器不讓我們繼續(xù)代碼的調(diào)試。試想下,如果都開(kāi)啟讀保護(hù)了還能做程序調(diào)試,那還保護(hù)啥呢?此時(shí)發(fā)生上面提到的現(xiàn)象屬正常。
開(kāi)啟了讀保護(hù)不讓調(diào)試了,可以理解。但我們欲用STLINK連接開(kāi)發(fā)板抹掉讀保護(hù)總可以吧。可以!
不過(guò),你必須對(duì)開(kāi)發(fā)板做斷電再上電的操作。注意,若只是按復(fù)位鍵還不行。再用SLTINK連接,然后通過(guò)諸如STM32CubeProgrammer之類的工具修改讀保護(hù)設(shè)置。
關(guān)于這點(diǎn),在STM32手冊(cè)里有相應(yīng)的描述,我截圖幾份過(guò)來(lái)參閱,分別是STM32F0、STM32F4和STM32L4系列的,描述上不盡相同,但都有表達(dá)相同的意思。
OK,今天的分享就到這里。下次再聊!
審核編輯:劉清
-
單片機(jī)
+關(guān)注
關(guān)注
6032文章
44514瀏覽量
632946 -
連接器
+關(guān)注
關(guān)注
98文章
14310瀏覽量
136157 -
STM32
+關(guān)注
關(guān)注
2266文章
10871瀏覽量
354786 -
GPIO
+關(guān)注
關(guān)注
16文章
1196瀏覽量
51911 -
STM32F4
+關(guān)注
關(guān)注
3文章
194瀏覽量
27991 -
CTR
+關(guān)注
關(guān)注
0文章
36瀏覽量
14077 -
USART串口
+關(guān)注
關(guān)注
0文章
32瀏覽量
6805
原文標(biāo)題:STM32管腳重映射支持任意組合嗎?
文章出處:【微信號(hào):stmcu832,微信公眾號(hào):茶話MCU】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論