基于ARM核的ADμC7024在医疗电子中的应用

发布者:古泉痴迷者最新更新时间:2006-07-14 来源: 电子工程师关键字:MCU  ARM  微处理器 手机看文章 扫描二维码
随时随地手机看文章
0 引言

  随着信息技术的迅猛发展和人民生活水平的提高,极大地推动了医疗电子设备的发展,当今医疗电子设备的发展趋势是高精度、实时性、低功耗和小尺寸,作为医疗电子设备中核心地位的MCU(微处理器)也随着这一发展趋势向前不断衍变着。由早期的8位MCU发展到目前的32位RISC(精简指令集计算机)MCU。美国ADI公司根据市场的需要最新推出了一款基于ARM(高级精简指令集计算机)核的微处理器ADμC7024便是目前32位RISC MCU的杰出代表。ADμC7024卓越的处理能力、集成众多片上外围器件和芯片低功耗的特点,完全胜任目前医疗电子设备的需求及未来的发展目标。

  本文以ADμC7024在医疗电子中监护产品脉搏血氧计的应用为例,重点介绍其在医疗电子行业中的实际用途。

1 ARM内核特点

  英国ARM公司是嵌入式RISC处理器的IP(知识产权)供应商,它为ARM架构处理器提供ARM处理器内核(如ARM7TDMI、ARM9TDMI及ARM10TDMI等)。由各半导体公司在上述处理器内核基础上进行再设计,嵌入各种外围和处理部件,形成各种MCU。目前基于ARM内核的芯片在嵌入式处理器市场上占据75%的份额。

  ARM作为嵌入式系统的处理器,具有低电压,低功耗和高集成度等特点,并具有开放性和可扩充性。事实上,ARM内核已成为嵌入式系统首选的处理器内核。而对于医疗电子设备而言,并不需要图像处理等方面更高的要求,因此,ARM7TDMI内核以0.9MIPS(百万条指令每秒)/MHz的高效处理能力足以满足应用需要。

  ARM7TDMI内核是ARM核系列中32位通用内核中的一个产品,它采用三级流水线结构,指令的执行分成取指、译值和执行3个阶段。运算器能够实现32位整数运算。内核不但能够执行32位高效ARM指令,同时还支持简洁的16位Thumb指令集以提高代码密度。

  ARM7TDMI名称的含义为:

  a)ARM7:ARM系列具有32位运算能力的内核,它采用冯·诺依曼结构,数据长度可以是8位,16位和32位,而指令长度是32位。

  b)T:内含16位压缩指令集Thumb,由于32位RISC型处理器的指令代码利用率较低,ARM为了弥补不足,在新型ARM架构(V4T版以上,成熟架构由V3版发展到V6版)定义了16位的Thumb指令集,Thumb指令集比通常的8位和16位CISC/RISC处理器具有更好的代码密度,而芯片面积只增加6%,可使程序存储器更小。

  c)D:支持片内调试,该内核包含用于调试的硬件结构,可使CPU进入调试模块,可以方便地进行断点观察点设置、单步调试和多步调试。

  d)M:采用增强型乘法器。AARM7TDMI指令集包含2个32位×32位的乘法指令和2个乘法累加MAC指令,该结构使得指令的执行比其他类型的ARM7内核减小了许多机器周期。

  e)I:内含嵌入式ICE宏单元,ARM架构的处理器芯片都嵌入了Embedded ICE-RT逻辑块,便于通过JTAG接口来仿真调试RAM架构芯片。

2 芯片内部结构及特点

  美国ADI公司利用其在模拟电路领域的优势,综合基于8052-8位ADμC8xx的技术积累,将ARM7TDMI内核和ADC(A/D转换器),DAC(D/A转换器)等外围设备集成在一块芯片上,就是最近推向市场的拳头产品ADμC702x系列。其中ADμC7020、ADμC7021、ADμC7022、ADμC7026等芯片除了在片上Flash和SRAM容量大小、ADC和DAC通道数量、PWM(脉宽调制)相位数量有差别外,其他完全一致;而ADμC7026,ADμC7027具有外部扩展内存接口。

  本文主要介绍其中具有代表性的一款--ADμC7024,工业级的ADμC7024工作于2.7V-3.6V电源电压,64引脚CSP封装的芯片面积仅为9mm×9mm,在1MHz时钟频率下芯片最高功耗为5mA,在最大时钟频率45MHz下芯片最高功耗为60mA。其原理框图如图1所示。


