一、培训概述

1.1 培训目标

学完本培训后,您将掌握以下核心能力:

  1. 芯海8位/32位MCU、高精度ADC/SOC、低功耗蓝牙、PD快充IC的选型方法;
  2. 8位/32位MCU开发工具(仿真器、开发板、IDE)的搭建与使用;
  3. 高精度ADC、压力触控、低功耗蓝牙等核心外设的开发调试;
  4. 程序烧录工具(CSWrite)的操作与常见问题排查;
  5. 基于实战例程(ADC采集、LED控制、串口打印)掌握完整开发流程。

1.2 适用范围

  • 芯海产品系列:8位OTP/Flash MCU、32位M0/M3 MCU、高精度ADC/SOC、PD快充IC、低功耗蓝牙IC;
  • 开发场景:工业控制、消费电子、智能传感、快充设备等;
  • 前置知识:基础C语言、MCU外设原理(ADC、UART、SPI、BLE)、KEIL/IDE使用基础。

二、芯海产品选型指南

2.1 8位MCU选型

2.1.1 8位OTP MCU(一次性可编程)
型号 ROM类型 ROM容量 SRAM(字节) 关键外设 工作温度 供电电压(V) 封装
CSU8RP2113-SO OTP 1K*14bit 32 12位ADC(1路)、UART(1路)、SPI(1路) -40~85℃ 2.2~5.5 SOP8
CSU32P10-MSOP10 OTP 2K*14bit 64 12位ADC(1路)、UART(2路)、SPI(1路) -40~85℃ 2.4~5.5 MSOP10
CSU8RP3215-TS OTP 2K*16bit 128 12位ADC(3路)、UART(1路)、SPI(1路) -40~85℃ 2.2~5.5 TSSOP16
CSU8RP3216-QN OTP 2K*16bit 128 12位ADC(3路)、UART(1路)、SPI(1路) -40~85℃ 2.2~5.5 QFN20(3*3)
2.1.2 8位Flash MCU(可重复编程)
型号 ROM类型 ROM容量 SRAM(字节) EEPROM(字节) 关键外设 工作温度 供电电压(V) 封装
CSU32M10-MSOP10 MTP 2K*16bit 104 128 12位ADC(1路)、UART(2路)、SPI(1路) -40~85℃ 2.35~5.5 MSOP10
CSU34F20-QFN20 Flash 4K*16bit 488 - 12位ADC(1路)、UART(3路)、SPI(1路) -40~85℃ 1.8~5.5 QFN20(3*3)
CSU38F20-QFN24 Flash 8K*16bit 488 - 12位ADC(1路)、UART(3路)、SPI(1路) -40~85℃ 1.8~5.5 QFN24(4*4)

2.2 32位MCU选型(ARM Cortex-M系列)

2.2.1 32位M0系列
子系列 型号 核心 主频(MHz) Flash(KB) SRAM(KB) 关键外设 工作温度 供电电压(V) 封装
RA系列 CS32F030C8T6-RA M0 48 64 8 12位ADC(1路)、CAN(2路)、UART(5路) -40~85℃ 2.0~5.5 LQFP48(7*7)
低功耗系列 CS32L010F8U6 M0 24 64 4 12位ADC(1路)、UART(1路)、SPI(1路) -40~85℃ 2.5~5.5 QFN20(3*3)
高精度系列 CS32A010K8V6T M0 24 64 8 24位ADC(1路)、OPA(2路)、LCD驱动 -40~85℃ 2.0~5.5 QFN32
2.2.2 32位M3系列(车规级)
型号 核心 主频(MHz) Flash(KB) SRAM(KB) 关键外设 工作温度 供电电压(V) 封装 车规认证
CS32F116RBT8Q M3 72 128 20 12位ADC(2路)、CAN(2路)、USB(1路) -40~125℃ 2.0~3.6 LQFP64(10*10) AEC-Q100

2.3 特殊功能产品选型

2.3.1 高精度ADC/SOC(8位OTP)
型号 ROM类型 ROM(KB) SRAM(字节) ADC参数 特殊功能 工作温度 供电电压(V) 封装
CSU8RP1186 OTP 4K*16bit 256 4路14位、1路24位 振荡器(IRC/XT) -40~85℃ 2.4~3.6 Die38
CSU18M88-LQFP48 MTP 8K*16bit 896 8路10位、4路18位 BIM(电池监测) -40~85℃ 2.4~3.6 LQFP48
2.3.2 压力触控SOC
型号 力通道 触控通道 Flash(KB) SRAM(KB) 外设 工作温度 供电电压(V) 封装
CSA37F72-WLCSP24 6 12 60 16 I2C(1路)、UART(1路) -40~85℃ 2.4~5.5 WLCSP24
CSA37F70-WLCSP56 18 24 60 24 I2C(1路)、UART(1路) -40~85℃ 2.4~5.5 WLCSP56
2.3.3 低功耗蓝牙IC
型号 核心 主频(MHz) Flash(KB) SRAM(KB) BLE性能 安全加密 工作温度 供电电压(V) 封装
CST92P23B-SOP8 - 18.5~19.5 - - TX:-16~0dBm,RX:-88dBm - -40~85℃ 1.8~3.6 SOP8
CST92F30-QFN32 M0 48 512 138 TX:-20~10dBm,RX:-97dBm,AES-128 支持 -40~105℃ 1.8~3.6 QFN32(4*4)

