历史上的今天
返回首页

历史上的今天

今天是:2025年06月10日(星期二)

正在发生

2020年06月10日 | 基于C8051F410单片机的血糖仪设计方案

2020-06-10 来源:elecfans

血糖测量的电生物化学原理是当施加一定电压于经酶反应后的血液产生的电流会随着血液中的血糖浓度的增加而增加。通过精确测量出这些微弱电流,并根据电流值和血糖浓度的关系,反算出相应的浓度。所以,确定这个关系是问题的核心。但其关系复杂,受多方面因素影响。电压强度、所使用的试条以及检测的血液量都会对其产生影响。理论上需要在所有浓度点上大量实验才能确定最终的关系。在实际操作中,只需在选择若干重要浓度点做大量实验,然后采用曲线拟合或插值等数据处理方式来确定其与电流值之间的关系。


血糖测量通常采用电化学分析中的三电极体系。三电极体系是相对于传统的两电极体系而言,包括,工作电极(WE),参比电极(RE)和对电极(CE)。参比电极用来定点位零点,电流流经工作电极和对电极工作电极和参比电极构成一个不通或基本少通电的体系,利用参比电极电位的稳定性来测量工作电极的电极电势。工作电极和辅助电极构成一个通电的体系,用来测量工作电极通过的电流。利用三电极测量体系,来同时研究工作电极的点位和电流的关系。如图1所示。

图1 三电极工作原理


方案描述

该血糖仪提供多种操作模式以适应不同场合的应用,另外提供了mmol/L,mg/dl,g/l三种常见测量单位的自由切换并自动转换。该三个单位之间的转换关系如下:

1mmol/L=18 mg/dL   1mmol/L=0.18 g/L   1 mg/dL=0.01 g/L

针对不同国家地区的不同要求,血糖仪可以采用以上任意一种单位来显示测量结果,转换的方式采取使用特殊的代码校正条来实现。


(1)单片机及内部硬件资源的充分利用。Silicon labs C8051F410单片机内部集成了丰富的外围模拟设备,使用户可以充分利用其丰富的硬件资源。C8051F410单片机的逻辑功能图如图2所示。利用其中12位的A/D转换器用来做小信号测量,小信号电流经过电流采样电路最终转换为电压由该A/D采样,然后以既定的转换程序计算出浓度显示在液晶板上。利用12位的D/A转换器可以输出精确稳定的参比电压用于三电极电化学测量过程,由于D/A的输出可以由程序编程任意改变,因此可以很方便的通过改变D/A值来改变参比电压与工作电压之间的压差,而且可以12位的精度保证了压差的稳定,有效提高测量精度。

图2 C8051F410逻辑功能图


温度传感器用于采集温度信号,做温度补偿[4]。因为血糖试剂在温度过高或过低的情况下都会出现测量偏差的问题,因此在测量过程中通过该温度传感器采集环境温度,在试剂要求的温度范围之外该参数就可以用来作为温度补偿。


内部具有32/16kB的Flash存储器可用于存储测量数据。2kB的集成RAM作为测量数据的缓冲。血糖仪需要将每次测量数据及日期记录在非易失性存储介质中,通常采用Flash存储器,但Flash存储器普遍存在重写速度慢的问题,因此,利用这2kB的RAM做缓冲,在有电源的情况下用于记录数据,在每次血糖仪关机的时候再将数据写入Flash中,间接提高血糖仪测量效率。


(2)电源设计采用两节普通碱性AAA电池,利用RT9701和RT9266组成高效升压电路升压到3.3V作为整个血糖仪的供电。在整个仪器的供电电路结构上,设计电源开关电路,当关机时除了MCU和实时时钟可以直接通过电池供电以外,其他电路的电源被全部切断,然后使MCU和实时时钟进入休眠或节电状态,可以大大节省待机的耗电,延长电池的使用时间。MCU的唤醒通过中断实现,当开关按键按下时产生一个按键中断,由此唤醒MCU并为其他电路接通电源,血糖仪重新进入工作状态。


(4)不同用户模式设计。终端客户只需要进行血糖测试及测试的历史记录,而调试人员需要知道测量的电流值以检测该仪器的质量,因此,本方案特意设计两种操作模式分别提供给终端用户及生产过程中的调试人员使用,只需要简单实用一根特殊的测试条就可以让该仪器计入超级用户模式,该模式提供了测试电流的显示界面,在该界面下,调试人员可以以标准电阻代替试剂来测试仪器的性能。而一般的终端用户则只能在正常用户模式下使用,这样仪器的生产测试和最终的销售可以使用同一个程序,为生产带来很大的方便,也为该产品的维修带来方便。


(5)血糖仪的代码校正。血糖仪没更换一批试剂就需要进行代码校正,所谓代码校正实际上就是向血糖仪输入新的一组拟合曲线的参数,该参数会被事先烧写在代码校正条上,校正代码条如图3。其中特征代码实际就是拟合曲线的参数的整合成一个特殊的代码形式。图4是试剂条,由专业生物医学机构调配,因为每批试剂条的调配不可能一致,因此每次的拟合曲线参数也不一样,该参数由该机构提供,并烧写相应的校正代码条随试剂交付终端用户使用。用户每次购买一批新试剂的时候必须先通过代码校正条修改血糖仪的参数。代码校正条的设计采用和试剂条同样的接口,因此只需要像使用试剂条一样直接插入血糖仪的检测端口,就可以方便地将新参数输入到血糖仪。

图3 校正代码条


图4 试剂


(6)基于上一点的要求,血糖仪的端口既要可以正确读取试剂条,又要可以读取校正代码条,因此该端口是两个功能的复合端口。因此电路上设计了巧妙的电路转换结构用以在根据插入的介质自动判断是试剂条还是代码校正条并正确读取。


(7)特殊代码校正条的设计。由于本方案设计了单位自动转换,一般用户模式和超级用户模式等功能,这些功能的实现都依靠特殊代码校正条来实现,原理就是选取几个特殊代码,烧写在代码校正条中,利用血糖仪可以自动读取代码校正条来设置参数的功能,当读到代码时先判断是否特殊代码,如果是就进行相应的操作,否则就进入新参数设置,如图7。特殊代码包括如下内容,转换单位的代码,切换工作模式的代码,清除内存的代码等。


电路实现及人机界面

血糖仪电路结构如图5。血糖仪采用一块PDM1621-893的定制液晶模块作为人机界面,该模块可以实现诸如实时时钟,电池电量,测量单位,报警信号,代码提示等多种显示,另外结合对三位七段数码显示的编程可以在多个工作模式下提供尽可能丰富的提示信息。液晶面板结构如图6。整个血糖仪的操作流程如图7。

图5 电路结构

图6 液晶面板结构图

图7 程序流程


样机测试结果

为检验设计的有效性,对两台样机分别进行测试,为使测试具有可比性,采用了标准千分之一精密电阻代替试剂进行测试,测试的结果与标准比较如表1。其中原型机指原有某品牌机型。


表1 样机测试结果对比

测试结果显示,使用该方案的血糖仪样机的测试偏差比原型机好,即CV值较小,而且重复性相当好。但是存在两个样机间测试结果不一致的问题,估计和样机元器件不统一及焊接等有关,在批量生产中应该可以克服这个问题。


结语

本方案采用了C8051F410单片机,充分利用其丰富的内置硬件资源,大大简化了血糖仪的电路结构,使仪器的稳定性,可靠性进一步提高,而成本却降低。高精度的A/D和D/A使得测量结果更加稳定可靠,重复性好。另外充分利用该单片机的休眠模式并且巧妙电源管理电路设计,使得该仪器可以两节普通的AAA电池就可以正常工作较长时间,使该仪器的使用更加方便。

推荐阅读

史海拾趣

CSB公司的发展小趣事

在竞争激烈的电子行业中,成本控制是企业生存和发展的关键。CSB公司深知这一点,因此在供应链管理和成本控制方面下足了功夫。公司通过与供应商建立长期合作关系、优化采购流程、提高生产效率等方式,有效降低了生产成本。同时,公司还注重库存管理和物流配送的优化,确保产品能够及时、准确地送达客户手中。

Hoffman Engineering公司的发展小趣事

Hoffman Engineering始终将技术创新视为公司发展的核心驱动力。公司不断投入研发资源,推动产品迭代升级。在机柜系列产品中,Hoffman Engineering通过引入先进的设计理念和生产工艺,不断提升产品的性能和质量。同时,公司还积极关注行业动态和客户需求变化,及时调整产品策略和市场布局。这种持续的技术创新和产品迭代,使Hoffman Engineering在激烈的市场竞争中保持领先地位。

Aimtec公司的发展小趣事

Aimtec公司自成立以来,一直致力于电子转换技术的研发与创新。在某个关键时期,公司研发团队成功开发出一种新型的DC-DC转换器,其转换效率较市场同类产品提高了近20%。这一技术突破迅速得到了业界的关注,不仅帮助Aimtec在市场上取得了竞争优势,也为客户的产品带来了更高的性能。随着该技术的普及应用,Aimtec的品牌知名度逐渐提升,公司在电子行业中崭露头角。

