zoukankan      html  css  js  c++  java
  • GPIO

    General-purpose input/output,通用输入输出

    4种输入模式:

    • 输入浮空
    • 输入上拉
    • 输入下拉
    • 模拟输入

    4种输出模式:

    • 开漏输出(带上拉或者下拉)
    • 开漏复用功能(带上拉或者下拉)
    • 推挽式输出(带上拉或者下拉)
    • 推挽式复用功能(带上拉或者下拉)

    4种最大输出速度:

    • 2MHZ
    • 25MHz
    • 50MHz
    • 100MHz

    8种工作模式:
    (1)GPIO_Mode_AIN 模拟输入
    (2)GPIO_Mode_IN_FLOATING 浮空输入
    (3)GPIO_Mode_IPD 下拉输入
    (4)GPIO_Mode_IPU 上拉输入
    (5)GPIO_Mode_Out_OD 开漏输出
    (6)GPIO_Mode_Out_PP 推挽输出
    (7)GPIO_Mode_AF_OD 复用开漏输出
    (8)GPIO_Mode_AF_PP 复用推挽输出

    10个寄存器:

    GPIO库函数:
    1个初始化函数:
    void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct);

    GPIO_Init(GPIOF, &GPIO_InitStructure);

    2个读取输入电平函数:
    uint8_t GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
    uint16_t GPIO_ReadInputData(GPIO_TypeDef* GPIOx);

    GPIO_ReadInputDataBit(GPIOF, GPIO_Pin_9);
    GPIO_ReadInputData(GPIOF);

    2个读取输出电平函数:
    uint8_t GPIO_ReadOutputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
    uint16_t GPIO_ReadOutputData(GPIO_TypeDef* GPIOx);

    GPIO_ReadOutputDataBit(GPIOF, GPIO_Pin_9);
    GPIO_ReadOutputData(GPIOF);

    4个设置输出电平函数:
    void GPIO_SetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
    void GPIO_ResetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
    void GPIO_WriteBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, BitAction BitVal);
    void GPIO_Write(GPIO_TypeDef* GPIOx, uint16_t PortVal);

    GPIO_SetBits(GPIOF, GPIO_Pin_9);
    GPIO_ResetBits(GPIOF, GPIO_Pin_9);

    GPIO_WriteBit(GPIOF, GPIO_Pin_9,BitVal);
    GPIO_Write(GPIOF,PortVal);

  • 相关阅读:
    Nhibernate多表查询解决办法
    Nhibernate compositeid class must override Equals()解决办法
    SQLSERVER2005安装说明
    IList转化为Dataset C#
    Named SQL queries
    把object转换成DataSet,进行数据绑定
    使用Lucene检索文档中的关键字
    使用代理为业务操作添加安全检测
    mongodb副本集架构搭建
    Java生成中文验证码
  • 原文地址:https://www.cnblogs.com/holaworld/p/12408804.html
Copyright © 2011-2022 走看看