zoukankan      html  css  js  c++  java
  • DA14580之GPIO口的使用

    SDK版本:5.0.4

    开发环境:Keil

    芯片:DA14580

    作者:Asam

       

        DA14580的gpio使用十分简单,只需调用其SDK自带的库函数即可。

        (1)IO口初始化函数 

     1 /**
     2  ****************************************************************************************
     3  * @brief Combined function to set the state and the type and mode of the GPIO pin 
     4  *
     5  * @param[in] port     GPIO port
     6  * @param[in] pin      GPIO pin
     7  * @param[in] mode     GPIO pin mode.     INPUT = 0, INPUT_PULLUP = 0x100, INPUT_PULLDOWN = 0x200, OUTPUT = 0x300,
     8  * @param[in] function GPIO pin usage. GPIO_FUNCTION enumaration.
     9  * @param[in] high     set to TRUE to set the pin into high else low
    10  *
    11  * @return void
    12  ****************************************************************************************
    13  */
    void GPIO_ConfigurePin( GPIO_PORT port, GPIO_PIN pin, GPIO_PUPD mode, GPIO_FUNCTION function, const bool high )  

         

       其中GPIO_FUNCTION 的枚举在SDK中可找到,

       配置应在user_periph_setup.c文件中,void set_pad_functions(void) 函数进行配置,系统会在初始化时执行此函数

     

      

    例如: 

    void set_pad_functions(void)        // set gpio port function mode
    {
    
        //--------LED PIN--------------------
          GPIO_ConfigurePin(GPIO_LED_PORT,GPIO_LED_PIN,OUTPUT,PID_GPIO,false ); 
        //--------KEY PIN--------------------
          GPIO_ConfigurePin(GPIO_KEY_PORT,GPIO_KEY_PIN,INPUT_PULLDOWN,PID_GPIO,false);        
    }

      (2)GPIO高低电平配置与读取

        其实也只需要调用函数即可。

        

        高电平:GPIO_SetActive(GPIO_LED_PORT,GPIO_LED_PIN);

        低电平:GPIO_SetInactive(GPIO_LED_PORT,GPIO_LED_PIN);

        读取电平:GPIO_GetPinStatus(GPIO_LED_PORT,GPIO_LED_PIN)  (高电平返回 true,低电平返回false)

  • 相关阅读:
    英语面试自我介绍范文(二)
    在PHP中PDO解决中文乱码问题的一些补充
    英文面试自我介绍(一)
    添加XP/2003的网络用户和密码及用户自动登录
    Windows Server 2000/2003/2008错误
    数据库连接字符串大全 (转载)
    flash中特殊字符解析的使用
    创建T100Monitor技术研究过程
    LINQ,SQL查询,LINQ 实现常见SQL查询
    Web.Config 的图形配置及配置项含意
  • 原文地址:https://www.cnblogs.com/asam/p/12238272.html
Copyright © 2011-2022 走看看