历史上的今天
返回首页

历史上的今天

今天是:2026年01月06日(星期二)

正在发生

2023年01月06日 | 以S3C2440为平台对智能模拟人控制箱和按压通气功能的设计与实现

2023-01-06 来源:elecfans

引 言

医学模拟教学是利用各种模拟手段, 再现临床医学的工作场景, 为学习者提供一个无风险的学习临床知识和技能的条件与环境。医学模拟教学以其对病人无创、方便、操作可重复、低成本等优势已经成为现代医学教学的主导方式之一。我国在临床医学模拟教学设备还处于比较低层次上, 高端的教学设备多数还以进口为主, 自主研发并实际应用很少。智能模拟人系统正是在这种情况下填补了现在国内市场的空白, 满足我国临床医学高层次实践教学需求。


智能综合模拟人系统采用目前国际医学模拟教学中比较流行的触觉感知技术, 可以逼真地模拟各种医疗过程, 并对各个过程进行实时监控。本文主要介绍医学教学和临床教学中常用的除颤, CPR 和Vent ilat io n 的操作实现方法, 它们在医学教学和临床教学中起到了桥梁作用, 使受训者的理论和临床实践很好地结合起来,极大地提高了受训者的应变能力和现场处理能力。


1 S3C2440 介绍

由于所需完成的功能众多, 对体积、功耗和性能诸多方面要求较高, 如果用传统的MCU 处理, 显然不能满足需要, 所以这里采用S3C2440 作为平台搭建系统, 三星公司推出的16/ 32 位RISC 微处理器S3C2440, 采用ARM920T 的内核, 0. 13 m的CMOS 标准宏单元和存储器单元, 采用了新的总线架构 AMBA。为手持设备和一般类型应用提供了低价格, 低功耗, 高性能小型微处理器的解决方案, 满足了系统搭建的要求。


1. 1 S3C2440 的功能

S3C2440 的杰出特点是其核心处理器( CPU ) , 是一个由Advanced RISC Machines 有限公司设计的16/ 32 位ARM920T 的RISC 处理器。ARM920T 实现了MMU, AMBA BU S 和Harvard 高速缓冲体系结构。


这一结构具有独立的16 KB 指令Cache 和16 KB 数据Cache。每个都是由具有8 字长的行组成。通过提供一套完整的通用系统外设, S3C2440 减少了整体系统成本和无需配置额外的组件 。


综合对芯片的功能描述, 总共有以下17 种功能:

( 1) 1. 2 V 内核供电, 1. 8 V/ 2. 5 V/ 3. 3 V 存储器供电, 3. 3 V 外部I/ O 供电, 具备16 KB 的ICache 和16 KB DCache/ MMU 微处理器。

( 2) 外部存储控制器( SDRAM 控制和片选逻辑) 。

( 3) LCD 控制器( 最大支持4K 色ST N 和256 色TFT) 提供1 通道LCD 专用DMA。

( 4) 4 通道DMA 并有外部请求引脚。

( 5) 3 通道U ART 。

( 6) 2 通道SPI。

( 7) 1 通道I2SBU S 音频编解码器接口。

( 8) 1 通道I2CBUS 接口( 多主支持) 。

( 9) AC97 解码器接口。

( 10) 兼容SD 主接口协议1. 0 版和MMC 卡协议2. 11 兼容版。

( 11) 2 端口U SB 主机/ 1 端口U SB 设备( 1. 1 版) 。

( 12) 8 通道10 比特ADC 和触摸屏接口。

( 13) 具有日历功能RT C。

( 14) 相机接口( 最大4 09* 096 像素的投入支持) 。

( 15) 130 个通用I/ O 口和24 通道外部中断源。

( 16) 具有普通、慢速、空闲和掉电模式。

( 17) 具有PLL 片上时钟发生器。


1. 2 S3C2440 的主要特性

S3C2440 相对于MCU 有许多不同的特性, 主要应用于智能模拟人系统功能的特性包括以下几方面:

( 1) 体系结构: 加强的ARM 体系结构MMU 用于支持Linux 。

( 2) 系统管理器: 支持高速总线模式和异步总线模式, 寻址空间每BANK 128 MB( 总共1 GB) , 支持掉电时SDRAM 自刷新模式。

( 3) RT C( 实时时钟) : 32. 768 kH z 工作, 具有报警中断和节拍中断。

( 4) 通用I/ O 端口: 24 个外部中断端口, 130 个多功能输入/ 输出口。

( 5) U ART : 3 通道U ART , 可以基于DMA 模式或中断模式工作。

( 6) A/ D 转换和触摸屏接口: 8 通道多路复用ADC, 最大500 KSPS。

( 7) 工作电压: 输入/ 输出3. 3 V, 同时有5 V 供电电压接口。


2 智能模拟人功能实现

2. 1 控制箱功能的实现

模型人信息采集模块是整个系统正常工作的保证,信息采集的精度、可靠度决定了整个系统的性价比。模型人的信息采集分为数字量信息采集和模拟量信息采集两部分。


数字量信息采集主要是采集模型人身上的开关量,主要包括对模拟人体生命体征监护仪信息、气管插管术信息、模拟静脉给药信息、模拟胎儿监护仪信息采集、模拟血压仪的信息和模拟脉搏氧饱和度信息采集。主控制器实时扫描感应器终端, 拾取感应器信息, 经处理后通过通信系统传给上位机。系统采取了系统扩展I/ O口和主控制器I/ O 并行与位置传感器终端相连采取位置感应器信息。


具体体现在智能模拟人的控制箱功能包括:

APEX, A ED, ECG, BP, T EP, SIP 的控制, 总共需要14 个I/ O 口进行配置相应的操作, 通过GPIO 驱动定义S3C2440 的外设引脚功能, 当对I/ O 口进行上电操作时 , 通过U ART 向上位机发送14 位相对应的数据,从而使相应的功能实现, 具体表现是上位机的控制箱界面的相应功能按钮将会显示绿色, 否则, 表示未启动功能( 此时状态为红色) , 具体表现是上位机的控制箱界面信号灯不显示, 如图1 所示。

以S3C2440为平台对智能模拟人控制箱和按压通气功能的设计与实现

图1.。 ADC 信号采集电路图。

2. 2 按压和通气功能的实现

2. 2. 1 按压和通气功能的特点

模拟量信息采集主要是指心肺复苏术信息采集, 模型人心肺模拟采用气囊方式, 所以心肺复苏术信息采集采用了气体压力传感器的方式进行。系统采用了MPX2010 型双通道压力传感器和LM358 运算放大器组成的信息转化电路分别对CPR 中的按压和通气的信息进行采集。


智能综合模拟人系统采用了MPX2010 型双通道压力传感器和LM358 运算放大器组成的信息转化电路分别对CPR 中的按压和通气的信息进行采集。


MPX2010 能提供一个精确的直接与外加压力成正比的线性电压输出, 此类传感器将应变计和薄膜电阻网络集成在同一硅片上, 用激光修正技术实现精确的量程校正、零位偏差校正和温度补偿。系统利用运算放大器将压力传感器输出的微小电压信号放大至与单片机内部的A/ D 转换器相容的电平, 使传感器与单片机接口匹配。MPX2010 特点有: 温度补偿范围在0~ + 85 ? ;电源电压成比例; 微分和规范操作; 主要应用于呼吸诊断、航空运动控制、控制器、压开关。


LM358 包括有两个高增益、独立的、内部频率补偿的运放, 适用于电压范围很宽的单电源, 而且也适用于双电源工作方式, 它的应用范围包括传感放大器、直流增益模块和其他所有可用单电源供电的使用运放的地方使用。LM358 的特点如下: 内部频率补偿; 低输入偏流; 低输入失调电压和失调电流; 直流电压增益高( 约100 dB) ; 单位增益频带宽( 约1 MHz) ; 电源电压范围宽: 单电源( 3~ 30 V) ;CPR 信息采集采用了MPX2010 型双通道压力传感器, 经过LM358 进行线性放大后传给MCU 的A/ D采集控制器进行采集, 电路图如图2 所示。

以S3C2440为平台对智能模拟人控制箱和按压通气功能的设计与实现

图2 ADC 信号采集电路图。

在完成之上所述的信号采集后, 选用S3C2440 自带的UART 串口完成ARM 与上位机软件的串口通信。


串行接口是S3C2440 与外部设备的主要通信接口之一。只需要1 条信号线就可以进行单向数据传送。


由于线路简单, 价格相对较低, 得到了广泛应用。

PC 机与下位机串口连接如图3 所示。

以S3C2440为平台对智能模拟人控制箱和按压通气功能的设计与实现

图3 PC 机与下位机串口连接图。

