gpio stm8 管脚 配置工具_stm8的GPIO引脚模式

GPIO_Mode_In_FL_No_IT

浮空输入无中断

GPIO_Mode_In_PU_No_IT

上拉输入无中断

GPIO_Mode_In_FL_IT

浮空输入有中断

GPIO_Mode_In_PU_IT

上拉输入有中断

GPIO_Mode_Out_OD_Low_Fast

开漏-输出低-高速   Output open-drain, low level, 10MHz

GPIO_Mode_Out_PP_Low_Fast

推挽-输出低-高速   Output push-pull, low level, 10MHz

GPIO_Mode_Out_OD_Low_Slow

开漏-输出低-低速   Output open-drain, low level, 2MHz

GPIO_Mode_Out_PP_Low_Slow

推挽-输出低-低速   Output push-pull, low level, 2MHz

GPIO_Mode_Out_OD_HiZ_Fast

开漏-输出高阻-高速   Output open-drain, high-impedance level, 10MHz

GPIO_Mode_Out_PP_High_Fast

推挽-输出高-高速   Output push-pull, high level, 10MHz

GPIO_Mode_Out_OD_HiZ_Slow

开漏-输出高阻-低速   Output open-drain, high-impedance level, 2MHz

GPIO_Mode_Out_PP_High_Slow

推挽-输出高-低速   Output push-pull, high level, 2MHz

操作步骤:

1. 使能GPIO对应的外设时钟

例如://使能GPIOA、GPIOB、GPIOC对应的外设时钟

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB | RCC_APB2Periph_GPIOC , ENABLE);

2. 声明一个GPIO_InitStructure结构体

例如:

GPIO_InitTypeDef GPIO_InitStructure;

3. 选择待设置的GPIO管脚

例如://选择待设置的GPIO第7、8、9管脚位 ,中间加“|”符号

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9;

4. 设置选中GPIO管脚的速率

例如://设置选中GPIO管脚的速率为最高速率2MHz

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; //最高速率2MHz

5. 设置选中GPIO管脚的模式

例如://设置选中GPIO管脚的模式为开漏输出模式GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_OD; //开漏输出模式

6. 根据GPIO_InitStructure中指定的参数初始化外设GPIOX

例如:  GPIO_Init(GPIOC, &GPIO_InitStructure);

7.其他应用

例: 将端口GPIOA的第10、15脚置1(高电平)

GPIO_SetBits(GPIOA, GPIO_Pin_10 | GPIO_Pin_15);

例:将端口GPIOA的第10、15脚置0(低电平)

GPIO_ResetBits(GPIOA, GPIO_Pin_10 | GPIO_Pin_15);

8.GPIO寄存器:

寄存器    描述

CRL         端口配置低寄存器

CRH         端口配置高寄存器

IDR          端口输入数据寄存器

ODR        端口输出数据寄存器

BSRR       端口位设置/复位寄存器

BRR         端口位复位寄存器

LCKR       端口配置锁定寄存器

EVCR       事件控制寄存器

MAPR      复用重映射和调试

I/O           配置寄存器

EXTICR    外部中断线路0-15配置寄存器

9.GPIO库函数:

函数名                                              描述

GPIO_DeInit                      将外设GPIOx寄存器重设为缺省值

GPIO_AFIODeIn

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值