为什么要重映射那个GPIO_Remap_SWJ_JTAGDisable
對于初學習者來說為什么用到PB3和PB4時無法控制輸出呢??
下面就這一問題進行分析講解。?
首先,STM32F10x系列的MCU復位后,PA13/14/15?&?PB3/4默認配置為JTAG功能。有時我們為了充分利用MCU?I/O口的資源,會把這些?
端口設置為普通I/O口。具體方法如下:?
在GPIO_Configuration();?//?配置使用的?GPIO?口:?
GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable,?ENABLE);?
//?改變指定管腳的映射?GPIO_Remap_SWJ_Disable?SWJ?完全禁用(JTAG+SW-DP)?
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable?,?ENABLE);?
//?改變指定管腳的映射?GPIO_Remap_SWJ_JTAGDisable?,JTAG-DP?禁用?+?SW-DP?使能?
??GPIO_InitStructure.GPIO_Pin?=?GPIO_Pin_3?|?GPIO_Pin_4;?
??GPIO_InitStructure.GPIO_Speed?=?GPIO_Speed_50MHz;?
??GPIO_InitStructure.GPIO_Mode?=?GPIO_Mode_Out_PP;?
??GPIO_Init(GPIOB,?&GPIO_InitStructure);?
??GPIO_InitStructure.GPIO_Pin?=?GPIO_Pin_11?|?GPIO_Pin_12?|?GPIO_Pin_13;?
??GPIO_InitStructure.GPIO_Speed?=?GPIO_Speed_50MHz;?
??GPIO_InitStructure.GPIO_Mode?=?GPIO_Mode_Out_PP;?
??GPIO_Init(GPIOA,?&GPIO_InitStructure);??
注意:不要忘記在RCC_Configuration()中開啟AFIO時鐘,?
??//AFIO時鐘?
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,?ENABLE);
總結
以上是生活随笔為你收集整理的为什么要重映射那个GPIO_Remap_SWJ_JTAGDisable的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: stm32之 GPIO_Remap_SW
- 下一篇: 什么时候需要用到RCC_APB2Peri