一般情况下, 串口通信采用两种方法: 一种方法是利用Window s 的通信API 函数; 另一种方法是利用Visual C+ + 的Act iv ateX 控件。Window s 的API 函数使用起来比较灵活, 实现通信的效率也是最高, 所以系统采用利用Window s 的API 函数进行串口通信的开发。程序中thr ead _ com 类对串口操作的Window sAPI 函数进行了封装, 此类实现了对串口同步接收、异步接收以及线程监控模式异步接收。thread_com 类的成员函数如表1 所示。


表1 thread_com类的公共成员函数

以S3C2440为平台对智能模拟人控制箱和按压通气功能的设计与实现

2. 2. 2 通气和按压功能的实现

根据上面所说的情况, 可以完成CPR 中通气和按压功能的实现, 将ADC 驱动烧录至S3C2440 进行压力传感器的信号采集和转换, 由于采用的双路信号, 就需要将压力传感器的取值范围分为两段, 取中值后, 设定大于中值时, 完成按压功能响应; 小于中值时, 完成通气功能响应; 在不对传感器操作的时候, 不响应 。在采集到压力信号的同时, 向上位机发送8 位UART 数据,进行按压和通气显示条的操作, 具体表现为: 当按压或者通气值满足系统设定的条件时( 初始状态为蓝色) ,按压或通气条显示绿色, 否则为红色。具体如图4所示。

以S3C2440为平台对智能模拟人控制箱和按压通气功能的设计与实现

图4 上位机按压和通气进度条。


3 功能实现过程中遇到的问题

用S3C2440 可以很好地满足设计功能需求, 显示效果也比较满意, 但是在具体实现过程中, 遇到很多问题, 比如, S3C2440 内核自带的ADC 驱动的中断号和编写的ADC 驱动的中断号冲突的问题; 一些外扩的I/ O 口已经被占用的问题; 与上位机通信过程中, 数据包的传输问题; 按压和同期进度条显示速率的问题等。


通过以下步骤可以很容易地解决这些问题:

( 1) 根据用户手册, 重新烧录Bo ot load 时, 要对I/ O口进行重新配置, 使之满足智能模拟人控制箱的配置需要;( 2) 如果不需要使用触摸屏的话, 可以对S3C2440进行裁剪, 卸载ADC 触摸屏驱动; 如果仍需要使用触摸屏, 可以改用查询方式完成功能;( 3) 对上位机和下位机设置同样的波特率, 并建立链表, 在满足条件的情况下, 再进行数据的传输, 避免传输数据有误造成的功能显示问题;( 4) 对按压和通气进度条的传输数据进行参数调整, 同时结合上位机的参数进行调试 , 设置加权系数,可以完善进度条显示速率问题。


4 结 语

主要讨论了用S3C2440 开发智能模拟人控制箱和按压通气功能的实现, 并介绍了上位机与下位机的通信, 对在此过程中遇到的中断号冲突, 进度条显示速率过慢等问题, 也提出了相应的解决的方法。

推荐阅读

史海拾趣

智浦欣(Chipstar)公司的发展小趣事

随着公司规模的不断扩大和业务的快速发展,智浦欣公司意识到,必须加强内部管理和人才培养才能确保公司的持续健康发展。于是,公司引进了一套先进的管理体系和人才培养计划。在管理体系方面,公司建立了完善的组织架构和业务流程,提高了工作效率和协同能力;在人才培养方面,公司注重员工的个人发展和职业规划,提供了多样化的培训和学习机会,激发了员工的工作热情和创新能力。

Corstat Containers公司的发展小趣事

在环保意识日益增强的背景下,Corstat Containers公司积极响应,推出了可回收、可降解的环保电子元件包装盒。这一产品不仅满足了市场对环保产品的需求,还为公司赢得了良好的社会声誉。同时,公司还加大了对环保技术的研发投入,不断推出更加环保、高效的电子产品包装解决方案,进一步巩固了其在电子行业的领先地位。

BURGESS公司的发展小趣事

2001年对BURGESS来说是具有重要意义的一年。在这一年,BURGESS荣获了女皇赏,这是对其卓越业绩和贡献的极高认可。同时,BURGESS还售出了由Lurssen船厂制造的当时世界上最大的私人超级游艇,这一成就再次证明了其在游艇经纪行业的卓越地位。

AMI Semiconductor公司的发展小趣事

