STM32F051的GPIO输入模式怎么表示?下面我举个例子说明一下。

2019-08-14 02:36发布

本帖最后由 hardware 于 2017-9-8 08:43 编辑

这个是STM32F103芯片,
这种应该是寄存器操作方式。
//#define SCCB_SDA_IN()    {GPIOB->CRH&=0XFF0FFFFF;GPIOB->CRH|=0X00800000;}    //输入模式
//#define SCCB_SDA_OUT()   {GPIOB->CRH&=0XFF0FFFFF;GPIOB->CRH|=0X00300000;}    //输出模式

那STM32F051芯片上的GPIO口的输入输出模式又怎么表示?寄存器操作方式该怎么写?
向各位求解!!

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
八度空间
1楼-- · 2019-08-14 04:27
输出:
GPIOx->MODER &= ~GPIO_MODER_MODERx;
GPIOx->MODER |= GPIO_MODER_MODERx_0;

输入:
GPIOx->MODER &= ~GPIO_MODER_MODERx;

其中x就是对应的IO和序号
huanghan
2楼-- · 2019-08-14 08:56
本帖最后由 huanghan 于 2017-9-7 23:26 编辑

前提是IO配置好,输出可以这样表示
GPIOA->BSRRH = GPIO_Pin_7;    //PA输出低电平   
GPIOA->BSRRL = GPIO_Pin_7;     //PA输出高电平
你这问题问是直接操作寄存器 ,先去把寄存器的介绍搞明白了,你就知道怎么表示了


hardware
3楼-- · 2019-08-14 12:29
huanghan 发表于 2017-9-7 23:19
前提是IO配置好,输出可以这样表示
GPIOA->BSRRH = GPIO_Pin_7;    //PA输出低电平   
GPIOA->BSRRL = G ...

这个我知道,还可用这种表示GPIO_SetBits(GPIOB, GPIO_Pin_0)     , GPIO_ResetBits(GPIOB, GPIO_Pin_0),我的意思是GPIO 输入输出的模式,不是输出或输入高低电平。
hardware
4楼-- · 2019-08-14 16:16
 精彩回答 2  元偷偷看……

一周热门 更多>