嵌入式系统/ARM技术中的双向透明串口扩展技术在嵌入式系统中的实现
嵌入式多参数监护仪系统中一般包括多个独立的硬件采集模块,每个硬件采集模块分别完成对人体的心电、呼吸率、体温、血压和血氧饱和度等生理参数的采集,并通过其串口接收HOST端的控制信息,定时向HOST端发送采集数据。 本嵌入式多参数监护仪HOST端使用AT91RM9200处理器,该处理器具有4个通用同步/异步接收/发送器(USART),其中一个是DEBUG串口,但它们都是分时复用的[1]。为了使HOST端更好地与各采集模块进行通信,必须解决其串口扩展的问题。 目前比较通用的串口扩展方案主要有2种。一种通过硬件实现,使用多串口ARM/MCU或专用串口扩展芯片,可供选择的串口扩展芯片有TI公 在嵌入式系统中,尤其是涉及多参数监护仪这样的应用,高效的通信机制至关重要。嵌入式系统通常包含多个硬件采集模块,每个模块负责特定生理参数的监测,例如心电图、呼吸率、体温等。这些模块通过串口与主机(HOST)进行通信,接收控制指令并发送采集数据。在本案例中,主机使用的是AT91RM9200处理器,该处理器内置了4个通用同步/异步接收/发送器(USART),但由于分时复用,无法同时连接所有采集模块。 针对串口扩展问题,有两种常见的解决方案。第一种是硬件扩展,利用多串口ARM/MCU或专门的串口扩展芯片,如TI的16C55X系列和国腾的GM812X系列。这些芯片通过并行接口扩展串行接口,提供较高的通信速度,但可能带来复杂的控制逻辑和较高的成本。另一种是软件模拟串口,虽然简单,但通常波特率较低,数据采样次数也有限,可能影响数据准确性。 在实际应用中,多数串口扩展方案仅支持单向传输,不透明,这限制了系统的灵活性和效率。因此,文中提出了一个双向透明串口扩展设计,允许主机与各用户设备之间的双向数据流,且通过仲裁机制确保数据传输的有序进行。 硬件设计方面,串口扩展模块包括一个AT89C2051单片机以及模拟开关CD4052和双4通道模拟开关。这些组件共同工作,实现4个用户设备的分时复用连接,通过硬件和软件的配合,仲裁数据传输路径。 通信协议设计上,分为两个方向:用户设备向主机发送数据和主机向用户设备发送数据。当用户设备请求发送数据时,通过I/O口线触发中断,AT89C2051仲裁并确定发送顺序。在数据传输过程中,根据各模块的优先级(如血压模块优先级高于心电和血氧模块)进行调度。主机向用户设备发送数据时,AT89C2051监听主机的串口选择命令,然后控制模拟开关,将数据导向相应的用户设备。 这种双向透明串口扩展技术不仅解决了主机与采集模块间通信的局限性,还确保了数据传输的实时性和可靠性,尤其适用于对数据传输有严格要求的医疗监护系统。通过这样的设计,嵌入式系统可以更有效地管理和处理来自不同采集模块的数据,提高系统的整体性能和稳定性。
- 粉丝: 4
- 资源: 949
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Gradle,Maven 插件将 Java 应用程序打包为原生 Windows、MacOS 或 Linux 可执行文件并为其创建安装程序 .zip
- Google Maps API Web 服务的 Java 客户端库.zip
- Google Java 核心库.zip
- GitBook 教授 Javascript 编程基础知识.zip
- Generation.org 开发的 JAVA 模块练习.zip
- FastDFS Java 客户端 SDK.zip
- etcd java 客户端.zip
- Esercizi di informatica!执行计划,metti alla prova!.zip
- Eloquent JavaScript 翻译 - 2ª edição .zip
- Eclipse Paho Java MQTT 客户端库 Paho 是一个 Eclipse IoT 项目 .zip