🏠 首页📦 芯片包← 返回芯片库
国内芯片

HC32L130K8TA

小华半导体 XHSC
16-bit ARM Cortex-M0+
主频
48 MHz
Flash
64 KB
SRAM
8 KB
I/O 口
56
封装
LQFP-64 / QFN-48
工作电压
1.8-3.6V
HC32L130K8TA 1 1 PA0 2 PA1 3 PA2 4 PA3 5 PA4 6 PA5 7 PA6 8 PA7 9 PB0 10 PB1 11 PB2 12 PB3 13 PB4 14 PB5 15 PB6 16 PB7 17 PC0 18 PC1 19 PC2 20 PC3 21 PC4 22 PC5 23 PC6 24 PC7 25 PD0 26 PD1 27 PD2 28 PD3 29 PD4 30 PD5 31 PD6 32 PD7 33 PE0 34 PE1 35 PE2 36 PE3 37 PE4 38 PE5 39 PE6 40 PE7 41 PF0 42 PF1 43 PF2 44 PF3 45 PF4 46 PF5 47 PF6 48 PF7
👆 点击上方芯片任意引脚查看复用功能
👆 点击上方芯片任意引脚查看复用功能
👆 点击上方芯片任意引脚查看复用功能

片上外设

UART×3SPI×2I2C×2Timer×6PWM×8RTCLCD DriverTouchKeyOPA

芯片特性

示例代码 · GPIO 闪烁

HC32L130K8TA · main.c
// HC32L130 - DDL库 GPIO 闪烁
#include "hc32l13x.h"
int main(void) {
    Sysctrl_SetPeripheralGate(SysctrlPeripheralGpio, TRUE);
    Gpio_InitIO(0, 0, GpioDirOut);  // P00 输出
    while(1) {
        Gpio_SetIO(0, 0);
        delay1ms(500);
        Gpio_ClrIO(0, 0);
        delay1ms(500);
    }
}

📌 引脚分布(20引脚封装)

引脚号 引脚名 主要复用功能
1PA0GPIO / ADC_IN0 / TIM2_CH1 / UART2_TX
2PA1GPIO / ADC_IN1 / TIM2_CH2 / UART2_RX
3PA2GPIO / ADC_IN2 / TIM2_CH3 / UART1_TX
4PA3GPIO / ADC_IN3 / TIM2_CH4 / UART1_RX
5PA4GPIO / ADC_IN4 / SPI1_NSS / TIM3_CH1
6PA5GPIO / ADC_IN5 / SPI1_SCK / TIM3_CH2
7PA6GPIO / ADC_IN6 / SPI1_MISO / TIM3_CH3
8PA7GPIO / ADC_IN7 / SPI1_MOSI / TIM3_CH4
9PB0GPIO / ADC_IN8 / I2C1_SCL / TIM1_CH2N
10PB1GPIO / ADC_IN9 / I2C1_SDA / TIM1_CH3N
11PB2GPIO / BOOT0 / LVD_IN
12PB3GPIO / SWO / TIM1_CH1 / SPI2_SCK
13PB4GPIO / SWDIO / TIM1_CH2 / SPI2_MISO
14PB5GPIO / SWCLK / TIM1_CH3 / SPI2_MOSI
15PB6GPIO / I2C1_SCL / UART1_TX / TIM1_CH0
16PB7GPIO / I2C1_SDA / UART1_RX / TIM1_CH1
17PC0GPIO / OSC_IN / LSE_IN
18PC1GPIO / OSC_OUT / LSE_OUT
19PC2GPIO / VCAP
20VDD电源 1.8~5.5V
* 引脚复用功能以官方数据手册为准,本表为20引脚常见封装示例

💻 DDL 库函数示例

GPIO 初始化 + 翻转
// 小华 DDL 库 - GPIO 配置
#include "hc32f005.h"

void GPIO_Init(void) {
    stc_gpio_cfg_t stcGpioCfg;
    // 开启GPIO时钟
    Sysctrl_SetPeripheralGate(SysctrlPeripheralGpio, TRUE);
    // PA0 推挽输出
    stcGpioCfg.enDir = GpioDirOut;
    stcGpioCfg.enDrv = GpioDrvH;
    Gpio_Init(GpioPortA, GpioPin0, &stcGpioCfg);
}

int main(void) {
    GPIO_Init();
    while(1) {
        Gpio_SetIO(GpioPortA, GpioPin0);  // 置高
        delay1ms(500);
        Gpio_ClrIO(GpioPortA, GpioPin0);  // 置低
        delay1ms(500);
    }
}
UART 发送 + 接收中断
// 小华 DDL 库 - UART1 配置
#include "hc32f005.h"

void UART1_Init(uint32_t baud) {
    stc_uart_cfg_t stcCfg;
    Sysctrl_SetPeripheralGate(SysctrlPeripheralUart1, TRUE);
    // PA2=TX, PA3=RX
    Gpio_SetAfMode(GpioPortA, GpioPin2, GpioAf1);
    Gpio_SetAfMode(GpioPortA, GpioPin3, GpioAf1);
    stcCfg.enRunMode = UartMskMode1;
    stcCfg.stcBaud.u32Baud = baud;
    stcCfg.stcBaud.enClkDiv = UartMskBaudDivm128;
    Uart_Init(UART1, &stcCfg);
    Uart_EnableIrq(UART1, UartRxIrq);
    EnableNvic(UART1_IRQn, IrqLevel3, TRUE);
}

void UART1_SendChar(char c) {
    Uart_SendData(UART1, c);
    while(Uart_GetStatus(UART1, UartTxEmpty) == FALSE);
}
ADC 采集 + 软件延时
// 小华 DDL 库 - ADC 单次转换
#include "hc32f005.h"

uint16_t ADC_Read(uint8_t ch) {
    stc_adc_cfg_t stcAdcCfg;
    stc_adc_norm_cfg_t stcNormCfg;
    Sysctrl_SetPeripheralGate(SysctrlPeripheralAdc, TRUE);
    // PA0 模拟输入
    Gpio_SetAnalogMode(GpioPortA, GpioPin0);
    DDL_ZERO_STRUCT(stcAdcCfg);
    stcAdcCfg.enAdcMode = AdcSglMode;
    Adc_Init(&stcAdcCfg);
    DDL_ZERO_STRUCT(stcNormCfg);
    stcNormCfg.enAdcInCh = ch;
    Adc_ConfigNormMode(&stcNormCfg);
    Adc_Start();
    while(Adc_GetEocFlag() == FALSE);
    return Adc_GetNormResultData();
}

🗺️ 存储映射 (Memory Map)

区域 起始地址 结束地址 说明
Flash 0x08000000 — 主闪存
SRAM 0x20000000 — 静态RAM
Peripherals 0x40000000 0x5FFFFFFF 外设寄存器
Core 0xE0000000 0xE00FFFFF 内核外设(NVIC/SysTick)

📝 官方外设示例代码

GPIO 外设示例
// GPIO 初始化 + 翻转示例
// 请参考官方数据手册和库函数文档

官方资源

相关芯片推荐(国内)

← 上一款:CH552G 10 / 14 下一款:HC32F005C6PA →