#define DS18B20_IO_IN() {GPIOG->CRH&=0XFFFF0FFF;GPIOG->CRH|=8<<12;}
#define DS18B20_IO_OUT() {GPIOG->CRH&=0XFFFF0FFF;GPIOG->CRH|=3<<12;}
``
<font color=#999AAA >提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
</font>
@[TOC](文章目录)
<hr style=" border:solid; width:100px; height:1px;" color=#000000 size=1">
# 前言
<font color=#999AAA >提示:这里可以添加本文要记录的大概内容:
stm32不是像51单片机一样,需要设置引脚功能。当最开始你设置了引脚是输出,没有办法改了,但是有时候我们需要输入了,那怎么办呢。</font>
<hr style=" border:solid; width:100px; height:1px;" color=#000000 size=1">
<font color=#999AAA >提示:以下是本篇文章正文内容,下面案例可供参考
# 一、那是什么?
<font color=#999AAA >示例:所以我们通过设置寄存器模式去配置引脚
![在这里插入图片描述](https:
所以我们配置引脚
根据这个表格,我们就可以解释 1 中逻辑分析结果的含义:
Ⅰ. GPIOG->CRH & 0XFFFF0FFF :将GPIOG的CRH寄存器(第11个IO口)的地址位(CNF[1:0] MODE7[1:0])清零,其余位和1按位与 后 保持不变;
再将上面的结果给GPIOG->CRH,此时,
GPIOG->CRH | 0X00008000 :因为 0x8=1000b,所以此处是将GPIOG的CRH寄存器(第11个IO口)的地址位(CNF7[1:0] MODE7[1:0])置位为1000,即MODE7[1:0]=00,CNF7[1:0]=10,其余位和0按位或 后 保持不变。
最后,依照表格PG7的CRL寄存器 MOD11=00,处于输入模式,CNF11=10,上拉/下拉输入
|