欢迎来到天天文库
浏览记录
ID:955638
大小:77.00 KB
页数:9页
时间:2017-10-18
《stm32中使用gpio的总结(超强)》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、STM32GPIO使用操作步骤:1.使能GPIO对应的外设时钟例如://使能GPIOA、GPIOB、GPIOC对应的外设时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA
2、RCC_APB2Periph_GPIOB
3、RCC_APB2Periph_GPIOC,ENABLE);2.声明一个GPIO_InitStructure结构体例如:GPIO_InitTypeDefGPIO_InitStructure;3.选择待设置的GPIO管脚例如:/*选择待设置的GPIO第7、
4、8、9管脚位,中间加“
5、”符号*/GPIO_InitStructure.GPIO_Pin=GPIO_Pin_7
6、GPIO_Pin_8
7、GPIO_Pin_9;4.设置选中GPIO管脚的速率例如:/*设置选中GPIO管脚的速率为最高速率2MHz*/GPIO_InitStructure.GPIO_Speed=GPIO_Speed_2MHz;//最高速率2MHz5.设置选中GPIO管脚的模式例如:/*设置选中GPIO管脚的模式为开漏输出模式*/GPIO_InitStructure.GPIO_Mode=GPIO
8、_Mode_Out_OD;//开漏输出模式6.根据GPIO_InitStructure中指定的参数初始化外设GPIOX例如:/*根据GPIO_InitStructure中指定的参数初始化外设GPIOC*/GPIO_Init(GPIOC,&GPIO_InitStructure);7.其他应用例:将端口GPIOA的第10、15脚置1(高电平)GPIO_SetBits(GPIOA,GPIO_Pin_10
9、GPIO_Pin_15);例:将端口GPIOA的第10、15脚置0(低电平)GPIO_ResetBits
10、(GPIOA,GPIO_Pin_10
11、GPIO_Pin_15);GPIO寄存器:寄存器描述CRL端口配置低寄存器CRH端口配置高寄存器IDR端口输入数据寄存器ODR端口输出数据寄存器BSRR端口位设置/复位寄存器BRR端口位复位寄存器LCKR端口配置锁定寄存器EVCR事件控制寄存器MAPR复用重映射和调试I/O配置寄存器EXTICR外部中断线路0-15配置寄存器GPIO库函数:函数名描述GPIO_DeInit将外设GPIOx寄存器重设为缺省值GPIO_AFIODeInit将复用功能(重映射事件控制和E
12、XTI设置)重设为缺省值GPIO_Init根据GPIO_InitStruct中指定的参数初始化外设GPIOx寄存器GPIO_StructInit把GPIO_InitStruct中的每一个参数按缺省值填入GPIO_ReadInputDataBit读取指定端口管脚的输入GPIO_ReadInputData读取指定的GPIO端口输入GPIO_ReadOutputDataBit读取指定端口管脚的输出GPIO_ReadOutputData读取指定的GPIO端口输出GPIO_SetBits设置指定的数据端口位GP
13、IO_ResetBits清除指定的数据端口位GPIO_WriteBit设置或者清除指定的数据端口位GPIO_Write向指定GPIO数据端口写入数据GPIO_PinLockConfig锁定GPIO管脚设置寄存器GPIO_EventOutputConfig选择GPIO管脚用作事件输出GPIO_EventOutputCmd使能或者失能事件输出GPIO_PinRemapConfig改变指定管脚的映射GPIO_EXTILineConfig选择GPIO管脚用作外部中断线路库函数:函数GPIO_DeInit功能描
14、述:将外设GPIOx寄存器重设为缺省值例:GPIO_DeInit(GPIOA); 函数GPIO_AFIODeInit功能描述:将复用功能(重映射事件控制和EXTI设置)重设为缺省值例:GPIO_AFIODeInit(); 函数GPIO_Init功能描述:根据GPIO_InitStruct中指定的参数初始化外设GPIOx寄存器例:GPIO_InitTypeDefGPIO_InitStructure;GPIO_InitStructure.GPIO_Pin=GPIO_Pin_All;GPIO_InitStr
15、ucture.GPIO_Speed=GPIO_Speed_10MHz;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN_FLOATING;GPIO_Init(GPIOA,&GPIO_InitStructure); GPIO_InitTypeDefstructureGPIO_InitTypeDef定义于文件“stm32f10x_gpio.h”:typedefstruct{u16GPIO_Pin;GPIOSpeed_Type
此文档下载收益归作者所有