STM32F103C8T6的PB3、PB4做普通IO使用注意事项


在使用PB3和PB4做普通GPIO使用时,发现普通的GPIO初始化程序无法正常使用PB3和PB4,后经查阅资料,发现是因为PB3和PB4在默认情况下是做JTAG调试用的。如果需要将其当普通GPIO使用,需要关闭JTAG调试功能;

 

配置方式入下:

 1 /*************************************************
 2  函 数 名 称 : LibDriveKeyInit
 3  功 能 描 述 : 按键初始化
 4  被 调用清单 : 无
 5  调 用 清 单 : 
 6  输 入 参 数 : 无
 7  输 出 参 数 : 无
 8  返 回 参 数 : 无
 9  其            他 : 无
10 *************************************************/
11 void LibDriveKeyInit(void)
12 {
13         GPIO_InitTypeDef  GPIO_InitStruct;
14         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO, ENABLE);
15     
16         GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);     
17         GPIO_InitStruct.GPIO_Mode  = GPIO_Mode_IPU;
18         GPIO_InitStruct.GPIO_Pin     = GPIO_Pin_3 | GPIO_Pin_4;    
19         GPIO_Init(GPIOB, &GPIO_InitStruct);
20     
21         GPIO_InitStruct.GPIO_Mode  = GPIO_Mode_IPU;
22         GPIO_InitStruct.GPIO_Pin     = GPIO_Pin_12 | GPIO_Pin_15;    
23         GPIO_Init(GPIOA, &GPIO_InitStruct);
24 }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM