1.1. CS32A010芯片框图
CS32A010是一颗高性能SOC芯片,芯片内置24位高精度SD-ADC,采用32位ARM Cortex-M0内核、内置12位DAC、低温漂基准源、电源管理、低失调运放、l6bit 定时器、LED驱动、恒流源和恒压源输出等功能模块。另外CS32A010内置64KBytes Flash和 8KBytes SRAM,最高工作频率24MHz,芯片还提供标准的通信接口(I2C、SPI和UART),图1为芯片各模块框图。
CS32A010系列微控制器的工作温度范围为-40℃~105℃,工作电压范围2.0V~5.5V。芯片提供一系列电源工作模式,以满足不同的低功耗应用。
CS32A010系列微控制器适用于多种应用场景,例如气体传感器、压力变送器、TC/热电偶测温、RTD测温等。
图1 CS32A010芯片框图
1.2. CS32A010-Start_ V1.0实物图
标号1红色框:可共用为SWD仿真调试接口,烧录接口,3.3V供电接口。
标号2黄色框:可共用5V供电接口,内部集成USB转串口接口,用作USB转串口功能时需要选择下面黄色框用跳线帽连接,右边是USB转串口选择,左边是外部串口选择。
标号3蓝色框:跳线帽接左边3.3V供电,跳线帽接右边5V供电,烧录时接3.3V供电。
标号4绿色框:左边PB0、PB1 IO口灯,接跳线帽可选择连通,右边串口指示灯。
标号5红色框:左边为32.768KHZ外部晶振,右边是24MHZ外部晶振通过焊接0欧连接。
白色框:白色框为外设接口,IO口、信号采集口、电源接口等接口。
图2 CS32A010-Start_ V1.0实物图
1.3. CS32A010-Start_ V1.0原理图
图3 CS32A010-Start_ V1.0原理图
图4 CS32A010-Start_ V1.0原理图
1.4. CS32A010-Start_ V1.2 PCB图
图5 CS32A010-Start_ V1.2 PCB图
2.1. SDK开发包安装说明
客户使用CS32A010开发包例程进行芯片性能评估,拿到开发包第一步进行解压,先在Keil里面安装芯片包,然后可以看到如图5所示的一个 .Pack后缀的芯片包,双击开发包会出现芯片包安装界面,修改芯片包的后缀名为 .Zip,修改后缀名后可以看到图6所示文件夹Board,点击进去再点击Examples文件夹即可以打开CS32A010 SDK例程,各模块例程如图8所示,后续再确认Pack版本,选择对应的仿真型号即可使用SDK进行芯片性能评估,Pack包安装和例程编译下载设置如下:
图6 CS32A010 SDK
图8 CS32A010 SDK
安装完PCCK后,要确认KEIL工程为最新的PACK版本。
图10 Pack包版本选择
图11 Device中选择对应型号
2.2. SDK例程使用常遇问题
客户使用一个新的CS32A010开发包经常会出现CMSIS(微控制软件标准)库出现图12所示的情况,出现这种情况会出现编译不了例程,此时需要点击图10的图标1进行CMSIS库安装,根据图13的步骤1-5依次选择SDK里面的例程库的选择,选择电脑已经安装的版本点击确定即可,灵活选择电脑中已经安装的库。
图13 CS32A010 例程
图14 CS32A010 例程
3.1. ADC性能评估
客户在使用CS32A010进行评估板进行信号采集时会看到ADC评估例程里面分别有三个滤波器函数adc_data_convert_low_latency、adc_data_convert_sinc2、adc_data_convert_sinc3,这三个函数是选择不同滤波器时调用的函数,因为在ADC采集的时候硬件截位存在一定的误差,需要通过软件进行校正,图14为软件校正系数表。软件校正系数是根据DATA采样速度配置和哪款滤波器的选择来确定的,图15函数方框里为软件校正系数,不同的采样速度与滤波器选择配置会有不同的软件校正系数,具体值通过下图查表修改。
图15 ADC软件校正系数表
客户使用评估CS32A010 ADC性能时先评估芯片的内短通道,看芯片在内短模式时ADC波动大小,如图17所示搭建好硬件环境,配置芯片内短通道,内短模式为通道12,如图1,8所示,下载ADC DEMO程序,打开串口工具软件,打开串口,可以看到ADC内短模式在1uA左右跳动,符合24位高精度ADC的精度要求。
图17 ADC通道选择
图18 ADC硬件搭建图
图19 ADC内短采样数据
评估完CS32A010 ADC内短通道的性能后,再评估外部输入通道的ADC信号采集性能,如图19所示配置ADC通道为外部通道0和1,配置完后采用电阻分压的方式搭建硬件环境给外部通道0和1电压信号,采集的电压信号通过串口工具打印出来采集数据如图21所示,可以看到数据波动最大为50uA左右,由于采用的是VDD供电,VDD供电本来就不是很稳定,最大50uA左右波动比较正常,如果采用基准源供电,测量的ADC数据波动会在uA级别。
图20 ADC通道选择
图21 ADC硬件搭建图
图22 ADC通道0和1采样数据
3.2. DAC性能评估
打开CS32A010 SDK包中DAC例程,通过图23所示软件配置能使DAC,配置DAC寄存器数值即可进行DAC输出,从数据手册引脚描述中可查阅DAC输出引脚如图22所示DAC直接输出引脚为PA9,PA9不需要进行任何IO口配置即可输出电压,在例程中改变While(1)循环里面的DAC寄存器配置值可在PA9得到相应的电压输出,配置DAC寄存器值为0X7FF如图24,左可输出1.236V电压,配置DAC寄存器值为0X1FF如图20,右可输出0.309V电压且输出电压通过万用表测试电压波动在1MV左右,12bitDAC输出精度为1mv左右精度属于合理范围。
图23 引脚描述图
图24 DAC输出例程
图25 DAC输出电压
3.3. OPA模拟组合性能评估
本试验评估智能模拟组合使用ADC例程与DAC例程结合,把OPA输出电压输入ADC通道中通过串口打印出来。如图27所示选择DAC作为运放输入的正端,PA5与OPA输出端相连(PA4)作为运放输入的负端,此时OPA为电压跟随的作用,输出电压即DAC电压,不会对DAC输出的电压做放大或加偏置处理,把OPA运放输出的电压输入到ADC输入通道0,1里面,输入通道1接PA4,输入通道0接地,图26为SAC初始化软件配置,配置PA5为OPA负端,配置DAC为OPA运放输入正端,配置DAC寄存器值0X7FF,此时可以通过串口打印出如图28所示的ADC数据1.471V即为电压跟随的DAC输出电压,根据串口打印数据保持在1mv左右的精度,由于是12Bit DAC作为运放输入,SAC精度在合理范围。
图26 主函数、ADC中断函数
图27 DAC初始化
图28 OPA模拟组合框图
图29 OPA模拟组合硬件连接图
图30 OPA模拟组合输出电压
更多方案资料,可联系芯海科技:https://china.hqew.com/shop_chipsea