三、8位MCU开发工具与环境搭建

3.1 核心工具清单

工具类型 8位OTP MCU 8位Flash MCU
仿真工具 CSU8ICE-Lite CS-LINK
开发板 CSU8RT3215/3126 CSU38F20-QFN20最小系统板
开发环境 CSU-IDE(芯海官网下载) CSU-IDE
烧录软件 CSWrite V3.2.7 CSWrite V3.2.7

3.2 开发环境搭建(CSU-IDE)

  1. 下载与安装:访问芯海官网→“开发工具”→下载“CSU-IDE”(集成C编译器、汇编器、调试器);
  2. 环境配置
    • 打开IDE,新建项目→选择对应8位MCU型号(如CSU8RP3215);
    • 集成示例代码:IDE内置各芯片例程(ADC、UART、PWM等),可直接导入;
  3. 编译与调试
    • 连接仿真工具(如CSU8ICE-Lite)与开发板;
    • 点击“编译”按钮生成HEX文件,“调试”按钮启动在线调试(支持断点、变量观察)。

3.3 烧录工具使用(CSWrite V3.2.7)

  1. 软件功能:支持8位/32位芯片烧录,修复浅烧问题(CS32L010/015)、代码选项区修改问题;
  2. 烧录步骤
    • 打开CSWrite→选择“本地程序”→加载HEX文件;
    • 选择芯片型号(如CSU8RP3215);
    • 连接烧录器与目标板,点击“烧录”→等待“烧录成功”提示;
  3. 注意事项:若软件与固件版本不一致,需在“更新”中升级固件(自动重启生效)。

四、32位MCU开发工具与环境搭建

4.1 核心工具清单

工具类型 32位M0/M3 MCU
开发环境 KEIL5(需安装芯海PACK包)
仿真工具 J-LINK、ST-LINK
烧录软件 CSWrite V3.2.7
开发板 CS32F030C8T6-RA评估板

4.2 PACK包安装步骤

  1. 下载PACK包:芯海官网→“开发工具”→下载对应系列PACK包(如CS32F03x_DFP.2.0.5);
  2. 解压PACK包
    • 将后缀“.pack”改为“.zip”,解压至KEIL安装目录(如D:\keil\Chipsea);
  3. 解锁文件:右键解压后的文件夹→“属性”→取消“只读”→应用;
  4. KEIL配置
    • 打开KEIL5→“Project”→“Options for Target”→“Device”→选择“Chipsea”→找到对应型号(如CS32F030C8T6-RA);
    • 确认“Debug”选项:选择“J-LINK/J-TRACE Cortex”→“Settings”→端口设为“SW”,频率5MHz。

4.3 仿真调试配置

  1. 连接工具:J-LINK通过SW接口连接开发板(VDD、GND、SWDIO、SWCLK);
  2. 调试设置
    • KEIL中点击“Debug”→“Start/Stop Debug Session”;
    • 若提示“Device unknown”,在“J-Link Device Selection”中选择对应核心(如Cortex-M0);
  3. 下载程序
    • 点击“Load”→选择生成的HEX文件→下载完成后点击“Run”启动程序。

五、核心外设开发实战

5.1 高精度ADC开发(以CSU8RP1186为例)

5.1.1 硬件配置
  • ADC引脚:PA0(模拟输入)→ 连接传感器(如温度、压力传感器);
  • 供电:确保ADC参考电压(VREF)稳定(2.4~3.6V)。
