- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
GPIOx端口 编程步骤:
第一部分 配置GPIOx端口
步骤一 加入以下头文件:
#include stm32f10x_lib.h
//若使用RCC_Configuration( ); 使能GPIO外设对应的时钟,还必须加入以下头文件。
//若使用具体的使能外设时钟命令(例如,RCC_APB2PeriphClockCmd( )等 ),则不需要加入以下头文件。
#include HelloRobot.h
步骤二 定义结构体变量GPIO_InitStructure,用于初始化GPIOx端口的参数:
GPIO_InitTypeDef GPIO_InitStructure; //此句既可以放在main函数的外部,//也可以放在main函数的内部。
步骤三 使能GPIO外设对应的时钟:必须GPIO_Init( )函数之前执行,否则端口参数设置无效。
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB |
RCC_APB2Periph_GPIOE,ENABLE);
RCC_Configuration( );/* Configure the system clocks */
步骤四 设置GPIO管脚、响应速度、工作模式,即设置GPIO端口的参数(通过为结构体变量GPIO_InitStructure 的成员赋值实现):
/* LED1 - PB8 , LED2 - PB9 , LED3 - PE0 , LED4 - PE1 */
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8 |GPIO_Pin_9;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_Init(GPIOB, GPIO_InitStructure);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 |GPIO_Pin_1;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_Init(GPIOE, GPIO_InitStructure);
/*我们对GPIO_Pin 成员,赋值GPIO_Pin_0 | GPIO_Pin_1,GPIO_Pin_8 |GPIO_Pin_9。
对GPIO_Speed成员,赋值GPIO_Speed_50MHz ,
对GPIO_Mode 成员,则设置为GPIO_Mode_Out_PP,表示推挽输出模式。*/
把所有端口的所有管脚,设置成模拟输入:
步骤五 ( 调用函数GPIO_Init()来 )初始化GPIO端口,(完成对端口中的寄存器的设置。)代码如下:
GPIO_Init(GPIOC , GPIO_InitStructure);
由于GPIOx端口外设的初始化,已经放在前面的初始化参数后面,编程时,此处不必重复写。
以上的步骤二~步骤五,可以打包在一个函数GPIO_Configuration( )中。
在main函数中,仅仅调用该函数即可。使得main程序简洁、明了。
GPIO端口外设,无需使能即可使用。
注:基本上,所有的外设(除GPIO,EXTI外设)都要使能。
理由:stm32的 外设使能,就相当于,C8051F410的外设使能。实现管脚复用,即把外部管脚分配给片内数字资源。(管脚复用是通过交叉开关来实现。) STM32系列单片机的所有GPIO端口外设所在的管脚,默认(即上电复位后)作为GPIO端口外设使用。如下图 所示。当其它外设(例句SPI1外设等)使能时,SPI1所在的管脚PA4、PA5就不再作为GPIO端口外设使用,而是用其复用功能,作为SPI1接口使用。
。。。。。。。。。。。。。。。。。。。。。。
第二部分 操作GPIOx端口(例如 点亮或熄灭LED灯等)
i、GPIOx端口 工作在输出方式:
以 控制LED点亮或熄灭 为例
步骤六
【法一】通过GPIO_SetBits();或GPIO_ResetBits(); 点亮或熄灭LED灯
例子,
/*====LED12-ON=======*/
GPIO_ResetBits(GPIOB , GPIO_Pin_8);
GPIO_ResetBits(GPIOB , GPIO_Pin_9);
GPIO_SetBits(GPIOE , GPIO_Pin_0);
GPIO_SetBits(GPIOE , GPIO_Pin_1);
延时的方法:
【法1】fo
您可能关注的文档
- 涂江平《材料工艺基础》材料加工工艺作业题汇总.docx
- 体育经典教学课件:第一章 高等院校体育2.ppt
- 涂江平《材料工艺基础》第三章 焊接技术.ppt
- 涂江平《材料工艺基础》第二章 金属塑性成形.ppt
- 涂江平《材料工艺基础》第四章 材料表面技术.ppt
- 涂江平《材料工艺基础》第五章 粉末冶金及陶瓷成形.ppt
- 外科学精品教学(温州医科大学)GERD胃食管反流病.ppt
- 涂江平《材料工艺基础》第一章 液态金属成形.ppt
- 外科学精品教学(温州医科大学)颅内肿瘤与椎管内肿瘤.ppt
- 外科学精品教学(温州医科大学)创伤2015.10.ppt
- 王峰《嵌入式系统原理与应用教学》第3章 串口USART编程.pptx
- 王峰《嵌入式系统原理与应用教学》第2章 STM32单片机IO端口编程.pptx
- 王峰《嵌入式系统原理与应用教学》第4章 中断系统编程.pptx
- 王峰《嵌入式系统原理与应用教学》第5章 定时器 编程.ppt
- 王峰《嵌入式系统原理与应用教学》第八章 LCD编程.ppt
- 王峰《嵌入式系统原理与应用教学》实验六 LCD显示实验.doc
- 王峰《嵌入式系统原理与应用教学》实验三 串口通信实验.doc
- 王峰《嵌入式系统原理与应用教学》第一章 嵌入式系统原理与应用 绪论.ppt
- 王峰《嵌入式系统原理与应用教学》实验三plus 串口输入单元 实验.doc
- 王峰《嵌入式系统原理与应用教学》实验四 中断实验.doc
文档评论(0)