2.1 片上集成高性能的ADC和DAC

  ADμC7024片上集成了10通道12位逐次逼近型ADC,能够在电源电压为2.7V-3.6V的范围正常工作,在系统时钟频率为45MHz下的最高采样率高达1MSPS(百万次采样每秒)。该ADC模块提供一个高精度、低漂移的片上2.5V基准电压VREF,该电压通过片上REFCON寄存器的软件配置也能作为输出,向外提供基准参考源。ADC能够工作于单端转换模式或者差分转换模式,在单端转换模式下的输入电压范围是0至VREF,在差分转换模式下输入电压范围是0至AVDD(AVDD通常情况下为3.3V)ADC单个或连续的转换能够被外部引脚CONVstar、片上PLA、定时器1或定时器2所触发。

  通过ADC控制寄存器ADCCON,通道选择寄存器ADCCP和ADCCN软件配置好ADC后,转换结果将存储在寄存器ADCDAT位27至位16中,通过ADC状态寄存器ADCSTA的位0可以查看ADC转换是否完成,当ADC转换结束时,位0被置位;当读取ADC-DAT时,该位自动被清空。当ADC正在执行转换操作时,片上引脚ADCBusy保持高电平,一旦转换结束,该引脚马上变为低电平。

  还可以通过ADCRST寄存器将ADC模块中所有寄存器恢复至默认值;通过调整ADCOF和ADCGN寄存器的值可以调整ADC转换精度,不过,该寄存器出厂时已经过校准。

  由于该ADC的是逐次逼近型结构,因此比较适合低功耗的产品应用。

  ADμC7024片上还集成有2通道12位DAC。每个DAC都具有轨至轨的输出电压范围,驱动能力可达100pF或者5kΩ,每个DAC也能通过软件配置来选择输出范围0至VREF(内部基准电压)、0至DACref(外部基准电压)和0至AVDD,而DACref的取值范围是0V至AVDD。

  DAC的使用十分简单,通过DAC控制寄存器DAC0CON或者DAC1CON来选择通道和配置DAC通道特性,然后通过向DAC0CON或DAC1CON的位27至位16写入数值,就可以在DAC引脚上得到所需要的模拟电压结果。

2.2 片上集成Flash寄存器和SRAM

  ADμC7024片上集成了64KB的Flash存储器,其中低62KB的Flash存储器是用户可以编程的,剩下的高2kB区域是用户不可接触的固件程序,里面包含了在线串行下载程序及出厂配置默认方案。ADμC7024片上Flash存储器能够通过串行编程模式,JTAG编程模式或并行编程模式在系统中编程。

1)串行编程模式

  当片上BM引脚芯片被拉低时,ADμC7024重启动将进入串行下载模式,通过标准的UART端口或IIC端口在线下载程序。

2)并行编程模式

  并行编程协议使得片上Flash存储器能够通过工业级第三方编程器进行编程。

3)JTAG编程模式

  ADμC7024片上Flash存储器完全遵守IEEE 1149.1规范,因而可以通过标准的JTAG接口来下载程序和进行调试代码,使得系统的开发十分简单易行。

  而ADμC7024片上Flash存储器通过FEEPRO、FEEHIDE寄存器的软件设置可以防止程序通过JTAG接口或并行编程模式被读出,有效地保障了开发人员的劳动成果。

2.3 晶振和PLL

  ADμC7024片上集成了一个32.768KHz晶振、一个时钟分频器和一个PLL(锁相环)。内部的PLL能够将晶振频率放大1376倍,即为系统提供一个稳定的45MHz。

  为了降低系统功耗,可以通过软件设置时钟分频器的控制寄存器PLLCON和POWCON将经过PLL后输出的45MHz降频,最大可降低至352KHz,由于内部晶振有±3%的误差,因此,用户可以选择外接一个32.768kHz的晶振,通过软件设置PLLCON值使用外部晶振,使系统的性能稳定可靠。

