您的位置:首页 > 其它

STM32学习之:GPIO最简单操作步骤

2017-12-19 16:44 766 查看
需用到的".c"库函数为 stm32f10x_gpio.c 和stm32f10x_rcc.c

 

1.  启动相应Port x的RCC(复位始终控制)

    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOx, ENABLE);

    x可以是A到G , GPIO都由APB2(高速外设)时钟控制

2.  GPIO初始结构中的三个参数赋值(该结构名需程序前定义:"GPIO_InitTypeDef  GPIO_InitStructure;")

    三个参数分别为

    引脚:GPIO_InitStructure.GPIO_Pin=GPIO_Pin_6|GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10;

    速度:GPIO_InitStructure.GPIO_Speed=GPIO_Speed_2MHz;

    模式:GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;

    三个参数的取值可查《固件函数库》

3.  用GPIO初始化函数  GPIO_Init(GPIOx,&GPIO_InitStructure) ,将前面赋完值的结构定义到Port x上

    x可以是A到G;

4.  接着即可用GPIO_ResetBits(GPIOx,GPIO_Pin_y) 函数将引脚置0 

     或  用GPIO_SetBits(GPIOx,GPIO_Pin_y) 函数将引脚置1

     x可以是:A到F;

     y可以是:0到15;多个可用" | "隔开,如:GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9

5.  也可以用GPIO_ReadInputDataBit(GPIOx,GPIO_Pin_y)函数读取输入引脚的值

      或 用GPIO_ReadOutputDataBit(GPIOx,GPIO_Pin_y)函数读取输出引脚的值

      x可以是:A到F;

      y可以是:0到15;多个可用" | "隔开,如:GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9

注:a)读取整个Port 值的函数为GPIO_ReadInputData(GPIOx)和GPIO_ReadOutputData(GPIOx)

        b)写整个Port 值的函数为GPIO_Write(GPIOx,数值)

        c)一般按前3步启动后,被设定的GPIO引脚都会被置0(低电平)

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: