澎湃微PT32x033系列 | 血糖仪专题技术文章连载_03

2022-06-27
    概 述  
   
PT32L033作为血糖和尿酸的专用计量芯片,在信号链的处理性能方面要求最为关键。033集成了两路高性能的OPA用于小信号放大,而数模接口方面集成了一路12位的ADC以及一路12位的DAC。血糖仪的试纸有两个电极,其中一个电极使用数模转换器(DAC)叠加上精准的偏置电压后,血液在试纸条上进行化学反应会产生的微弱电流,该电流与被测血液的葡萄糖浓度成正比例关系,电流通常由跨阻放大电路转换成电压后使用模数转换器(ADC)进行测量并且通过一定的算法推算出血糖浓度。PT32L033的OPA、DAC和ADC通过内联通道互相配合,保障了血糖仪方案可以有极简的外围电路。本文针对这三个模拟外设的应用配置指南进行阐述,特别是这三个外设在血糖仪应用场景下联合使用的软硬件处理方法。

 

 

PART ONE
12位DAC

 

1.1.1 DAC模块概

 

PT32L033集成了一路12位的DAC,采样率最高可支持到200KSPS,可以输出0V~ Vref (DAC的参考电压)到OPA的同相输入端,DAC参考电压Vref也可作为ADC的参考源,具体内部参考基准源的拓扑结构如下图1所示:

 

1.内部参考基准源拓扑

 

1.1.2 DAC寄存器概述

 

12位DAC的操作由控制寄存器DAC_CR、数据寄存器DAC_DATA以及内部基准使能控制寄存器IREF_CR决定,其中DAC_CR0主要配置DAC功能的启动/禁止以及参考电压源选择,DAC_DATA用于DAC的电压输出控制,IREF_CR用于开启内部参考基准电源,而DAC的转换工作状态由状态寄存器DAC_STAU的EOC状态位决定,寄存器的描述如下所示:

 

———————————     DAC_CR(地址:0x4001_4000)     ———————————

 

———————————     DAC_DATA(地址:0x4001_4004)     ———————————

 

———————————     DAC_STAU(地址:0x4001_400C)     ———————————

 

———————————     IREF_CR(地址:0x4001_8030)     ———————————

 

 

PART TWO
12位ADC

 

2.1.1 ADC模块概述

 

PT32L033集成了一个13通道的12位ADC,可支持测量9个外部信号和5个内部信号,转换率可支持到500KSPS。其中外部转换通道ADC_CH[8:7]可直接转换OPAn_OUT出来的模拟信号。而内部信号可支持转换内部高精度的1.0V的BG电压,在参考基准源选用VDDA的时候并且使用电池供电的场景下可以用来反推电池电压,此应用指南在后续的文章中也会专门详述。

 

2.ADC控制框图

 

2.1.2 ADC寄存器概述

 

PT32L033的12位ADC功能操作由四个寄存器配置决定,分别为控制寄存器ADC_CR,状态寄存器ADC_STAU,只读数据寄存器ADC_DATA以及采样时间寄存器ADC_SAMPLE。寄存器详细描述如下所示:

 

———————————     ADC_CR(地址:0x4001_2400)     ———————————

 

———————————     ADC_STAU(地址:0x4001_2404)     ———————————

 

———————————     ADC_DATA(地址:0x4001_2408)     ———————————

 

———————————     ADC_SAMPLE(地址:0x4001_240C)     ———————————

 

 

PART THREE
12位OPA

 

3.1.1 OPA模块概述

 

PT32L033集成了功能和性能完全对称的两路OPA(OPA0和OPA1)用作血糖/尿酸测量的应用,其中12位DAC可输出0~Vvref 的电压到OPA的正相输入端口上用于产生血糖/尿酸测试过程中所必须的精准激励电压,同时OPA的输出电压在MCU内部可以直接输入到ADC进行测量。

 

3.OPA功能框图

 

3.1.2 OPA寄存器概述

 

用户根据不同放大系数的要求,通过配置OPA0的增益选择开关SW[2:0]即可将OPA0_OUT引脚直接互连到OPA0Sn引脚,并在OPA0Sn外部连接一个根据所需放大倍数确定好的跨阻实现不同放大增益的场景。

 

PT32L033的两个OPA均可分别工作在两种模式下,校准模式和正常工作模式。两种模式配合起来使用最终实现精准测试的目的,校准模式用于实现OPA输入补偿电压的调整使其offset电压最终满足精度在±1.5mV以内,正常工作模式实现血糖/尿酸测试过程中的小信号放大功能。

 

OPA的操作由控制寄存器OPAn_CR0和OPAn_CR1决定,其中OPAn_CR0主要配置OPA的正相输入选择源和OPA的高速模式,而OPAn_CR1主要配置OPA的功能模式以及调校参数,寄存器详细描述如下所示:

 

———————————     OPAn_CR0(地址:OPA0: 0x4000_0800; OPA1: 0x4000_0C00)     ———————————

 

———————————     OPAn_CR1(地址:OPA0: 0x4000_0804; OPA1: 0x4000_0C04)     ———————————

 

3.1.3 OPA精准校准算法

 