随着时间的推移,BURGESS不断扩展其业务范围,并于1984年首次开发租船服务。这一创新举措不仅满足了客户多样化的需求,也进一步巩固了其在行业内的领先地位。此后,BURGESS继续其国际化步伐,成功进驻美国市场,进一步扩大了其全球影响力。

EETools公司的发展小趣事

EETools始终坚持以客户为中心的服务理念。公司深入了解不同行业客户的需求和痛点,为他们提供定制化的嵌入式系统解决方案。无论是医疗设备、汽车电子还是工业自动化等领域,EETools都能为客户提供高效、可靠的嵌入式开发工具和服务。这种以客户需求为导向的服务模式不仅赢得了客户的信任和好评,还为公司赢得了更多的商业机会。

Hi-Light Electronic Co Ltd公司的发展小趣事

为了进一步扩大市场份额和提升品牌影响力,EETools积极拓展海外市场。公司通过与海外代理商和合作伙伴建立紧密的合作关系,成功将产品推向全球各地。同时,EETools还积极参加国际电子展会和论坛,与全球同行交流经验和技术,不断提升自身的知名度和影响力。

问答坊 | AI 解惑

做PCB设计的不久以后就要下岗了

索尼公司今天宣布,已经成功开发出“全球首个毫米波内部连接无线技术”,可在电视机等电子设备中用高 速无线连接,替代电路板上的有线连接,降低芯片和其他零部件尺寸和成本,从而令最终产品更加轻薄、可靠而廉价。当今的各种电子设备功能越来越强 ...…

查看全部问答>

Windows CEnet的智能移动信息终端设计.pdf

Windows CEnet的智能移动信息终端设计.pdf…

查看全部问答>

关于串口驱动

个人理解 微软显示串口驱动的MDD层 自己要实现PDD层 今天在PB5.0下看到这个 D:\\WINCE500\\PUBLIC\\COMMON\\OAK\\DRIVERS\\SERIAL中有一个SERPDDCM文件夹 看名字好像是串口驱动的PDD 想问下这是个什么东西 如果是PDD 那写串口驱动还需要做些什么 ...…

查看全部问答>

【参与有分】EBoot升级Image时会用到带有"N000FF"的Image文件,这种文件怎么得到?

**************************问题描述******************************* 使用MS的EBoot升级Image的时候,代码上依次会走下面的流程:     OEMPlatformInit( )----初始化板上设备(初始化显示、RTC、OAL与eboot共享参数、打印用户菜单、网 ...…

查看全部问答>

请问NK调入内存并开始执行后,为何还要读FLASH?

如下所示,EBOOT已经把NK调度到内存,并且已经跳到NK去执行。为什么NK还要初始化FLASH,并且要花十几秒的时间去读FLASH? Windows CE Kernel for ARM (Thumb Enabled) Built on Feb  8 2007 at 23:36:51 ProcessorType=0920 &nbs ...…

查看全部问答>

LIST BOX显示数据的问题

{          // TODO: 在此添加控件通知处理程序代码          int nEngineType;          int OpenMode;           ...…

查看全部问答>

单片机学习方面的问题!

我想学单片机,现在准备买设备。大家帮忙推荐几个好点的东西。 编程器我想买多功能编程器,不知道有哪些?还有其他的配件大家也帮帮忙推荐一下,我现在对这方面还不懂。 我学过c,8086汇编,模拟电路,数字电路 微机原理 verilog等课程。欢迎大 ...…

查看全部问答>

ucos-ii任务划分设计

比较详尽的介绍如何对基于ucos-ii的系统中进行任务的划分…

查看全部问答>

俺的C习题(7)——这其实也是个没啥技术含量的

如题,没啥技术含量,不过,我记得我最初对这个题目很是蛋疼。为何?全在于理解上出了问题。我以为,这个题的奥义是要实现在一组元素上任意顺序的四则运算符。不过这也不难,当时我考虑的方法是。做一个和数据元素一样长或者小一个单位的数组,用来 ...…

查看全部问答>

LPC9221 io口设置与使用

我有个nxp p89lpc9221芯片,用来控制7段数码管显示,用ICP口编程。 我现在设置p0.0,p0.1,p0.2为开漏输出;P0M1 |= 0x07;   P0M2 |= 0x07; 三个脚都上拉到3.3v; 然后设置三个脚输出为0: sbit p00 = P0 ^ 0; sbit p01 = P0 ^ 1; sbit ...…

查看全部问答>