#define HDC_SDA_IN() {GPIOC->MODER&=~(3<<(92));GPIOC->MODER|=0<<92;} //PC9输入模式
#define HDC_SDA_OUT() {GPIOC->MODER&=~(3<<(92));GPIOC->MODER|=1<<92;} //PC9输出模式
通过参考手册,查看GPIO寄存器,如下图所示:

解释输入输出模式操作:

HDC_SDA_IN() :

      GPIOC->MODER&=~(3<<(9*2));   //3的二进制表示为11,将11左移2*9=18位(由2y:2y+1确定端口9的配置位,即第19、18位),取反后与上GPIOC->MODER;此操作是使得GPIOC->MODER的19、18位寄存器清零。GPIOC->MODER|=0<<9*2;         //0左移9*2=18位,即配置位18/19置为0;此次操作实现配置端口9为输入模式

HDC_SDA_OUT() :

      GPIOC->MODER&=~(3<<(9*2));   //3的二进制表示为11,将11左移2*9=18位(由2y:2y+1确定端口9的配置位,即第19、18位),取反后与上GPIOC->MODER;此操作是使得GPIOC->MODER的19、18位寄存器清零。GPIOC->MODER|=1<<9*2;         //01左移9*2=18位,即配置位19、18置为01;此次操作实现配置端口9为输出模式

转载至:GPIO 端口模式寄存器 (GPIOx_MODER) (x = A…I)

GPIO 端口模式寄存器 (GPIOx_MODER) (x = A..I)相关推荐

  1. GPIO 端口模式寄存器 (GPIOx_MODER)之寄存器使用解析

    #define HDC_SDA_IN() {GPIOC->MODER&=~(3<<(92));GPIOC->MODER|=0<<92;} //PC9输入模式 ...

  2. GPIO 端口模式寄存器 (GPIOx_MODER)

    #define SDIO_IN()  {GPIOA->MODER&=~(3<<(7*2));GPIOA->MODER|=0<<7*2;}    //PB7输 ...

  3. GPIO端口、基本定时器、串口

    一.GPIO端口 1.开启所需IO口时钟 2.配置GPIO工作模式 GPIO端口模式寄存器 (GPIOx_MODER): 00:输入 01:通用输出模式 10:复用功能模式 11:模拟模式 GPIO端 ...

  4. 用HALL 库配置GPIO以及相关寄存器

    文章目录 一 .初始化GPIO (一)定义一个结构体变量GPIO_InitStruct,该变量类型是GPIO_InitTypeDef. (二).使能时钟. (三)配置引脚的初始化电平. (四).通过结 ...

  5. 【嵌入式07】寄存器映射原理详解,GPIO端口的初始化设置步骤

    本文主要介绍STM32F103系列芯片的地址映射和寄存器映射原理,GPIO端口的初始化设置步骤. 一.STM32F103系列芯片的地址映射和寄存器映射原理 1.什么是寄存器? 2.地址映射和寄存器映射 ...

  6. STM32寄存器操作端口模式CRL/CRH详解

    STM32寄存器操作端口模式CRL/CRH详解 首先,在开始讲解前,大家请先看如下一段代码: #define SDA_IN_24c02(){GPIOB->CRH&=0XFFF0FFFF; ...

  7. 了解GPIO端口的初始化设置三步骤LED流水灯C语言 寄存器方式编程实现

    文章目录 前言 一.地址映射.寄存器映射原理 二.GPIO端口的初始化设置 1.时钟配置 2.输入输出模式 3.最大速率设置 三.TM32F103C8T6用C语言 .寄存器方式实现LED灯的闪烁 原理 ...

  8. STM32F103五分钟入门系列(二)GPIO的七大寄存器+GPIOx_LCKR作用和配置

    摘自:STM32F103五分钟入门系列(二)GPIO的七大寄存器+GPIOx_LCKR作用和配置 作者:自信且爱笑' 发布时间: 2021-05-01 12:08:32 网址:https://blog ...

  9. GPIO端口初始化设置,STM32F103点亮LED流水灯过程

    文章目录 一.STM32F103系列芯片地址映射和寄存器映射原理 1.什么是寄存器 2.地址映射和寄存器映射 3.寄存器地址查找 二.GPIO端口初始化设置 1.GPIO简介 2.配置时钟 3.输入输 ...

最新文章

  1. [Spring 深度解析]第6章 Spring的IoC容器系列
  2. [数据结构-严蔚敏版]P61ADT Queue的表示与实现(单链队列-队列的链式存储结构)
  3. 使用Java更新DynamoDB项
  4. C语言中的“”和“”
  5. Stackoverflow 年度报告 2020:开发者最喜爱的数据库是什么?
  6. ab st语言编程手册_从零开始学习ST/SCL编程语言:一赋值及条件执行指令的讲解...
  7. 设置现金流量科目必须录入
  8. Linux宝库名人轶事栏目 | 感恩每一天
  9. 显控触摸屏编程手册_深圳显控AKWORKSHOP触摸屏与ALLENBRADLEY通讯手册.pdf
  10. 计算机开机太慢,为什么电脑开机很慢
  11. String转十六进制,十六进制转String,字符串转十六进制,十六进制转字符串
  12. java instant_Java Instant类
  13. 淘宝详情页设计要点有哪些 优秀淘宝详情页面多少屏合适
  14. 基于java springboot android 安卓记账本源码(毕设)
  15. PHP 警告 Warning: Unknown: Input variables exceeded 1000. 解决方法
  16. python绘制表格并保存为图片_Python3基于plotly模块保存图片表格
  17. Schema是什么鬼?
  18. 数据挖掘(六)——模型优化与评估方法
  19. ps怎么抠图?教你怎么用钢笔工具抠图
  20. 地方两会前瞻布局 谋定·经信研究-李刚:各地元宇宙虚实融合

热门文章

  1. react native KeyboardAwareScrollView或者KeyboardAvoidingView失效问题解决
  2. RGB565转RGB888原理 (MATLAB代码)
  3. 课前测3-字符三角形
  4. jquery二维码生成插件_二维码生成器
  5. Latex并列摆放两张表格
  6. 关于google相册图片问题
  7. html 小喇叭图标,ps制作三维立体小喇叭图标图文教程
  8. wordpress子目录双语网站
  9. STM32的C与汇编语言混合编程
  10. Unity中实现刮奖效果