2.4 复用I/O及标准的UART、SPI、IIC

  ADμC7024提供30个通用型双向I/O引脚。所有的I/O引脚具有5V电压耐压能力,一些I/O引脚中与其他外围设备引脚复用。在默认情况下,所有的GPIO都是I/O模式,如果在实际中需要将I/O口复用成其他情况的,只需要按照I/O控制配置寄存器GPxCON的手册配置方案软件编程即可(这里x表示端口0,端口1,…,端口4,如1端口5引脚则是P1.5)。在配置成I/O情况下,可以通过置位数据寄存器GPxDAT中某些位的值使引脚输出"1";同时可以清除数据寄存器GPxDAT中的某些位的值使引脚输出"0";还可以读数据寄存器GPxDAT中某些位的值得到输入引脚的值(x同前面介绍,具体设置请参考ADμC7024手册)。

  ADμC7024片上集成了2个标准的、全双工模式的异步串口UART(通用异步收发器),它们与16450串口标准所兼容。片上UART的波特率产生器中包含一个小数分频器,使得UART波特率的产生更加精确。同时,其中一个UART还支持网络寻址模式下的串口发送接收模式。UART的使用首先通过I/O的配置成UART端口引脚。然后通过软件配置UART配置寄存器及波特率设定寄存器就可以通过COMTX寄存器、COMRX寄存器分别发送和接收数据。

  ADμC7024片上也集成了标准工业级同步串口SPI(串行外围接口),SPI接口可以同步接收和发送8位数据,最高速率可达5.6Mbit/s。该SPI能够被配置成主(Master)或者从(Slave)两种工作模式,关于SPI使能、选择工作模式、串行时钟相位及极性、先发送低有效位还是高有效位等多项设置,均是通过SPICON编程而得到,而主模式发送的串行时钟频率由SPIDIV来设定,从模式则不用设定串行时钟频率,因为串行时钟是由主模式的SPI来决定的,通过读取SPISTA中某些数据位的值,可以知道SPI是否发送结束或者接收结束。

  ADμC7024还具有两个经Philips公司授权的IIC接口,IIC是Philips公司20世纪80年代开发的一个简单的两线总线,包括一条数据线和一条时钟线,速率有100kHz和400kHz两种方式,目前IIC已经成为重要的全球业界标准,被所有主要的集成电路厂商所认同和使用。它采用主-从通信方式,采用总线仲裁特性,使得在某一时刻只有两个器件进行通信,具体数据指标参考ADμC7024数据手册。

2.5 中断系统

  中断系统是一个MCU在应用中的灵魂所在。ADμC7024片上中断控制器控制着24个中断源。这些中断源包括片上ADC中断、UART中断、2个外部中断请求XIRQ0和XIRQ1等,而ARM7TDMI内核仅仅将这些中断源分成两大类来识别,一类是IRQ,另一类是FIQ。所有中断源能够单独地被屏蔽。中断系统的控制和配置管理由9个关于中断方面的寄存器所控制,4个涉及到IRQ的寄存器、4个涉及到FIQ的寄存器,1个用来选择已编程的中断源寄存器SWICFG。虽然作为一个已编程的中断源是不能够被屏蔽掉的,但是它们可以被SWICFG来控制。

2.6 定时器

  ADμC7024有4个通用定时器:定时器0、定时器1、定时器2和定时器3。这4个定时器在一般的操作模式下均能按照默认值计数或者按照预设值寄存器TxLD(x表示0,1,2,和3中的某一个寄存器)中值来计算。在任意时刻可以通过读取TxVAL寄存器中的值了解定时器中的当前计数值。通过配置TxCON的值可以设置相应的定时器按照一定的方式开始计数。

  定时器0是一个通用型16位倒计数定时器,该定时器的刻度尺频率来源是系统时钟,计数默认值可以是系统时钟频率、系统时钟频率的16分频和256分频。

  定时器1是一个32位通用型累加定时器或者倒计时定时器。该定时器的刻度尺频率来源可以是32kHz晶振、系统时钟和外部GPIO三者之一。计数默认值可以是刻度尺频率、刻度尺频率的16分频、256分频和32768分频。定时器1可以被设置为标准的32位时间值,如Hours:Minutes:Seconds:Hundreths这样的格式。定时器1通过预设响应IRQ事件,可以比通常情况下定时器0响应IRQ中断请求要准确得多。它还可以用来触发ADC转换过程。

  定时器2的系统刻度尺频率来源是内部集成的32.768kHz晶振,当系统时钟停止工作时,该定时器还可以继续运行,这一特性可以用来将处于休眠状态的系统内核恢复至正常工作状态。

  定时器3由两种工作模式,一种通常模式与前面3个定时器一样,还有一种是看门狗模式。一旦程序跑飞时,可以利用该定时器看门狗模式来重启动处理器,令其恢复正常工作。

