STM32的IO配置时没什么特殊的,有个注意点就是实用IO前需要先打开其时钟线,以下是验证过oK的程序:
RCC->APB2ENR|=GpioBApb2enrEn; //使能PORTB时钟 GPIOB->CRL&=GpioBitClrM5_13; // IO的模式清零 GPIOB->CRL|=GpioBit5PP;//PB.5 推挽输出 GPIOB->ODR|=1<<5; //PB.5 输出高 RCC->APB2ENR|=GpioEApb2enrEn; //使能PORTE时钟 GPIOE->CRL&=GpioBitClrM5_13; //IO的模式清零 GPIOE->CRL|=GpioBit5PP;//PE.5推挽输出 GPIOE->ODR|=1<<5; //PE.5输出高 RCC->APB2ENR|=GpioAApb2enrEn; //使能PORTA时钟 RCC->APB2ENR|=GpioEApb2enrEn; //使能PORTE时钟 GPIOA->CRL&=GpioBitClrM0_8; //清io模式 GPIOA->CRL|=GpioBit0IN; //PA0设置成输入,默认下拉 GPIOE->CRL&=GpioBitClrM2_10&GpioBitClrM3_11&GpioBitClrM4_12;//清io模式 GPIOE->CRL|=GpioBit2IN|GpioBit3IN|GpioBit4IN; // PE2~4设置成输入 GPIOE->ODR|=GpioBit2IPU|GpioBit3IPU|GpioBit4IPU; //PE2~4 上拉
STM32学习笔记3-IO配置输入输出,布布扣,bubuko.com
原文地址:http://blog.csdn.net/chuangwu2009/article/details/26157723