跳转至

CI230系列芯片内部管脚映射表


1. GPIO映射管脚说明

​ 由于CI230系列芯片内部分为语音部分和wifi部分,对外的管脚分别为PA,PB, PC,PD,PE,PF;由于语音部分和wifi部分的sdK分为两部分,所以在对GPIO控制时,需要按照下面表格管脚映射来操作具体的内部管脚。硬件管脚描述请参考 ☞CI230系列芯片引脚描述

WIFI部分内部管脚 外部管脚 QFN56-管脚序号
GPIOA0 PE0 8
GPIOA1 PE1 9
GPIOA2 PE2 10
GPIOA3 PE3 11
GPIOA4 PE4 12
GPIOA6 PE6 13
GPIOA7 PE7 14
GPIOA9 PE9 15
GPIOB3 PF3 48
GPIOB4 PF4 49
GPIOB5 PF5 50
GPIOB6 PF6 51
GPIOB7 PF7 52
GPIOB8 PF8 53
GPIOB9 PF9 54
语音部分内部管脚 外部管脚 QFN56-管脚序号
u_iomux/u_GPIO3_0_pad_PAD PD0 34
u_iomux/u_GPIO0_2_pad_PAD PA2 35
u_iomux/u_GPIO0_3_pad_PAD PA3 36
u_iomux/u_GPIO0_4_pad_PAD PA4 37
u_iomux/u_GPIO0_5_pad_PAD PA5 38
u_iomux/u_GPIO0_6_pad_PAD PA6 39
u_iomux/u_GPIO0_7_pad_PAD PA7 40
u_iomux/u_GPIO1_0_pad_PAD PB0 41
u_iomux/u_GPIO1_1_pad_PAD PB1 42
u_iomux/u_GPIO1_2_pad_PAD PB2 43
u_iomux/u_GPIO1_3_pad_PAD PB3 44
u_iomux/u_GPIO1_4_pad_PAD PB4 45
u_iomux/u_GPIO1_5_pad_PAD PB5 46
u_iomux/u_GPIO1_6_pad_PAD PB6 47
u_iomux/u_GPIO2_3_pad_PAD PC3 AIN3 17
u_iomux/u_GPIO2_4_pad_PAD PC4 AIN2 18

2. GPIO操作实例

2.1 WIFI实例

WIFI的内部管脚GPIOB3对应的外部管脚为PF3,现将PF3管脚(GPIOB3)设置为输入模式

    hal_gpio_pin_afio_en(GPIOB_BASE, GPIO_PIN_3, HAL_ENABLE);   /*管脚使能,GPIOB_BASE已定义为硬件地址 0x4000C400 */
    gpio_init_t_def gpio_init;
    memset(&gpio_init, 0, sizeof(gpio_init)); /*清零结构体*/
    gpio_init.dir = GPIO_INPUT;               /*配置GPIO方向,输入*/
    gpio_init.pin = GPIO_PIN_3;               /*配置GPIO引脚号*/
    gpio_init.speed = GPIO_HIGH_SPEED;        /*设置GPIO速度*/
    hal_gpio_init(GPIOB_BASE, &gpio_init);    /*初始化GPIO*/

2.2 语音实例

使用CI230系列芯片模块去点亮RGB的蓝色灯光,根据模块原理图可使用PB2管脚(u_GPIO1_2_pad_PAD)去控制RGB蓝色灯光的亮灭(需外接跳线帽连接CI230系列芯片与RGB灯)

    scu_set_device_gate(PB,ENABLE);              /*开启外设时钟,PB已赋值为 u_GPIO1的硬件地址 0x40021000 */
    dpmu_set_io_reuse(PB2,FIRST_FUNCTION);       /*管脚复用 FIRST_FUNCTION:gpio function*/
    dpmu_set_io_direction(PB2, DPMU_IO_DIRECTION_OUTPUT);   /*配置管脚方向*/
    gpio_set_output_mode(PB, pin_2);             /*管脚配置为输出模式*/
    gpio_set_output_level_single(PB, pin_2, 1);  /*PB2输出高电平*/