2. 通用并行接口GPIO

2023-12-02 17:18
文章标签 通用 gpio 并行接口

本文主要是介绍2. 通用并行接口GPIO,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2.  通用并行接口GPIO

  2.1 GPIO结构及寄存器说明

  2.2 GPIO设计实例

    2.2.1 直接操作寄存器软件设计

    2.2.2 使用库函数范例程序(v2.0.1)

    2.2.3 用GPIO控制LCD

 

2.1 GPIO结构及寄存器说明

  • GPIO包括多个16位I/O端口,每个端口可以独立设置3种输入方式和4种输出方式,并可独立地置位或复位
  • GPIO由寄存器、输入驱动器和输出驱动器等部分组成

  • GPIO通过7个32位寄存器进行操作

偏移地址

名称

类型

复位值

说明

0X00

CRL

读/写

0X44444444

配置寄存器低位(每个端口4位)

0X04

CRH

读/写

0X44444444

配置寄存器高位(每个端口4位)

0X08

IDR

0X0000

16位输入数据寄存器

0X0C

ODR

读/写

0X0000

16位输出数据寄存器

0X10

BSRR

0X00000000

位置位/复位寄存器

0X14

BRR

0X0000

位复位寄存器

0X18

LCKR

读/写

0X00000

配置锁定寄存器

  • 每个端口的4个配置位是CNF[1:0]和MODE[1:0]
CNF[1:0]MODE[1:0]输入配置CNF[1:0]MODE[1:0](2)输出配置
00 00 模拟输入0001/10/11通用推挽输出
01 00 浮空输入(复位状态)0101/10/11通用开漏输出
1000上拉/下拉输入(1)1001/10/11复用推挽输出
11 00保留1101/10/11复用开漏输出

注:(1)ODR = 1:上拉,ODR = 0;下拉

(2)01/10/11 依次对应最大输出频率为1

这篇关于2. 通用并行接口GPIO的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/446158

相关文章

使用Java实现通用树形结构构建工具类

《使用Java实现通用树形结构构建工具类》这篇文章主要为大家详细介绍了如何使用Java实现通用树形结构构建工具类,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录完整代码一、设计思想与核心功能二、核心实现原理1. 数据结构准备阶段2. 循环依赖检测算法3. 树形结构构建4. 搜索子

详解Python中通用工具类与异常处理

《详解Python中通用工具类与异常处理》在Python开发中,编写可重用的工具类和通用的异常处理机制是提高代码质量和开发效率的关键,本文将介绍如何将特定的异常类改写为更通用的ValidationEx... 目录1. 通用异常类:ValidationException2. 通用工具类:Utils3. 示例文

j2EE通用jar包的作用

原文:http://blog.sina.com.cn/s/blog_610901710101kx37.html IKIKAnalyzer3.2.8.jar // 分词器 ant-junit4.jar // ant junit antlr-2.7.6.jar // 没有此包,hibernate不会执行hql语句。并且会报NoClassDefFoundError: antlr

A20 操作GPIO口

例如:先在 Sys_config.fex文件中 [1302_para] 1302_used      = 1 1302_clk             = port:PD05<1><default><default><0> 1302_dat             = port:PD06<1><default><default><0> 1302_rs

通用内存快照裁剪压缩库Tailor介绍及源码分析(一)

背景 我们知道内存快照是治理 OOM 问题及其他类型的内存问题的重要数据源,内存快照中保存了进程虚拟机的完整的堆内存数据,很多时候也是调查其他类型异常的重要参考。但是dump出来的堆转储文件.hprof往往很大,以 LargeHeap 应用为例,其 OOM 时的内存快照大小通常在512M左右,要有效的存储和获取都是一个问题。 线下拿到hprof文件相对容易,也可以预防OOM,但覆盖的场景十分有

SpringBoot中利用EasyExcel+aop实现一个通用Excel导出功能

一、结果展示 主要功能:可以根据前端传递的参数,导出指定列、指定行 1.1 案例一 前端页面 传递参数 {"excelName": "导出用户信息1725738666946","sheetName": "导出用户信息","fieldList": [{"fieldName": "userId","fieldDesc": "用户id"},{"fieldName": "age","fieldDe

数据结构(邓俊辉)学习笔记】排序 5——选取:通用算法

文章目录 1. 尝试2. quickSelect3.linearSelect:算法4. linearSelect:性能分析5. linearSelect:性能分析B6. linearSelect:性能分析C 1. 尝试 在讨论过众数以及特殊情况下中位数的计算方法以后,接下来针对一般性的选取问题,介绍优化的通用算法。 既然选取问题的查找目标就是在整个数据集中按大小次序秩为 k

c++通用模板类(template class)定义实现详细介绍

有时,有两个或多个类,其功能是相同的,仅仅是数据类型不同,如下面语句声明了一个类:class Compare_int { public : Compare(int a,int b) { x=a; y=b; } int max( ) { return (x>y)?x:y; } int min( ) { return (x&... 有时,有两个或多个类,其功能是相同的,仅仅是数

NXP,S32K1XX汽车通用微控制器开发笔记

文章目录 1. 概述2. 开发环境配置2.1 S32 Design Studio2.2 安装SDK2.3 新建demo工程2.4 字体配置2.5 按需求修改demo2.5.1 修改pin脚定义2.5.2 增加串口打印功能 2.6 编译代码2.7 debuger 配置 参考 1. 概述 S32K1系列32位微控制器(MCU)提供基于Arm® Cortex®-M的MCU,以及基

使用Mybatis SqlProvider类相关注解生成通用Mapper接口

使用Mybatis SqlProvider类相关注解生成通用Mapper接口 1. 使用Mybatis @SelectProvider @InsertProvider @UpdateProvider @DeleteProvider注解封装BaseMapper<E, I>通用接口, 普通实体类Mapper接口只需要继承该接口, 即可实现基础常用的CRUD功能. BaseMapper<E, I>