5.1.2 软件实现(CSU-IDE)
void adc_config(void) {
    // 1. 使能ADC和GPIO时钟
    __RCU_APB2_CLK_ENABLE(RCU_APB2_PERI_ADC);
    __RCU_AHB_CLK_ENABLE(RCU_AHB_PERI_GPIOA);
    
    // 2. 配置GPIO为模拟输入
    gpio_mode_set(GPIOA, GPIO_PIN_0, GPIO_MODE_ANALOG);
    
    // 3. ADC初始化
    adc_config_t adc_cfg;
    adc_config_struct_init(&adc_cfg);
    adc_cfg.adc_resolution = ADC_CONV_RES_12BITS;  // 12位分辨率
    adc_cfg.continuous_mode = ENABLE;             // 连续转换
    adc_cfg.data_align = ADC_DATA_ALIGN_RIGHT;    // 右对齐
    adc_init(ADC1, &adc_cfg);
    
    // 4. 配置ADC通道与采样时间
    adc_channel_config(ADC1, ADC_CONV_CHANNEL_0, ADC_SAMPLE_TIMES_239_5);  // 239.5周期采样
    
    // 5. ADC校准
    adc_calibration_value_get(ADC1);
    
    // 6. 启动ADC
    __ADC_ENABLE(ADC1);
    while(!__ADC_FLAG_STATUS_GET(ADC1, EOC));  // 等待校准完成
    adc_conversion_start(ADC1);  // 启动转换
}

int main(void) {
    uint32_t adc_val, real_val;
    adc_config();
    usart_init();  // 初始化串口(用于打印)
    
    while(1) {
        // 读取ADC值
        while(ADC_FLAG_STATUS_GET(ADC1, EOC) == RESET);  // 等待转换完成
        adc_val = __ADC_CONV_VALUE_GET(ADC1);
        
        // 计算实际电压(3.3V参考)
        real_val = (adc_val * 3300) / 0xFFF;  // 12位分辨率:0xFFF=4095
        printf("ADC_CH0 = %d mV\r\n", real_val);  // 串口打印结果
        
        delay_ms(1000);  // 1秒刷新一次
    }
}
5.1.2 关键注意事项
  • 采样时间:采样时间越长,精度越高,但转换速率越慢(需根据场景权衡);
  • 校准:每次上电后需执行ADC校准,确保精度;
  • 缺点:ADC转换速率较慢(最大1Msps),不适合高速采集场景。

5.2 低功耗蓝牙开发(以CST92F30为例)

5.2.1 核心配置
  • BLE协议:支持Bluetooth 5.0,速率1Mbps/2Mbps;
  • 功耗优化:进入休眠模式时关闭无用外设(ADC、UART),仅保留RTC。
5.2.2 软件要点
  1. BLE初始化:调用SDK中的ble_init()函数,配置设备名、广播间隔;
  2. 数据传输
    • 广播数据:ble_adv_set_data("CS_BLE_DEV");
    • 接收数据:注册回调函数ble_rx_cb = ble_data_handler;
  3. 安全加密:启用AES-128加密→ble_security_set(AES_ENABLE);

5.3 PD快充IC开发(以CSU3AF10为例)

  • 硬件:VBUS检测、CC引脚(充电协议协商)、DM/DP(USB通信);
  • 软件:加载PD协议栈→配置充电参数(电压5V/9V/12V,电流2A)→ 检测负载状态。

六、烧录器使用全流程(CSWrite V3.2.7)

6.1 烧录前准备

  1. 硬件连接:烧录器通过SPI接口连接目标板(SCK、SDIO、CS、GND、VDD);
  2. 软件启动:打开CSWrite→“登录”→选择“本地程序”。

6.2 烧录步骤

  1. 选择芯片型号
    • “芯片型号”→搜索对应型号(如CS32F03x_ra 64K);
  2. 加载程序
    • “程序文件”→“打开”→选择HEX文件→提示“分析程序数据成功”;
  3. 烧录操作
    • 点击“烧录”→等待状态栏显示“烧录成功”;
  4. 校验程序
    • 点击“读芯片”→对比读取的数据与原程序→一致则校验通过。

6.3 常见问题排查

问题现象 原因 解决方案
烧录器无法识别芯片 硬件连接错误/供电不稳 检查VDD/GND连接,更换数据线
浅烧问题(CS32L010) 烧录电压不足 升级CSWrite至V3.2.7,启用“强烧模式”
程序运行异常 芯片型号选错 重新选择正确型号(如RA系列vs非RA)

七、培训总结

  1. 选型要点:根据场景选择存储类型(OTP/Flash)、温度范围(-40~150℃)、外设需求(CAN FD/BLE);
  2. 工具适配:8位用CSU-IDE+CS-LINK,32位用KEIL5+J-LINK;
  3. 开发关键:ADC需校准、BLE需优化功耗、PD需协议栈适配;
  4. 调试技巧:变量观察窗查看关键参数(如ADC值、BLE接收数据),烧录后必校验。

通过本培训,可掌握芯海MCU/SOC从选型到量产的全流程开发能力,如需进一步深入,可参考芯海官网的SDK文档与示例代码。

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