PT32L033的OPA工作在调校模式下,用户可对OPA的输入失调电压进行校准,使用下文给出的调校策略后可保证OPA的输入失调电压均能控制在±1.5mv以内,进而保障血糖/尿酸测试的精准度以及两路OPA的一致性,校准配置流程如下:

 注  本文仅提供校准流程,校准软件工程可从澎湃微官方渠道获取

 

一、开环校准

 

▪  步骤一:

配置OPAn_CR1寄存器的OPM=0,CALE=1并且ARS=1,此时OPA工作在输入失调电压校准模式下,同时校准参考电压选择从OPA的正相输入端灌入;

▪  步骤二:

配置OPAn_CR0寄存器的EN=1,REF[1:0]=11并且HSM=1,使能OPA模块处于高速模式,同时选择12位的DAC作为OPA的正相输入源提供校准参考电压。

 注  输入参考电压校准模式下的输入直流工作电压应与正常模式下的输入直流工作电压需要保持一致。

▪  步骤三:

配置DAC输出参考电压,以内部2V参考源作为基准输出300mV为例, DAC_DATA=614,具体DAC及其配置流程可参考下文的编程示例以及上文对应的DAC寄存器描述;

▪  步骤四:

配置OPAn_CR1寄存器的OFFSET[4:0]写入校准值,同时写入校准生效秘钥CALKEY [15:0]。比如,OFFSET[4:0]=0x12,CALKEY [15:0]=0xACDE;为了提高校准效率,OFFSET[4:0]写入的范围约束在0x0C-0x12之间,校准过程从0x12往0x0C进行递减遍历搜索;

▪  步骤五:

查询OPAn_CR0寄存器的COUT是否发生跳变(0跳变为1),记录发生跳变时候的优选校准值,假设跳变对应的优选值为:OFFSET_OPTIMAL0[4:0]=0x10,同时确定另一个优选值为OFFSET_OPTIMAL1[4:0]= OFFSET_OPTIMAL0[4:0]+1;

 


4.校准模式下开环校准功能框图

 

二、闭环校准

▪  步骤一:

配置OPAn_CR1寄存器的OPM=1,CALE=0,此时OPA工作在正常运算放大器工作模式下;

▪  步骤二:

配置OPAn_CR0寄存器的EN=1,REF[1:0]=11并且HSM=1,使能OPA模块出于高速模式,同时选择12位的DAC作为OPA的正相输入源提供校准参考电压。

 注  输入参考电压校准模式下的输入直流工作电压应与正常模式下的输入直流工作电压相同。

▪  步骤三:

配置DAC输出参考电压,以内部2V参考源作为基准输出300mV为例,DAC_DATA=614,具体DAC及其配置流程参考上文DAC章节以及对应的寄存器配置;

▪  步骤四:

分别配置OPAn_CR1寄存器的OFFSET[4:0]写入开环校准得到的第一个优选校准值,同时写入校准生效秘钥CALKEY [15:0]。OFFSET_OPTIMAL0[4:0]=0x10,CALKEY [15:0]=0xACDE;

▪  步骤五:

配置ADC转换对应的OPAn_OUT通道转换得到第一个数字量ADC_CODE0,为了更好的满足精度要求,这边ADC转换过程做均值滤波(转换十组数据,去掉最大值最小值后求取平均值),具体ADC的配置可参考下文的编程示例以及上文ADC的寄存器描述。

▪  步骤六:

重复步骤四,OFFSET[4:0]写入开环校准得到的第二个优选校准值,同时写入校准生效秘钥CALKEY [15:0];

▪  步骤七:

重复步骤五,得到第二个数字量ADC_CODE0;

▪  步骤八:

确定ADC_CODE0和ADC_CODE0与DAC_DATA直接的绝对差值△code0 和 △code1,绝对值差最小对应的优选值即为最终校准结果;

6.用户模式下闭合功能框图

 

 

 

PART FOUR
编程示例

 

4.1.1 示例概述

 

本示例以血糖仪Demo为载体,配置12位DAC作为OPA的正相输入。血糖仪在没有插入试纸的情况下,OPA的反相输入通过跨阻连接到OPA的输出管脚,此时OPA作为电压跟随器,OPA_OUT的输出电压完全跟随DAC的输出,同时OPA_OUT的输出电压给到ADC转换得出对应跟随电压的数字量。

 

 

7.血糖仪Demo对应OPA部分原理图

 

8.OPA跟随器框图

 

4.1.2 外设初始化

 

ADC初始化关键配置两个参数,基准参考源以及转换率,而转换率由两个配置参数决定,分别是ADC的工作时钟以及采样时间,对应寄存器位的详细描述参考上文ADC章节。

 

 

DAC的初始化关键配置两个参数,基准参考源以及速率,同时在这边把内部参考基准源使能,DAC和ADC共用一个内部2V的参考基准源。

 

OPA的初始化关键配置三个参数,正相输入源的选择,高速模式以及功能模式(OPA功能)。

 

OPA的反相输入以及输出需要到引脚,因此对应的引脚必须配置为模拟复用功能。

 

DAC输出从0到4095进行遍历性测试,每个DAC数字量ADC采集20个数据。

 

以上针对DAC/OPA/ADC联合应用的配置就全部完成,最终转换的结果可通过串口打印出来观测,详细数据如下图9所示。