


全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
先简要说下这系列学习笔记的内容和学习目标。第一章 时钟第二章 GPIO第三章 中断第四章 模拟USB鼠标第五章 实现U盘第六章 TFFS驱动移植第七章 USB设备开发总结STM32学习笔记2-GPIO1、 I/O端口配置方法第1步:打开使用到的GPIOA 、GPIOC、 GPIOD、 GPIOF 或GPIOG的时钟;第2步:配置所有的按键GPIO为浮动输入模式(实际上CPUf复位后就是输入状态)2、 常用的I/O配置函数和结构 GPIO_InitTypeDef 结构体typedef struct u16 GPIO_Pin; /*GPIO端口选择*/GPIOSpeed_TypeDef GPIO_Speed;/* 以设置选中管脚的速率*/ GPIOMode_TypeDef GPIO_Mode; /*设置选中管脚的工作状态*/ GPIO_InitTypeDef;GPIO_Pin描述GPIO_Pin_None无管脚被选中GPIO_Pin_X选中管脚X,X值0-15GPIO_Pin_All选中全部管脚GPIO_Speed描述GPIO_Speed_10MHz最高输出速率10MHzGPIO_Speed_20MHz最高输出速率20MHzGPIO_Speed_50MHz最高输出速率50MHzGPIO_Mode描述GPIO_Mode_AIN模拟输入GPIO_Mode_IN_FLOATING浮空输入GPIO_Mode_IPD下拉输入GPIO_Mode_IPU上拉输入GPIO_Mode_Out_OD开漏输出GPIO_Mode_Out_PP推挽输出GPIO_Mode_AF_OD复用开漏输出GPIO_Mode_AF_PP复用推挽输出 RCC_XXXPeriphClockCmd(),XXX时钟控制命令,共三个相关函数:void RCC_APB2PeriphClockCmd(u32 RCC_APB2Periph, FunctionalState NewState)APB2外设时钟使能;void RCC_APB1PeriphClockCmd(u32 RCC_APB1Periph, FunctionalState NewState)APB1外设时钟使能void RCC_AHBPeriphClockCmd(u32 RCC_AHBPeriph, FunctionalState NewState)AHB时钟使能 GPIO_Init:根据GPIO_InitTypeDef结构中指定的参数初始化外设GPIOx寄存器void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct)输入:GPIOx:x可以是A,B,C,D或者E,来选择GPIO外设 GPIO_InitStruct设置参见GPIO_InitTypeDef 结构体 GPIO_SetBits:设置指定的数据端口位为1void GPIO_SetBits(GPIO_TypeDef* GPIOx, u16 GPIO_Pin)输入:GPIOx:x可以是A,B,C,D或者E,来选择GPIO外设 GPIO_Pin:待设置的端口,取GPIO_Pin_x(x可以是0-15)的任意组合 GPIO_ResetBits:清除端口值(置0)void GPIO_ResetBits(GPIO_TypeDef* GPIOx, u16 GPIO_Pin)输入同GPIO_SetBits()3、 例程注释void gpio_config()GPIO_InitTypeDef GPIO_InitStructure;/*使用I/O资源:led-pb1,key-pa0,打开GPIOA,GPIOB和端口复用的时钟,复用时钟用于中断*/RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB| RCC_APB2Periph_AFIO,ENABLE);GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;/*设置为推挽输出*/GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_Init(GPIOB, &GPIO_InitStructure);/* 初始化PB1 */GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;/*设置浮空输入*/GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_Init(GPIOA, &GPIO_InitStructure);/*初始化 PA0 */GPIO_SetBits(GPIOB, GPIO_Pin_1);/* 关闭LED,设置PA0=1关闭LED */return;int main(void).RCC_Configuration();/*配置RCC时钟*/gpio_config();/*配置GPIO*/for(i=0;i10;i+)GPIO_Rese
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工业废水处理与环保技术进展
- 工业机器人技术在生产线中的运用
- 工业污染源监测与控制技术
- 工业机器人技术详解
- 工业生产中的智能环境监控解决方案
- 工业机器人的人机交互设计
- 工业机械设计的未来发展方向
- 工业自动化中的机器视觉技术应用
- 工业管道设计与安全保障措施
- 工业领域用高效厢式车的探索与研究
- GB/T 1931-1991木材含水率测定方法
- 运动改造大脑 课件
- 上海沪教版高一历史第一分册知识梳理
- 桥梁施工质量控制要点(PPT)
- 《社会保障概论》课程教学大纲(本科)
- 学校固定资产表格明细账
- 18.V2X技术在智能网联车上的应用
- NSTEMI指南解读课件
- 精品解析:湖南省永州市2020年中考地理试题(原卷版)
- 贷款申请表(标准模版)
- 合理应用喹诺酮类抗菌药物专家共识精品课件
评论
0/150
提交评论