STM32(2)——GPIO
对于初学者而言,最简单的是对芯片上的IO进行操作,我们学习ARM时候,第一个工程就是点亮LED,STM32F103ZET6通用输入输出接口 (General-Purpose Inputs/Outputs),每个GPIO都可以由软件配置成输出(推免或开漏)、输入(带或不带上拉或下拉)或复用的外设功能端口。多数 GPIO引脚都与数字或模拟的复用外设共用。具体的细节请参考 Datasheet。 回到 MDK开发平台,现在要在 main.c中加入相关代码了。代码清单如下: #include "stm32f10x_lib.h" int main() { RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD|RCC_APB2Periph_GPIOB, ENABLE); //开启外设时钟 GPIOD->CRL = 0x33333333; //设置端口配置寄存器 GPIOB->CRL = 0x33333333; while(1) { GPIOD->ODR = 0xffffffbf; //设置端口输出寄存器 for(i=0;i<1000000;i++); //延时 GPIOD->ODR = 0xffffffff7; for(i=0;i<1000000;i++); GPIOD->ODR = 0x00000000; GPIOB->ODR = 0xffffffff;