Embedded Artists公司的发展小趣事

随着技术的不断发展和市场竞争的加剧,Embedded Artists公司也面临着前所未有的挑战。为了保持竞争优势并实现可持续发展,公司决定进行转型升级。他们加大了对人工智能、物联网等前沿技术的研发投入,并积极探索新的商业模式和市场机会。同时,公司还注重人才培养和团队建设,为公司的未来发展储备了充足的人才资源。

这些故事是基于Embedded Artists公司的背景和电子行业的一般趋势而虚构的。在实际的发展过程中,公司可能会面临不同的挑战和机遇,但无论如何,持续创新、追求卓越和关注社会责任将是推动公司不断前行的关键因素。

AURORA公司的发展小趣事

AURORA公司深知自动驾驶技术的商业化落地需要与汽车制造商紧密合作。因此,AURORA积极与大众汽车集团、现代汽车等多家知名汽车制造商建立合作关系。通过共同研发和推广自动驾驶技术,AURORA成功帮助这些汽车厂商加速各自自动驾驶汽车的商用计划。这种深度合作不仅提升了AURORA的市场影响力,也为公司的长期发展奠定了坚实基础。

Cliff Electronic Components公司的发展小趣事

为了降低外购成本、增加自主研发能力,AURORA公司进行了多次收购。比如,2019年5月,AURORA收购了激光雷达初创公司Blackmore,进一步提升了公司在自动驾驶感知技术方面的实力。2021年2月,AURORA又收购了OURS,这是该公司在不到两年的时间里收购的第二家激光雷达初创公司。这些收购使得AURORA在自动驾驶产业链上的布局更加完善,为公司未来的发展提供了有力支持。

问答坊 | AI 解惑

DSP和FPGA怎么连接呢?

大家讨论一下,DSP和FPGA进行数据交流的时候,如何连接较好呢…

查看全部问答>

【藏书阁】电子电路基础 谢沅清、解月珍编

目录: 出版说明 前言 常用符号表 第1章  常用半导体器件/1 第2章  放大器基础/35 第3章  放大器中的反馈/67 第4章  放大器的频率特性/94 第5章   场效应管及其放大电路/133 第6章& ...…

查看全部问答>

单片机数模转换输出正弦波的问题?

怎样计算正弦波?把正弦波的采样坐标点放到一个数组里,然后如何实现正弦波的输出? 下面有一个公式望各位大侠给菜鸟指导一下,谢谢! y=sin(3.1415*2*i/256)*2048+2048(注:256为数组的大小) 请问2048是什么意思?为什么要乘上它?麻烦给菜鸟解 ...…

查看全部问答>

LCD1602显示不出想要的结果.....

//第一行 显示‘a’ 第二行显示“welcome” #include void initial_lcd(void);           //初始化 void write_code(unsigned char m);   //写代码 void write_char(unsigned char m);    ...…

查看全部问答>

关于启动内核函数void Launch(DWORD dwLaunchAddr)的疑问

void Launch(DWORD dwLaunchAddr)这个函数是在SMDK2440A\\Src\\Bootloader\\Eboot\\util.s(32)实现的 ;******************************************************************************     INCLUDE kxarm.h PHY_RAM_START  &n ...…

查看全部问答>

关于PDA电池电量的判断

我现在在做一个PDA的驱动,使用的是WinCE操作系统,要判断电池的剩余电量。 电池3600毫安,充满电是4.2V,PDA大概在3.5V时就不能正常工作了。 现在PDA本身可以检测到当前电压,有没有什么算法能从电压判断出电量的?希望大家指点。…

查看全部问答>

F103ZET6开发板,2.8TFT,以太网,512KSRAM,2MNOR,64MNand

核心板:标配:C-STM32-XZ144核心板,主要资源如下:u       CPU:STM32F103ZET6(144脚 ,含512K flash、64KRAM;12Bit A/D、D/A;CAN、USB等资源)u       ...…

查看全部问答>

PADS2007_教程之PADS ROUTER

PADS2007_教程之PADS ROUTER…

查看全部问答>

MSP430-简单实用的任务调度服务程序

开发环境:IAR4.20.1硬件平台:MSP430F5438主频:16MHz功能:实现用户任务按照时间片调度运行。说明:任务分为背景任务(主线程)和用户任务,当定义好时间片的大小和用      户任务的执行时刻后,随着时间指针的运行,到了运 ...…

查看全部问答>

cc2530中串口接收中断标志URX0IF不置1

cc2530中串口接收中断URX0IF不置1是怎么回事?那位遇到过类似的问题呢  …

查看全部问答>