2.7 其他外围设备及特性

  片上还集成有独立的比较器、电源监控模块、三相PWM(在ADμC7020、ADμC7021、ADμC7022是单相PWM)以及PLA(可编程逻辑阵列)。其中PLA的输入输出引脚与GPIO复用。

3 引脚定义

  ADμC7024引脚定义见表1。

   

4 应用实例

  该芯片卓越的数据处理能力、片上集成的高精度ADC及DAC等丰富的片上外围设备以及时钟频率可调节的特点,使得在要求低功耗、高精度、实时性等嵌入式微信号处理系统中的应用如鱼得水。现以脉搏血氧计为例,介绍其中一个广泛的应用领域。其系统框图如图2所示。

       
  ADμC7024作为系统的核心MCU,负责控制和协调其他电路模块的正常工作,它将采集到的血氧信号经过数据处理后,通过SPI总线传送给LCD显示屏得以显示。

  根据实际临床结果显示,ADμC7024已完全胜任设计血氧模块的任务,处理能力、采样率、采样精度、功耗、实时性要求等指标完全达到系统的要求,ARM体系架构使得医疗电子的稳定性得到极大保障。最后,采用第三方Keil公司μVision开发工具,用C语言作为开发语言,利用GNU的ARM-ELF-GCC等工具作为编译器及链接器,易学易用,它的调试仿真工具也是Keil公司开发的Ulink仿真器,调试简单,缩短上市时间,便于移植。

  可以预料,在不久的将来,ADμC7024以其独树一帜的性能必将在医疗电子行业中发挥越来越大的作用。

关键字:MCU  ARM  微处理器 引用地址:基于ARM核的ADμC7024在医疗电子中的应用

上一篇:微控制器时钟选择
下一篇:基于S3C2410的RTC模块应用设计

推荐阅读最新更新时间:2024-05-13 18:13

基于51单片机实现继电器控制照明设备
具体功能实现: 当按下开关时,继电器闭合点亮照明设备(灯泡) 使用器件: 照明设备(LAMP)、按键、AT89C51、若干电阻、PNP晶体管、二极管、继电器(RTE24005F) Proteus仿真原理图: 仿真: 知识介绍: Proteus布线 为了让整个原理图看上去简洁明了,我们对元器件的导线进行标号,而不是直接和芯片相连。 继电器驱动电路原理 主要代码(C语言)KEIL5实现: #include reg52.h #define uchar unsigned char #define uint unsigned int sbit K1 = P1^0; sbit RELAY = P2^4; v
[单片机]
基于FPGA和单片机的多功能计数器设计
  一、系统方案   方案1:采用中小规模数字电路构成系统,由计数器构成主要的测量模块。用定时器组成主要的控制电路。此方案软件设计简单,但外围芯片过多,且频带窄,实现起来较复杂,功能不强,而且不能程控和扩展。   方案2:采用单片机实现。被测信号经调理后送入单片机,利用其内部的计数器完成计数,然后再进行数据处理和显示,但单片机在处理高速信号时略显吃力。   方案3:利用FPGA对调理后的被测信号实现高速计数,单片机软件执行高精度浮点数运算并显示。单片机完成系统的数据处理、逻辑控制和人机交互功能;大规模现场可编程器件(FPGA)实现外围计数功能。电路框图如图1所示。    图1 方案3系统框图   方案比较与选择:方案1
