CI130X SDK API手册  2.2.0
本手册用于描述CI130X SDK各个组件和驱动API
结构体 | 函数 | 变量
ci130x_gpio.c 文件参考

GPIO驱动文件 更多...

#include <stdlib.h>
#include "ci130x_gpio.h"
#include "ci_log.h"

结构体

struct  gpio_register_t
 GPIO控制器寄存器定义 更多...
 

函数

void gpio_set_output_mode (gpio_base_t base, gpio_pin_t pins)
 管脚配置为输出模式 更多...
 
void gpio_set_input_mode (gpio_base_t base, gpio_pin_t pins)
 管脚配置为输入模式 更多...
 
uint8_t gpio_get_direction_status (gpio_base_t base, gpio_pin_t pins)
 获取管脚输入输出状态 更多...
 
void gpio_irq_mask (gpio_base_t base, gpio_pin_t pins)
 屏蔽管脚中断 更多...
 
void gpio_irq_unmask (gpio_base_t base, gpio_pin_t pins)
 取消屏蔽管脚中断 更多...
 
void gpio_irq_trigger_config (gpio_base_t base, gpio_pin_t pins, gpio_trigger_t trigger)
 设置管脚的中断触发方式 更多...
 
void gpio_set_output_high_level (gpio_base_t base, gpio_pin_t pins)
 管脚输出高电平 更多...
 
void gpio_set_output_low_level (gpio_base_t base, gpio_pin_t pins)
 管脚输出低电平 更多...
 
uint8_t gpio_get_input_level (gpio_base_t base, gpio_pin_t pins)
 获取管脚输入电平 更多...
 
uint8_t gpio_get_direction_status_single (gpio_base_t base, gpio_pin_t pins)
 获取某一个管脚输入输出状态 更多...
 
uint8_t gpio_get_irq_raw_status_single (gpio_base_t base, gpio_pin_t pins)
 获取某个管脚中断屏蔽前状态 更多...
 
uint8_t gpio_get_irq_mask_status_single (gpio_base_t base, gpio_pin_t pins)
 获取某个管脚中断屏蔽后状态 更多...
 
void gpio_clear_irq_single (gpio_base_t base, gpio_pin_t pins)
 清除某个管脚的中断 更多...
 
void gpio_set_output_level_single (gpio_base_t base, gpio_pin_t pins, uint8_t level)
 某个管脚输出电平 更多...
 
uint8_t gpio_get_input_level_single (gpio_base_t base, gpio_pin_t pins)
 获取某个管脚输入电平 更多...
 
static void gpio_callback_add_node_in_list (gpio_irq_callback_list_t *gpio_irq_callback_list, gpio_irq_callback_list_t *gpio_irq_callback_node)
 gpio中断回调函数链表注册节点 更多...
 
static void call_irq_callback (gpio_irq_callback_list_t *gpio_irq_callback_list)
 搜索链表调用中断回调函数 更多...
 
void registe_gpio_callback (gpio_base_t base, gpio_irq_callback_list_t *gpio_irq_callback_node)
 注册中断回掉函数 更多...
 
void GPIO_IRQ_Default_proc (gpio_base_t base, int gpio_port_index)
 
void PA_IRQHandler (void)
 PA中断处理函数 更多...
 
void PB_IRQHandler (void)
 PB中断处理函数 更多...
 
void AON_PC_IRQHandler (void)
 PC中断处理函数 更多...
 

变量

static gpio_irq_callback_list_t g_gpio_callback_list_root [6]
 

详细描述

GPIO驱动文件

版本
0.1
日期
2019-05-07

结构体说明

◆ gpio_register_t

struct gpio_register_t

GPIO控制器寄存器定义

成员变量
volatile uint32_t gpio_afsel

0x420-0x424 模式控制寄存器

volatile uint32_t gpio_data[256]

0x000-0x3FC 数据寄存器

volatile uint32_t gpio_dir

0x400-0x404 输入输出控制寄存器

volatile uint32_t gpio_ibe

0x408-0x40C 中断源双边沿触发寄存器

volatile uint32_t gpio_ic

0x41C-0x420 中断清除寄存器

volatile uint32_t gpio_ie

0x410-0x414 中断屏蔽寄存器

volatile uint32_t gpio_iev

0x40C-0x410 中断事件寄存器

volatile uint32_t gpio_is

0x404-0x408 中断源(边沿/电平)寄存器

volatile uint32_t gpio_mis

0x418-0x41C 中断屏蔽状态寄存器

volatile uint32_t gpio_ris

0x414-0x418 中断原始状态寄存器

函数说明

◆ call_irq_callback()

static void call_irq_callback ( gpio_irq_callback_list_t gpio_irq_callback_list)
static

搜索链表调用中断回调函数

参数
gpio_irq_callback_list链表根节点

◆ gpio_callback_add_node_in_list()

static void gpio_callback_add_node_in_list ( gpio_irq_callback_list_t gpio_irq_callback_list,
gpio_irq_callback_list_t gpio_irq_callback_node 
)
static

gpio中断回调函数链表注册节点

参数
gpio_irq_callback_list链表根节点
gpio_irq_callback_node注册节点

◆ GPIO_IRQ_Default_proc()

void GPIO_IRQ_Default_proc ( gpio_base_t  base,
int  gpio_port_index 
)

变量说明

◆ g_gpio_callback_list_root

gpio_irq_callback_list_t g_gpio_callback_list_root[6]
static
初始值:
=
{
}
#define NULL
Definition: SEGGER_RTT.c:160