你好,想请教关于C8051F021的问题,我现在使用同时C8051F021两个单片机外部中断断源,并且只有两个中断。

维库欢迎您!
微信扫一扫关注我们
当前位置:&>>&&>>&&>>&C在远程诊断与急救支援系统中的应用
摘要:介绍了一种基于的多生理参数采集装置。该装置作为远程诊断与急救支援系统的一部分,能动态地获取患者的生理参数,并通过无线方式传送给远端的会诊中心,使现场的医护人员能够及时得到远程会诊中心的专家指导,为远程医疗提供基本的医学信息。
C UART A/D转换 无线传输
随着多媒体技术、计算机网络和通信技术的发展,远程医疗成为目前国际上发展十分迅速的跨学科高新科技。远程诊断与急救支援系统是远程医疗的一个重要分支,依靠这个系统,可以将急救现场患者的各种生命信息传送给远端的医生,及时得到医疗指导或诊治。这对患者获得高水平的医疗服务及紧急情况时的急救支援,具有重要意义[1]。
系统中患者生理参数的获取和传输是一个重要组成部分,为此,笔者设计了以美国CYGNAL公司的SOC芯片C为中央控制单元的多生理参数的采集与无线传输装置。该装置由生理参数采集部分和实时无线数字传输的人机接口组成。这两部分做成一个小巧的装置,病人可以方便地携带在身上,连续动态地监测病人的体温、血压、血氧、脉搏、心电等生理参数,并将这些参数以无线方式发送到与网络相连的计算机上,经处理后传送到远端的会诊中心。利用该远程诊断与急救支援系统,会诊中心的专家可以了解病人的状况,及时指导现场的救护人员对患者实施恰当的救护措施。
1 硬件设计
基于C的多生理参数采集装置包括心电模块、血压模块、血氧模块、体温模块和无线数据传输模块五部分,各部分的协调工作和数据的无线传输由主微控制器C管理。主微控制器是该系统的核心,完成体温和心电参数的检测,负责控制其它模块并与之进行数据交换,同时还控制生理参数的无线传输。因此,对其运行速度和接口功能都有较高的要求。
C以其速度快、性能高等特点,能确保心电信号检测与处理的实时性要求。另外,其丰富的端口资源能满足各模块结构设计中所需的多种串行通信接口的需要。其中体温模块通过单线接口与微控制器双向通信;血压模块通过高速串行通信方式将采集的参数传送给C;血氧模块则通过UART将检测的参数结果传送给微控制器;无线传输模块也是通过微控制器的串口传送数据。C内部自带的A/D转换、D/A转换和串行口为系统设计省去了很多外围电路,大大减小了体积。其框架图如图1所示。
1.1 C简介
C是美国CYGNAL公司推出的混合信号系统芯片,是高度集成的片上系统。它嵌入了一款高速、低功耗、高性能的8位微处理器,最突出的特点是高速指令处理能力[2、3]。C采用CIP-51微控制器内核,与MCS-51指令完全兼容。CIP-51采用流水线结构,与标准的8051结构相比,指令执行速度有很大的提高。CIP-51在最大系统时钟频率工作时,其峰值速度可达25MIPS。
C除了具有标准8051的数字外设部件之外,内部还集成了数据采集和控制系统中常用的模拟部件和其他数字外设及功能部件。片内集成了多通道12位和8位A/D转换器以及一个双12位D/A转换器,两个增强型UART串口,便于模拟量和数字量的采集、控制和通信传输。该单片机还集成有4KB内部数据RAM和64KB 以及外部64KB数据接口(可编程为复用方式和非复用方式)、总线接口、电压比较器、温度传感器等部件,比常规51单片机有更多的定时计数器、中断、数字I/O接口。片内还配置了标准的JTAG接口(IEEEll49.1)。在上位机软件的支持下,通过串行的JTAC接口可直接对安装在最终应用系统上的单片机进行非侵入式、不占用片内资源、全速在线系统的调试,无需另配及,是目前功能最强大、性能价格比最好的单片机之一[4]。&&& 1.2 各模块与微控制器通信的实现
1.2.1 测温部分
采用DSl8B20温度传感器构成测温系统。DSl8B20是美国公司生产的单线数字温度传感器,它可把温度信号直接转换成串行数字信号供微控制器处理。DSl8B20数字温度计能提供9位温度读数,通过单线接口与C的I/O口P1.0进行双向通信。读写及温度变换的功率来自于数据线而不需额外的。
1.2.2 心电部分
心电信号经过前置放大和第二级放大后送入C自带的A/D转换器进行采样。
C片内集成了两个多通道ADC子系统(每个子系统包括一个可编程增益放大器和一个模拟多路选择器)。选用ADC0将心电信号进行A/D转换。ADC0子系统包括:一个9通道的可配置模拟多路(AMUX0)、一个可编程增益放大器(PGA0)和一个100ksps的12位分辨率的逐次逼进寄存器型ADC,ADC中还集成了跟踪保持电路和可编程窗口检测器。所有这些特性完全由CIP-51通过特殊功能寄存器控制。心电信号采样的设置如下:(1)置AMUX0配置寄器AMX0CF=0x00;使AIN0~AIN7为独立的单端输入。(2)置AMUX0通道选择寄存器AMX0SL=0x00;选择AIN0为ADC0的模拟输入,即采集的心电信号从AIN0模拟通道输入C。(3)置ADC0配置寄存器ADC0CF=0x48;使ACD0采样/保持放大器获取输入的模拟信号的周期数为1/10个系统时钟,内部放大器增益为1。(4)置ADC0控制寄存器ADC0CN.0=0;使ADC0H和ADC0L寄存器数据右对齐;ADC0CN.7=1;ADC处于活动状态,并准备转换数据。(5)置EIE2.1=1;ADC0转换中断允许。图4&&& 完成ADC0相应的寄存器设置后,采用3设置心电采样时间间隔,心电的采样频率设为360Hz。当定时器3溢出中断时,启动ADC0开始转换。通过ADC0控制寄存器ADC0CN.5,判断转换是否结束。转换结束后,采样结果自动存放在ADC0H的低4位和ADC0L中。读取这12位心电数据并通过自适应算法抑制心电信号中的基线漂移,获得稳定的心电信号。
1.2.3 血压模块
血压模块与微控制器之间采用高速串行的通信方式,血压模块的工作状态、测量结果通过两个功能引脚输出,供微控制器处理。这两个功能引脚连接到C的两个I/O口,其中输出的串行时钟线连到I/O口P1.2,输出的串行数据线连到I/O口P1.3。若在一个时钟周期内数据线上出现一个电压由高到低的跳变,则开始接收数据。
输出的数据格式如图2所示。开始处的电压跳变如图3所示。开始表示在此后的16个时钟信号内将传送16位的数据,其高4位的数据表示数据类型,不同的编码表示不同的数据,如舒张压、收缩压和心率分别有各自的代码,如表1所示;而低12位数据则表示具体的数值,对应前面的数据类型可以得到收缩压、舒张压和心率的数据。表1 高速串行通信数据帧16位数据定义
0& 0& 0& 0
实时压力0~300
0& 0& 0& 1
收缩压60~280
0& 0& 1& 0
舒张压40~200
0& 0& 1& 1
心率40~200
0& 1& 0& 1
1& 1& 1& 0
1.2.4 血氧模块
血氧模块通过串行接口传输测量结果,本系统选用C的UARTl与血氧模块进行数据交换,而将UART0分配给无线收发模块。
首先,主微控制器C通过设置优先交叉开关译码器XBR0、XBRl和XBR2的值完成数字资源的动态分配。优先权交叉开关译码器可以按优先权顺序将P0~P3口的引脚分配给器件上的数字外设(UART、SM-Bus、ICA、定时器等)。
其次,要实现C与血氧模块的通信,需完成以下寄存器的配置:(1)初始化交叉开关配置寄存器XBR2,初始值为0x44;分别使能交叉开关和UARTl;(2)初始化端口0输出方式寄存器P0MDOUT,初始值为0x05;将P0.2和P0.3分别分配给TXl和RXl;(3)完成UARTl工作模式和波特率的设置。血氧模块的串口工作在模式1、波特率为9600bps,采用定时器2完成UABTl对应波特率的设置。
1.2.5 生理参数的传输
为了方便患者携带和医生使用,选用无线收发芯片nRF401完成生理参数的无线传输。单片收发芯片nRF401片内集成了高频发射、高频接收、PLL合成、FSK调制、FSK解调以及多频道切换等功能模块。它工作在ISM国际公用频段,最大能以20kbps的速度进行无线数据传输[5]。微控制器只需对nRF401进行简单的控制就可以通过串口完成数据的收发,nRF401与C构成的无线通信系统如图4所示。
C的UART0的设置与UARTl的设置相似,首先初始化交叉开关寄存器XBR0=0x04、XBR2=0x40;分别使能UART0和交叉开关;再初始化特殊功能寄存器P0MDOUT=0x01;将P0.0和P0.1分别分配给TXl和RX1;因为UART0有最高优先权,当UART0EN设置为1时,P0.0和P0.1总是分配给TXl和BXl;最后完成UART0工作模式和波特率的设置。
为了将采集到的生理参数发送给接收系统,在发送数据之前,芯片首先上电工作(即PWR_UP=1),然后选择数据传输通道。nRF401有两个传输通道可供选择:通道l(433.92MHz)和通道2(434.33MHz)。将TXEN引脚置为高电平(发送模式),nRF401就能通过微控制器的串口发送数据。
2 系统软件的设计
系统软件主要完成以C为核心的生理参数的采集和无线发送。由于要处理多个不同的模块,在实现过程中采用了巡回检测的方法。在数据传送过程中,设置了一个生理信息包协议,在采集系统和无线发送模块之间,定义通信协议包如表2所示。串口对连续接收的2个字节的数据依据协议规则重新装配。由于生理数据(心电、血压、体温等)一般不超过12位,采集系统将它们分别拆为低7位和高5位进行传输。其中,高位的第一位为高位数据标识,设为0;低8位的第一位为低位数据标识,设为1。表2 串口通信协议包
表3 各参数的具体识别方式
B6& B5& B4& B3
0&& 0&&&&&&&&&
心电参数(12位)
1&& 0&& 0&& 0
血压参数(收缩压)
1&& 0&& 0&& 1
血压参数(舒张压)
1&& 0&& 1&& 0
1&& 0&& 1&& 1
1&& 1&& 0&& 0
血样饱和度
为了识别不同的生理参数,对不同生理信号设置不同的信号标识进行相应的帧编码。对心电数据采用高8位的B6B5识别,其它的各类数据采用高8位的B6B5B4B3识别,各参数的具体识别方式如表3所示。编码后的数据经微控制器的UART0与nRF401实现无线发送。微控制器的UART0设置为工作模式1,波特率为9600bps。
系统软件采用模块化编程方法,根据功能将该系统程序分为六个基本模块:系统初始化模块(包括C微控制器I/O口设置、寄存器及变量的定义)、体温模块、心电模块、血压模块、血氧模块和无线传输模块。系统软件的流程如图5所示。&&来源:
技术资料出处:gtw
该文章仅供学习参考使用,版权归作者所有。
因本网站内容较多,未能及时联系上的作者,请按本网站显示的方式与我们联系。
【】【】【】【】
上一篇:下一篇:
本文已有(0)篇评论
发表技术资料评论,请使用文明用语
字符数不能超过255
暂且没有评论!
12345678910
12345678910
您最关心的搜索
开关电源电路的设计系统中的开关电源电路为蓄电池的充电提供稳定的电压采用的是反激式的开关电源电路。反激式开关电源的电路比较简单,比正激式开关电源少用了一个大的储能滤波电感,以及一个续流二极管,因此,反激式开关电源的体积要比正激式开关电源的体积小,且成本也要低。[][][][][][][][][][]关于c8051f 的一些问答40
上亿文档资料,等你来发现
关于c8051f 的一些问答40
网上看到的关于c8051f的一些问答:;1、问:内部时钟振荡器是否稳定?是否可以用于产生;答:不同器件的内部时钟振荡器的精度是不同的(±2;也将发生变化(6.5%/V);2、问:片内/外振荡器如何配置?;答:正确步骤:;1、允许外部振荡器;;2、等待1ms;;3、查询XTLVLD'0'-&'1';4、切换到外部振荡器;注意:振荡器频率的选择,即OSCX
网上看到的关于c8051f 的一些问答:1、问:内部时钟振荡器是否稳定?是否可以用于产生波特率的时基?答:不同器件的内部时钟振荡器的精度是不同的(±20%)。随电源电压变化,它也将发生变化(6.5%/V)。但基本不随温度变化(&1%温度变化范围-40℃~+85℃)。由于不同器件内部振荡器的离散性较大 ,所以不能用于产生波特率,应该外接标准晶体 。而有些器件,如C8051F3xx/f12x/f04x/f06x内部振荡器精度为±2%,可用于产生波特率 。2、问:片内/外振荡器如何配置?答:正确步骤:1、允许外部振荡器;2、等待1ms;3、查询XTLVLD '0'-&'1'4、切换到外部振荡器。注意:振荡器频率的选择,即OSCXCN寄存器的配置(外部振荡器频率控制位的设置)。3、问:C8051F MCU的指令执行速度为多少?答:C8051F MCU的CIP-51内核采用流水线结构,与标准的8051结构相比,指令执行速度有很大的提高 。标准的8051单片机执行一个单周期指令需要12个系统时钟周期,而C8051F MCU执行一个单周期指令只需要一个系统时钟周期。如果系统时钟频率为25MHz,执行一个单周期指令所需时间为40ns。4、问:切换外部晶振时应注意哪些问题?答:首先要允许外部振荡器,但此时的系统时钟源仍应是内部时钟,直到外部振荡器稳定后,才可将系统时钟源切换到外部振荡器上,否则会出现切换不过去,系统死机的情况。5、问:使用外部晶振应注意哪些问题?答:(1)、所有的模拟和数字电源引脚都应接电源(2.7~3.6V);(2)、C8051F3xx系列器件的晶振引脚间应跨接一个10M电阻(在新华龙网站的“主页”―“原理图 /PCB库”中有C8051F系列单片机的典型接线图);(3)、晶振、电容等相关器件尽量靠近单片机的晶振引脚。6、问:系统时钟切换到外部时钟后,内部的时钟是否应关闭?答:可以选择关闭或不关闭,但是从降低功耗的角度来说,应该关闭。7、问:系统时钟可不可以在程序中随时切换?答:可以,但是由内部再一次切换到外部时应按照技术问答2所介绍的步骤进行切换。8、问:使用外部晶振时如何配置芯片的引脚?答:对于芯片上有固定晶振引脚的设备(例如C8051F02X);相应时钟输入引脚按选择的晶振模式自动分配引脚;对于晶振引脚与GPIO共用的芯片(例如C8051F30X);晶振引脚要按下述方式进行设置:(1).外接晶体体时;XTAL1与XTAL2都要配置为模拟输入(2).外接振荡电路为“RC”或“C”方式时,XTAL2引脚要配置为模拟输入(3).外接CMOS时钟电路时,XTAL2引脚要配置为数字输入(4).以上几种方式在引脚的配置中都要使用跳过功能将此引脚跳过9、问:外接晶振的最高频率是多少? 答:外接晶振的最高频率是30MHz;10、模数转换问:从上电(或退出掉电模式)到ADC稳定开始转换需要多长时间?答:模拟建立时间也就是等待参考电平稳定的时间。它取决于接在VREF引脚的电容容量。此电容越大VREF的噪音就越小,ADC转换结果的噪音也就越小。如果用4.7μF电容,则稳定时间大约为2ms,如果无旁路电容(不推荐),稳定时间大约为10μS。注意:在开始转化之前,需要一个1.5μS的跟踪时间,这也就决定了ADC多路转换开关(MUX)的切换速度。11、问:ADC的最大输入电压及输入阻抗?答:ADC的最大输入电压为VREF,它的输入电压范围是0V-AV+/VDD。输入电容为10pF;输入阻抗等价于一个5kΩ电阻和一个10pF电容的串联。请参考应用笔记AN019“计算开关电容ADC的建立时间”。12、问:ADC可编程窗口检测器有什么用途?答:ADC可编程窗口检测器在很多应用中非常有用。它不停地将ADC输出与用户编程的限制量进行比较,并在检查到越限条件时通知系统控制器,这在中断驱动的系统中尤其有效,既可以节省代码空间和CPU带宽又能提供快速响应的时间。13、问:为了使ADC或DAC具有更好的性能,是否应在VREF 引脚接电容?答:推荐在VREF引脚接一个0.1μF的陶瓷电容器与一个大的电容(典型为4.7μF钽电容)。在VREF引脚加电容是为了降低VREF的噪声。因为VREF的噪声越小,ADC或DAC转换结果的噪声也就越小。且这两个电容在PCB板上应尽可能离VREF引脚近。14、问:内部参考电平是否可以用于外部电路的参考?答:可以,你可以用VREF信号作为输出驱动其它电路(像放大器的偏置电压等)。注意,VREF引脚只能提供源电流,也就是说,要有负载接地使电流流出C8051器件。例如,如果你将VREF连到OP运放的(+)节点,你要加一个下拉电阻对地(24K左右)将电流限制在100μA。15、问:如果测试的模拟输入电压范围是0-5V怎么办?答:因为模拟输入(AINx)引脚不能承受5V电压,任何引脚在任何情况下(不管ADC或PGA的设置如何)必须使其输入 电压保持在AGND和AV+之间,这是为了避免沉(或源)电流通过ESD保护装置。为了测试0-5V范围的信号,必须使信号衰减(衰减到AV+以下)才能进入到ADC输入。当使用外部VREF时,要求VREF的最大值比AV+小300mV。16、问:F02x器件内部有PGA(可编程增益放大器)可以对输入模拟信号进行放大。其中的一个放大倍数为0.5 倍。是否意味着我可以外接+6V的模拟输入电压,经过0.5倍的放大变成3V输入到AINx呢? 答:请注意:任何模拟引脚(数据IO口和VDD引脚除外)的最大输入电压为-0.3V到 VDD+0.3V。如果超出此范围可能造成器件永久损坏。在单端输入方式,有两个限制因素如下:(1)、AIN输入电压必须在AGND和AV+之间以避免吸/源电流流过ESD保护器件。(2)、AIN电压必须在AGND和(VREF / GAIN) 之间。假设一个12位的ADC,AINx 引脚的输入电压小于AGND,结果将是0x000;如果输入电压大于(VREF / GAIN) ,结果将是0xFFF。例如,使用外部1.25V参考,PGA增益为0.5,允许的电压输入范围是0V到 (1.25V / 0.5 = 2.5V)。17、问:如何提高系统的ADC的性能?答:第一、将模拟电源和数字电源分开,可以使用比较简单的方法,如在模拟电源和数字电源之间加简单的滤波。第二、将模拟地和数字地分开,并在电源附近通过磁珠连接。第三、制板时,大面积覆铜。第四、未使用到的模拟引脚要接地。第五、为了确保参考电压的稳定,参考电压引脚一定要接去耦电容。第六、模拟信号的输入电压范围是0-VDD,如果模拟输入的外围有可能侵入高电压(超过芯片的极限允许范围),就要采取保护措施(如加两个肖特级二极管)。如果模拟输入会有瞬间过电流,也要加限流保护。18、 问:如果使用内部参考源,C1的参考电压引脚如何连接?答:C2共有4个参考电压引脚,VREF,VREF0,VRFE1和VREFD。允许ADC和DAC使用一个外部电压基准或片内电压基准。通过配置VREF0CF基准电压控制寄存器,ADC0还可以使用DAC0的输出作为内部基准,ADC1也可以使用模拟电源作为电压基准。内部基准电压必须通过VREF引脚连接到芯片内部。所以当您的系统中使用到内部基准电压时,必须确保VREF与VREF0,VREF1,VREFD(全部或部分)引脚的连接。C3共有两个参考电压引脚,VREFA和VREF。如果ADC0和ADC1使用内部参考源,必须将VREFA与VREF引脚连接。注意:如果使用ADC或DAC,则不管电压基准取自片内还是片外,REF0CN寄存器中的BIASE位必须被置为逻辑1。19、问:为什么在进行A/D转换时测得的数据跳变很大?答:当输入信号有干扰脉冲、ADC的转换时间太短、在通道切换后通道还没有稳定就开始转换等原因都会导致转换后的数据跳变大,请仔细检查以上三点并做相应的处理就可以解决此类问题。20、问:在进行A/D转换时所测得的数据与计算所得的数据相差很大,但跳变不大,为什么?答:(1)、计算时所用的基准电压是多少,如果用的是内部基准,把内部基准电压通过交叉开关分配到芯片引脚上,再进行测量;(2)、换别的通道转换看是否正常。21、问:ADC的单端输入与差分输入的区别?答:在单端方式工作时;ADC转换的是单输入引脚对地的电压值;在增益为1时,测量的值就是输入的电压值;范围是0V到VREF;当增益增加时,输入的范围要相应的减小;在差分方式工作时;ADC转换的是AIN+与AIN-两个引脚的差值;在增益为1时,测量的值等于(AIN+)-(AIN-),范围是-VREF到+VREF;当增益增加时,输入的范围要相应的减小。注意:在差分方式时所提的负压是指AIN-引脚的电压大于AIN+引脚的电压,实际输入到两个引脚的电压对地都必需是正的;例如:如果AIN+引脚输入的电压为0V,AIN-引脚的输入电压为1/2VREF时,差分的输入电压为(0V-1/2VREF) = -1/2VREF。端口22、问:器件IO口的吸收(sink)电流和源(source)电流是多少?答:IO口的沉电流和拉电流的极限参数为100mA(但是此时已经不能保证端口的正常逻辑关系了)。具体的参数请参考datasheet的端口IO部分的“端口I/O直流电气特性”。23、问:端口是否要加保护?答:在端口电流瞬间跳变的情况下,建议加限流电阻进行保护。另外如果端口可能有超过极限电压范围的瞬变电平侵入,也要加瞬态保护。(瞬态保护的通常方式为接入TVS器件)24、问:C8051F系列单片机电源电压全部为2.7-3.6V,那么是否有与5V系统接口的比较简单的解决方案? 答:所有IO口允许5V(极限值为5.8V)输入,但是输出高电平为VDD。如果与5V系统接口,最简单的方法是开漏输出并在输出端加接5V上拉,关键是上拉电阻的选择。具体参考应用笔记AN011“在5V系统中使用 C8051Fxxx”。建议:如果可能,请尽量选用供电电压兼容的芯片,这是一种最理想的选择。25、问:模拟引脚能否简单地用于数字I/O?答:如果模拟引脚是独立的是不可以的。但是如果模拟引脚和数字IO是复用的,是可以通过SFR的设置来完成配置。26、问:C的p4-p7口和p0-p3口有什么不同?答:P0-P3口复位时为通用口,可通过Crossbar(数据交叉开关)寄存器按优先级设置成第二功能。而P4-P7口是通用口,另外P4-P7寄存器不能位寻址。27、问:如果通过Crossbar寄存器使能并分配为P0.0和P0.1引脚,那么,我还可以用这两个引脚为通用I/O吗?答:①如果你通过Crossbar使能一个外设,如UART,那么这个外设将控制这些引脚的输出状态(逻辑高/逻辑低)。②你可以在任何时刻读引脚的状态,与Crossbar控制与否无关。③当被禁止时,大部分外设的输出引脚被置为高阻态(UART口是一个很好的例子)。因为UART收发器无明确的禁止态,你可将相应的引脚置成开漏输出模式,也可以达到相同的结果,因为UART收发器在空闲时引脚为逻辑1。总的来说,Crossbar置配后在末使用时的外设引脚可以用于数据输入,但不能作为数据输出。其它器件,如F3xx系列,口引脚可通过Crossbar“重新声明”且用于GPIO引脚对器件管脚无影响,因为这些器件具有“引脚跳过”(PIN SKIP)特性。28、问:IO口的开漏和推挽输出如何使用?答:将端口引脚置成推挽输出方式,这将使能端口引脚驱动器。总体上来讲,数据输入端口引脚置成开漏方式、数据输出端口引脚置成推挽方式。当引脚用于输出连接上拉电阻(也就是说当与5V系统接口时)时配置成开漏输出。29、问:引脚P1.4~P1.7中断如何使用?答:如果外部中断(EX4-EX7)使能且相应的引脚P1.4~P1.7变低(可以是外部输入信号、写输出端口锁存或是Crossbar定义的外设启动的事件)。那么中断标志(PRT1IF.n)将置位,如果全局中断使能,将产生一个中断。中断逻辑检测本身的逻辑状态,与产生逻辑状态变化的原因无关。30、问:是不是所有的C8051F系列单片机的I/O口都是5V兼容?答:不是,例如C只有P0口是5V兼容,具体的要参照相关型号的数据手册。31、问:P4口的某些引脚已用为外部存储器的控制信号,剩下的口线能否作为普通I/O使用? 答 包含各类专业文献、文学作品欣赏、中学教育、各类资格考试、幼儿教育、小学教育、关于c8051f 的一些问答40等内容。
 关于C8051F的技术问答_工学_高等教育_教育专区。关于C8051F的技术问答,内容很详细...目标板上带有一块相应的 C8051F MCU 和一些简单的外围电路构成一个最小单片机...  如要投诉违规内容,请到百度文库投诉中心;如要提出功能问题或意见建议,请点击此处进行反馈。 加入会员!获取文档下载券
C8051F单片机技术问答 隐藏&& 问:IO 口的开...  提高 C 中 ADC 精度应注意的一些问题 总结一下影响精度的主要原因: 1、采样速率、字输出速率和抽取比决定了 ADC 的有效分辨率和精度,手册给出 了详尽的...  之后程序开始运行 2 程序丢失问题的出现和原因 在一些实际应用中, 系统重新上电后会出现程序不能正常运行的问题, 常表现为“程序丢失” 通常是由于程序代码被损坏...  在一些实际应用中,系统重新...C8051F 单片机程序丢失问题的原因分析 1 C8051Fxxx 单片机简单介绍和 Flash 结构...  关于C的设计报告_机械/仪表_工程科技_专业资料...元器件的封装做的不太标准, 以至于焊接的时候有些...其中最大的收获是锻 炼了我们自主分析问题的能力,...  注意的问题: 1.低端口既能按位寻址,也可以按字节寻址;高端口只能按字节寻址。...(推挽 方式在有些书中称为推拉方式) 关于开漏、推挽方式,漏级开路即高阻状态...  关于C芯片使用Keil uVision3软件的配置_信息与通信_工程科技_专业资料。...只有在有工程的环境下一些菜单中的选项才可用 一、打开 Keil uVision3 软件, ...  注意的问题: 1.低端口既能按位寻址,也可以按字节寻址;高端口只能按字节寻址。...(推挽方式在有些书中称为推拉方式) 关于开漏、推挽方式,漏级开路即高阻状态,... 上传我的文档
 下载
 收藏
 下载此文档
正在努力加载中...
基于C单片机的测控终端设计
下载积分:1000
内容提示:基于C单片机的测控终端设计
文档格式:DOC|
浏览次数:34|
上传日期: 11:44:11|
文档星级:
该用户还上传了这些文档
基于C单片机的测控终端设计.DOC
官方公共微信您当前的位置:&>&&>&
C在远程诊断与急救支援系统中的应用
摘要:介绍了一种基于C单片机的多生理参数采集装置。该装置作为远程诊断与急救支援系统的一部分,能动态地获取患者的生理参数,并通过无线方式传送给远端的会诊中心,使现场的医护人员能够及时得到远程会诊中心的专家指导,为远程医疗提供基本的医学信息。
随着多媒体技术、计算机网络和通信技术的发展,远程医疗成为目前国际上发展十分迅速的跨学科高新科技。远程诊断与急救支援系统是远程医疗的一个重要分支,依靠这个系统,可以将急救现场患者的各种生命信息传送给远端的医生,及时得到医疗指导或诊治。这对患者获得高水平的医疗服务及紧急情况时的急救支援,具有重要意义[1]。
系统中患者生理参数的获取和传输是一个重要组成部分,为此,笔者设计了以美国CYGNAL公司的SOC芯片C为中央控制单元的多生理参数的采集与无线传输装置。该装置由生理参数采集部分和实时无线数字传输的人机接口组成。这两部分做成一个小巧的装置,病人可以方便地携带在身上,连续动态地监测病人的体温、血压、血氧、脉搏、心电等生理参数,并将这些参数以无线方式发送到与网络相连的计算机上,经处理后传送到远端的会诊中心。利用该远程诊断与急救支援系统,会诊中心的专家可以了解病人的状况,及时指导现场的救护人员对患者实施恰当的救护措施。
1 硬件设计
基于C的多生理参数采集装置包括心电模块、血压模块、血氧模块、体温模块和无线数据传输模块五部分,各部分的协调工作和数据的无线传输由主微控制器C管理。主微控制器是该系统的核心,完成体温和心电参数的检测,负责控制其它模块并与之进行数据交换,同时还控制生理参数的无线传输。因此,对其运行速度和接口功能都有较高的要求。
C以其速度快、性能高等特点,能确保心电信号检测与处理的实时性要求。另外,其丰富的端口资源能满足各模块结构设计中所需的多种串行通信接口的需要。其中体温模块通过单线接口与微控制器双向通信;血压模块通过高速串行通信方式将采集的参数传送给C;血氧模块则通过UART将检测的参数结果传送给微控制器;无线传输模块也是通过微控制器的串口传送数据。C内部自带的A/D转换、D/A转换和串行口为系统设计省去了很多外围电路,大大减小了体积。其框架图如图1所示。
1.1 C简介
C是美国CYGNAL公司推龅幕旌闲藕畔低承酒??歉叨燃?傻钠?舷低场K?度肓艘豢罡咚佟⒌凸?摹⒏咝阅艿?位微处理器,最突出的特点是高速指令处理能力[2、3]。C采用CIP-51微控制器内核,与MCS-51指令完全兼容。CIP-51采用流水线结构,与标准的8051结构相比,指令执行速度有很大的提高。CIP-51在最大系统时钟频率25MHz工作时,其峰值速度可达25MIPS。
C除了具有标准8051的数字外设部件之外,内部还集成了数据采集和控制系统中常用的模拟部件和其他数字外设及功能部件。片内集成了多通道12位和8位A/D转换器以及一个双12位D/A转换器,两个增强型UART串口,便于模拟量和数字量的采集、控制和通信传输。该单片机还集成有4KB内部数据RAM和64KB Flash以及外部64KB数据存储器接口(可编程为复用方式和非复用方式)、总线接口、电压比较器、温度传感器等部件,比常规51单片机有更多的定时计数器、中断、数字I/O接口。片内还配置了标准的JTAG接口(IEEEll49.1)。在上位机软件的支持下,通过串行的JTAC接口可直接对安装在最终应用系统上的单片机进行非侵入式、不占用片内资源、全速在线系统的调试,无需另配编程器及仿真器,是目前功能最强大、性能价格比最好的单片机之一[4]。
&&& 1.2 各模块与微控制器通信的实现&&& 完成ADC0相应的寄存器设置后,采用定时器3设置心电采样时间间隔,心电的采样频率设为360Hz。当定时器3溢出中断时,启动ADC0开始转换。通过ADC0控制寄存器ADC0CN.5,判断转换是否结束。转换结束后,采样结果自动存放在ADC0H的低4位和ADC0L中。读取这12位心电数据并通过自适应算法抑制心电信号中的基线漂移,获得稳定的心电信号。
1.2.1 测温部分
采用DSl8B20温度传感器构成测温系统。DSl8B20是美国DALLAS公司生产的单线数字温度传感器,它可把温度信号直接转换成串行数字信号供微控制器处理。DSl8B20数字温度计能提供9位温度读数,通过单线接口与C的I/O口P1.0进行双向通信。读写及温度变换的功率来自于数据线而不需额外的电源。
1.2.2 心电部分
心电信号经过前置放大和第二级放大后送入C自带的A/D转换器进行采样。
C片内集成了两个多通道ADC子系统(每个子系统包括一个可编程增益放大器和一个模拟多路选择器)。选用ADC0将心电信号进行A/D转换。ADC0子系统包括:一个9通道的可配置模拟多路开关(AMUX0)、一个可编程增益放大器(PGA0)和一个100ksps的12位分辨率的逐次逼进寄存器型ADC,ADC中还集成了跟踪保持电路和可编程窗口检测器。所有这些特性完全由CIP-51通过特殊功能寄存器控制。心电信号采样的设置如下:(1)置AMUX0配置寄器AMX0CF=0x00;使AIN0~AIN7为独立的单端输入。(2)置AMUX0通道选择寄存器AMX0SL=0x00;选择AIN0为ADC0的模拟输入,即采集的心电信号从AIN0模拟通道输入C。(3)置ADC0配置寄存器ADC0CF=0x48;使ACD0采样/保持放大器获取输入的模拟信号的周期数为1/10个系统时钟,内部放大器增益为1。(4)置ADC0控制寄存器ADC0CN.0=0;使ADC0H和ADC0L寄存器数据右对齐;ADC0CN.7=1;ADC处于活动状态,并准备转换数据。(5)置EIE2.1=1;ADC0转换中断允许。
1.2.3 血压模块
血压模块与微控制器之间采用高速串行的通信方式,血压模块的工作状态、测量结果通过两个功能引脚输出,供微控制器处理。这两个功能引脚连接到C的两个I/O口,其中输出的串行时钟线连到I/O口P1.2,输出的串行数据线连到I/O口P1.3。若在一个时钟周期内数据线上出现一个电压由高到低的跳变,则开始接收数据。
输出的数据格式如图2所示。开始处的电压跳变如图3所示。开始表示在此后的16个时钟信号内将传送16位的数据,其高4位的数据表示数据类型,不同的编码表示不同的数据,如舒张压、收缩压和心率分别有各自的代码,如表1所示;而低12位数据则表示具体的数值,对应前面的数据类型可以得到收缩压、舒张压和心率的数据。
经过反复的比较和遴选,《今日电子》和21ic中国电子网举办的2013年度产品奖正式揭晓…
() () () () () () () () ()}

我要回帖

更多关于 c8051f021中文资料 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信