[单片机]
PIC单片机AD中断调试(无数字滤波)
PIC单片机AD转换的中断调试程序如下(无数字滤波): #include pic.h #define uchar unsigned char #define uint unsigned int __CONFIG(0x3B31); const uchar disp ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; uint adval; float advalf; uchar flag; void delayms(uint x) { uint j,k; for(j=x;j 0;j--) for(k=110;k 0;k--); } void display(u
[单片机]
ARM汇编关键知识点总结
1. LDR R1, =COUNT 意思是将 COUNT 变量的地址放到 R1中 LDR R1, COUNT 意思是将 COUNT 变量地址里面的内容赋给 R1 2. Load-Store 结构——这个应该是 RISC设计中比较有特点的一部分。在 RISC 中,CPU 并不会对内存中的数据进行操作, 所有的计算都要求在寄存器中完成。 而寄存器和内存的通信则由单独的指令来完成。而在 CSIC中,CPU是可以直接对内存进行操作的,这也是一个比较特别的地方。所以,在 ARM中,cpu只能通过寄存器来对内存的数据进行访问和更改。 LDR Rd,(地址) STR Rd, (地址) LDMIA Rn!, regist STMIA
[单片机]
<font color='red'>ARM</font>汇编关键知识点总结
IAR for Arm集成开发环境全面支持芯驰科技9系列SoC和E3系列MCU
IAR Embedded Workbench for Arm集成开发环境已全面支持芯驰科技9系列SoC和E3系列MCU 最新版 IAR Embedded Workbench for Arm 全面支持芯驰科技9系列SoC和E3 MCU 芯片,帮助中国汽车行业开发者打造强大的嵌入式开发解决方案 中国上海—2022年6月17日——全球领先的嵌入式开发软件工具和服务提供商IAR Systems日前宣布:其最新发布的IAR Embedded Workbench for Arm 9.30版本已全面支持芯驰科技9系列SoC和E3 MCU芯片。 国内领先的车规芯片企业芯驰科技致力于为未来智慧出行提供高性能、高可靠的车规芯片
[嵌入式]
IAR for <font color='red'>Arm</font>集成开发环境全面支持芯驰科技9系列SoC和E3系列<font color='red'>MCU</font>
East:ARM和台积电在SoC方面领先英特尔
    尽管一直到2015下半年,台积电 ( TSMC )都仍可能无法为ARM处理器提供可量产的FinFET技术,不过, ARM CEO Warren East表示,他并不担心于英特尔 ( Intel )在制程技术方面领先于其他所有代工厂。 在FinFET 技术中,电晶体是垂直在晶圆表面上,这种方法被认为能改善电晶体性能,并减少关闭状态下的漏电流。英特尔已经采用22nm FinFET CMOS制程进行量产,在此同时,台积电则正试图为客户提高其平面28-nm CMOS产能。 然而, Ease对《EE Times》表示, ARM和台积电将在SoC技术竞争方面领先英特尔。“我们非常关注SoC的整合。就SoC而言,英特尔
[手机便携]
瑞萨电子宣布将全面支持面向未来汽车级MCU 和SoC的ISO/SAE 21434标准
10月8日,瑞萨电子集团宣布,自2022年1月起的新开发项目中,瑞萨的汽车级微控制器(MCU)和片上系统(SoC)解决方案将完全满足ISO/SAE 21434道路车辆网络安全工程国际标准。瑞萨此举秉承公司对汽车网络安全的持续性承诺,旨在建立并实施强大的网络安全管理系统(CSMS),并使其成为联合国欧洲经济委员会(UNECE)新法规UN R155的组成部分。 这一承诺还向OEM(original equipment manufacturers,原始设备制造商)和一级供应商重申瑞萨将继续履行其CSMS责任。自2022年1月开始,瑞萨未来所有车用MCU和SoC都将遵循ISO/SAE 21434标准;包括16位RL78和32位RH85
[汽车电子]
瑞萨电子宣布将全面支持面向未来汽车级<font color='red'>MCU</font> 和SoC的ISO/SAE 21434标准
stm32F103单片机无源晶振不起振排除问题
这是我在做单片机最小系统板时候碰到的问题,之前虽然也做过相似的板子,可是未曾出现过无源晶振不起振的问题。下面是我在遇到问题后的一些检查,排除问题的过程。本人小菜鸟一个,文章中如有错误和不足,还望各位大佬指正和补充。 事情是这样的,本人做了一款32单片机最小系统板(先叫它老大),在老大出来之前的前五个月,我用相同的PCB板焊了一款用在毕设上面,那个是能正常工作的。板上有个小负载,LED灯。想让这个灯闪烁。代码是没有问题的,因为下载到从网上买的单片机是正常工作的。用JLink下载到自己做的板子上也是能下载进去的,但是不工作。怀疑晶振没起振。用示波器测量晶振引脚对地为一个高电平,而控制那个灯亮的管脚一直是高电平。买回来的板子晶振引脚
[单片机]
小广播
最新应用文章
换一换 更多 相关热搜器件
随便看看

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 医疗电子 工业控制

词云: 1 2 3 4 5 6 7 8 9 10

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved