嵌入式第四天(GPIO口输入总结)

GPIO口输入总结

看了几个星期才看完3讲跑马灯的视频。

总结一下:

对于GPIO口的输出操作总共有三种方式。

 

一 库函数

库函数就跟工作中调用到的初始化函数一样。

不过知道了对于结构体的成员具体是怎么初始化的。

    GPIO_InitStruct.GPIO_Mode = GPIO_Mode_OUT; //选择输出模式  输出输出 复用 模拟  最后两个不知道是什么模式
    GPIO_InitStruct.GPIO_OType = GPIO_OType_PP;//推挽输出  开路输出
    GPIO_InitStruct.GPIO_Pin = GPIO_Pin_9|GPIO_Pin_10;//对pin脚的选择  当两个pin脚设置为一样的时候 可以这样写
    GPIO_InitStruct.GPIO_PuPd = GPIO_PuPd_UP;//上拉下拉  不拉  上拉输入 下拉输出?
    GPIO_InitStruct.GPIO_Speed =GPIO_Speed_50MHz;//设置频率
    GPIO_Init(GPIOF,&GPIO_InitStruct);//设置完毕 把结构体值设置进去

然后到主函数调用函数 然后延时  正常流程  

二 寄存器

寄存器是一位一位对GPIO口的设置

F9的寄存器设置:

    GPIOF->MODER &= ~(3<<18);
    GPIOF->MODER |= 1<<18;
    
    GPIOF->OSPEEDR &= ~(3<<18);
    GPIOF->OSPEEDR |= 2<<18;
    
    GPIOF->PUPDR &= ~(3<<18);
    GPIOF->PUPDR |= 1<<18;    
    
    GPIOF->OTYPER &= ~(1<<9);
    GPIOF->OSPEEDR |= 0<<9;
    
    GPIOF->ODR |= 1<<9;//1

正常流程应该是先读  然后再改 然后再写入   (不知道为毛直接改不行)

~(3<<18)  高端操作  3 =11(2进制) 右移18位 然后再取反

相当于一个32位的寄存器 第18 19位设置为0.  (这个好像是先置0 然后再写入正常的寄存器)

一般一种32位的寄存器存着16个pin脚的不同设置模式

比如在一种寄存器中18 19 位是pin9   20 21 位就是pin10

三 位操作

位操作的gpio初始化跟一种的库函数一样

不同的只是在主函数的调用上。

输入是PXin(管脚号)   x是哪组pin脚    

输出是PXout(管脚号)

主要说明的是地址上的映射。

把寄存器拿出来设置映射到地址上 ,然后每个寄存器的值都对应上一个地址。

然后给地址赋值就行了。

 

 

最近还是懒了一点。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
嵌入式系统设计师教程简介: 本书按照人事部、信息产业部全国计算机技术与软件专业技术资格(水平)考试要求编写,内容紧扣《嵌入式系统设计师考试大纲》。全书共6章,分别对嵌入式系统基础知识、嵌入式微处理器与接设计、嵌入式软件与操作系统、嵌入式软件程序设计、嵌入式系统设计与维护等知识进行了详细的讲解,最后介绍了一个典型的嵌入式系统设计案例。 本书内容丰富,结构合理,概念清晰。既可作为全国计算机技术与软件专业技术资格(水平)考试中嵌入式系统设计师级别的考试用书,供有关考生学习使用,也可以作为本科生嵌入式系统相关课程教材或培训用书使用。 作者简介: 目录: 第1章 嵌入式系统基础知识 1.1 嵌入式系统的定义和组成 1.1.1 嵌入式系统的定义 1.1.2 嵌入式系统发展概述 1.1.3 嵌入式系统的组成 1.1.4 实时系统 1.2 嵌入式微处理器体系结构 1.2.1 冯·诺依曼与哈佛结构 1.2.2 CISC与RISC 1.2.3 流水线技术 1.2.4 信息存储的字节顺序 1.3 嵌入式系统的硬件基础 1.3.1 组合逻辑电路基础 1.3.2 时序逻辑电路 1.3.3 总线电路及信号驱动 1.3.4 电平转换电路 1.3.5 可编程逻辑器件基础 1.4 嵌入式系统中信息表示与运算基础 1.4.1 进位计数制与转换 1.4.2 计算机中数的表示 1.4.3 非数值数据编码 1.4.4 差错控制编码 1.5 嵌入式系统的性能评价 1.5.1 度量项目 1.5.2 评价方法 1.5.3 评估嵌入式系统处理器的主要指标 第2章 嵌入式微处理器与接知识 2.1 嵌入式微处理器的结构和类型 2.1.1 嵌入式微处理器的分类 2.1.2 典型8位微处理器的结构和特点 2.1.3 典型16位微处理器的结构和特点 2.1.4 典型32位微处理器的结构和特点 2.1.5 DSP处理器的结构和特点 2.1.6 多核处理器的结构和特点 2.2 嵌入式系统的存储体系 2.2.1 存储器系统概述 2.2.2 嵌入式系统存储设备分类 2.2.3 ROM的种类与选型 2.2.4 Flash:Memory的种类与选型 2.2.5 RAM的种类与选型 2.2.6 外部存储器的种类与选型 2.3 嵌入式系统输入输出设备 2.3.1 嵌入式系统常用输入/输出设备概述 2.3.2 GPIO原理与结构 2.3.3 A/D接基本原理与结构 2.3.4 D/A接基本原理与结构 2.3.5 键盘接基本原理与结构 2.3.6 显示接基本原理与结构 2.3.7 触摸屏接基本原理与结构 2.3.8 音频接基本原理与结构 2.4 嵌入式系统总线接 2.5 嵌入式系统网络接 2.6 嵌入式系统电源 2.7电子电路设计基础 第3章 嵌入式系统软件及操作系统知识 第4章 嵌入式软件程序设计 第5章 嵌入式系统开发与维护知识 第6章 嵌入式系统设计

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值