龙岩建设局网站声明,域名查询入口,全球ic采购网,免费简历制作软件app目录 GPIO配置函数gpio_tlmm_config GPIO配置函数头文件定义 代码参数详细解析 举个列子 GPIO配置函数gpio_tlmm_config authordaisy.skye的博客_CSDN博客-嵌入式,Qt,Linux领域博主 代码路径 bootable/bootloader/lk/platform/msm8953/gpio.c void gpio_tlmm_config(uint32_t… 目录 GPIO配置函数gpio_tlmm_config GPIO配置函数头文件定义 代码参数详细解析 举个列子 GPIO配置函数gpio_tlmm_config authordaisy.skye的博客_CSDN博客-嵌入式,Qt,Linux领域博主 代码路径 bootable/bootloader/lk/platform/msm8953/gpio.c void gpio_tlmm_config(uint32_t gpio, uint8_t func,uint8_t dir, uint8_t pull,uint8_t drvstr, uint32_t enable)
{uint32_t val 0; val | pull;val | func 2;val | drvstr 6;val | enable 9;writel(val, (uint32_t *)GPIO_CONFIG_ADDR(gpio));return;
}
void gpio_set_dir(uint32_t gpio, uint32_t dir)
{writel(dir, (uint32_t *)GPIO_IN_OUT_ADDR(gpio));return;
}gpio_tlmm_config配置gpio的引脚功能方向能力gpio_set_dir配置gpio的高低电平先根据函数和定义自行理解后 GPIO配置函数头文件定义 #include gpio.h/* GPIO TLMM: Direction */
#define GPIO_INPUT 0
#define GPIO_OUTPUT 1/* GPIO TLMM: Pullup/Pulldown */
#define GPIO_NO_PULL 0
#define GPIO_PULL_DOWN 1
#define GPIO_KEEPER 2
#define GPIO_PULL_UP 3/* GPIO TLMM: Drive Strength */
#define GPIO_2MA 0
#define GPIO_4MA 1
#define GPIO_6MA 2
#define GPIO_8MA 3
#define GPIO_10MA 4
#define GPIO_12MA 5
#define GPIO_14MA 6
#define GPIO_16MA 7/* GPIO TLMM: Status */
#define GPIO_ENABLE 0
#define GPIO_DISABLE 1void gpio_config_uart_dm(uint8_t id);
void gpio_config_blsp_i2c(uint8_t, uint8_t);
#endif代码参数详细解析 函数 void gpio_tlmm_config(uint32_t gpio, uint8_t func, uint8_t dir, uint8_t pull, uint8_t drvstr, uint32_t enable) 参数 gpio gpio 引脚具体根据原理图 func 功能定义默认0表示普通io串口使用2spo使用1 dir 方向输入或者输出 pull 是否上拉下拉输出配置不拉输入根据电路配置上拉or下拉 drvstr 驱动能力从2mA到16mA一般定义8mA enable 使能情况输出配置GPIO_DISABLE输入配置GPIO_ENABLE 举个列子 gpio_tlmm_config(6, 0, GPIO_OUTPUT, GPIO_NO_PULL, GPIO_8MA, GPIO_DISABLE);//设置GPIO6为输出模式gpio_set_dir(6, 2);//设置输出高电平
//gpio_set_dir(6, 0);//设置输出低电平