新聞中心

STM32的Remap

作者: 時間:2016-11-20 來源:網(wǎng)絡(luò) 收藏
STM32中有很多內(nèi)置外設(shè)的輸入輸出引腳都具有重映射(remap)的功能,本文對一些在使用引腳重映射時所遇到的有關(guān)問題加以說明。我們知道每個內(nèi)置外設(shè)都有若干個輸入輸出引腳,一般這些引腳的輸出腳位都是固定不變的,為了讓設(shè)計工程師可以更好地安排引腳的走向和功能,在STM32中引入了外設(shè)引腳重映射的概念,即一個外設(shè)的引腳除了具有默認(rèn)的腳位外,還可以通過設(shè)置重映射寄存器的方式,把這個外設(shè)的引腳映射到其它的腳位。

本文引用地址:http://m.butianyuan.cn/article/201611/318938.htm

例如,USART3_TX的默認(rèn)引出腳是PB10,USART3_RX的默認(rèn)引出腳是PB11;但經(jīng)過重映射后,可以變更USART3_TX的引出腳為PD8,變更USART3_RX的引出腳為PD9。

同時,STM32還只可以將一個功能映射到多個引腳,例如:USART3的TX和RX引腳默認(rèn)的引出腳位是PB10和PB11,根據(jù)配置位的設(shè)置,可以重映射到PC10和PC11,還可以重映射到PD8和PD9。

一個模塊的功能引腳不管是從默認(rèn)的腳位引出還是從重映射的腳位引出,都要通過GPIO端口模塊實現(xiàn),相應(yīng)的GPIO端口必須配置為輸入(對應(yīng)模塊的輸入功能,如USART的RX)或復(fù)用輸出(對應(yīng)模塊的輸出功能,如USART的TX),對于輸出引腳,可以按照需要配置為推挽復(fù)用輸出或開漏復(fù)用輸出。

普通的GPIO端口輸入功能與復(fù)用的輸入功能的配置方式?jīng)]有分別,這意味著在使用引腳的復(fù)用輸入功能時,可以在這個引腳的輸入寄存器上讀出引腳上的信號。例如在使能了USART3模塊時,可以讀GPIOB_IDR寄存器,得到PB11信號線上的當(dāng)前狀態(tài)。

USART3模塊共有5個信號,分別為TX、RX、CK、CTS和RTS,從上面給出的第二張圖中可以看出,重映射是對所有信號同時有效。

這 5個信號中,在使能了USART3模塊后,只有TX和RX是始終與對應(yīng)的引出腳相連,而其它3個信號分別有獨立的控制位,控制它們是否與外部引腳相連,如果程序中不使用某個信號的功能,則可以關(guān)閉這個信號的功能,對應(yīng)的引腳可以做為其它功能的引出腳。例如,當(dāng)關(guān)閉了USART3的CK、CTS和RTS功能并且沒有重映射USART3時,PB12、PB13和PB14可以作為通用輸入輸出端口使用,也可以作為其它模塊的復(fù)用功能引出腳。



關(guān)鍵詞: STM32Rema

評論


技術(shù)專區(qū)

關(guān)閉