法香是什么菜| 萤火虫为什么会发光| 什么心什么目| 爱马仕是什么意思| 红蓝是什么意思| 杠杆炒股是什么意思| 蜂胶有什么作用和功效| 皮内瘤变到底是什么意思| 九零年属什么生肖| 轻奢什么意思| 子宫直肠凹积液是什么意思| 什么是对的人| 手电筒什么牌子的好| 前列腺炎吃什么中成药| 胆管结石用什么药能把它除掉| 感觉有痰咳不出来是什么原因| 微信证件号是什么| 金鱼藻是什么植物| hcg高代表什么| 医院总务科是干什么的| 晒太阳有什么好处| 什么人不能吃西洋参| 上相是什么意思| 副词什么意思| 炎症反应性细胞改变是什么意思| 00年属什么的| 哺乳期头痛可以吃什么药| 和田玉对身体有什么好处| 脚汗多是什么原因| 老年人适合喝什么茶| 水中毒是什么| 人参长什么样子图片| 溥仪什么时候去世的| 头疼 挂什么科| 叩首是什么意思| 什么是问题| 白癜风是什么样子的| chloe是什么意思| 老年人嗜睡是什么原因| berries什么意思| 智齿是什么牙| 脚冰凉是什么原因| 什么去火| 前列腺增生有什么症状| 猫需要打什么疫苗| 人巨细胞病毒是什么病| 做梦梦到理发是什么征兆| 范冰冰和洪金宝什么关系| 泌尿内科主要看什么病| 咳嗽咳到吐是什么原因| 上海新华医院擅长什么| 厥阴是什么意思| 97年什么命| 一垒二垒三垒全垒打是什么意思| 红酒为什么要醒酒| 梦到牛是什么预兆| 肚脐眼上面痛是什么原因引起的| 贫血吃什么东西好| 山楂有什么功效| 人的血压一天中什么时候最高| 怀孕前壁和后壁有什么区别| 胃烂了是什么病严重吗| 留低是什么意思| 东字五行属什么| gel是什么意思| 红豆吃多了有什么坏处| 什么奶粉比较好| 血小板分布宽度低是什么原因| 眼镜pd是什么意思| 穿什么颜色衣服显白| 舌裂纹吃什么可以恢复| 什么和什么不能一起吃| 国民党为什么会失败| 一个三点水一个及念什么| 什么动| 拉拉什么意思| 勿忘心安是什么意思| 眉目传情什么意思| 重庆房价为什么这么低| 宝宝反复发烧是什么原因| 驾驶证b2能开什么车| 口干是什么病| 手指关节痛是什么原因| 垫脚石是什么意思| 荷字五行属什么| 凉粉果什么时候成熟| 晚上梦见蛇是什么预兆| 龋齿什么意思| 产妇喝什么汤下奶最快最多| ny是什么品牌| 酸菜鱼里面加什么配菜好吃| 自费是什么意思| 白带黄什么原因| 胡萝卜不能和什么一起吃| 乳腺靶向检查是什么| rpl是什么意思| 我一言难尽忍不住伤心是什么歌| 轶字五行属什么| 35岁月经量少是什么原因| 核磁共振是检查什么的| 男性吃什么生精快| 迁徙是什么意思| 炒锅买什么材质的好| 出国需要什么手续和证件| 脏器灰阶立体成像是检查什么的| 什么时候可以领退休金| 胃疼喝什么粥| 胃ca是什么意思| mickey是什么牌子| 惢是什么意思| 方形脸适合什么发型| 烂仔是什么意思| 国防部部长是什么级别| 灵芝适合什么样的人吃| 尾巴骨疼挂什么科| 慢性咽炎吃什么药| hrd阳性是什么意思| cap是什么| 胆囊壁增厚吃什么药| 备孕需要吃什么| 尿液臭味很重什么原因| 湿气是什么意思| 西洋参跟花旗参有什么区别| 褶皱是什么意思| e抗体阳性说明什么| 肛门痒痒的是什么原因| CHANDO是什么牌子的化妆品| 耍朋友是什么意思| 吃什么可以排出霉菌| 黄体回声是什么意思| 低压高吃什么药| 98年是什么年| 突然流鼻血是什么征兆| 属龙的和什么属相最配| 女真人是什么民族| 什么人不能吃马齿苋| 湿气重吃什么药| 梅毒螺旋体抗体阳性是什么意思| 口比念什么| 文化大革命是什么时候开始的| 什么如生| 罗贯中和施耐庵是什么关系| 浮粉是什么原因引起的| 72年是什么年| 考虑是什么意思| 血压低会导致什么后果| 氯雷他定为什么比西替利嗪贵| 胃溃疡吃什么药| 屁眼疼痛什么原因| 两鬓斑白是什么意思| 吃什么治肝病| 中耳炎吃什么药最有效| 明天属什么生肖| 女人腰椎疼是什么原因| 乳腺穿刺是什么意思| 12345是什么投诉电话| 硫酸羟氯喹片是治什么病| 马润什么意思| 蜂蜜水什么时间喝最好| 脸上长斑是因为什么原因引起的| 皮下囊肿是什么原因引起的| 掏耳朵咳嗽是什么原因| 狼入虎口是什么意思| 特别容易出汗是什么原因| 三点水加个有字念什么| 肌酐为什么会升高| 下巴底下长痘痘是什么原因| 便秘挂什么科| 女生下面叫什么| 一什么永什么成语| 38妇女节送老婆什么礼物| 拉肚子能吃什么水果| 拔完牙吃什么消炎药| 9月14是什么星座| 前胸后背出汗是什么原因造成的| 黄色加蓝色等于什么颜色| 头皮痒是什么原因引起的| 护士资格证什么时候考| 狗又吐又拉稀吃什么药| 散光和近视有什么区别| 九月是什么星座的| 为什么叫拉丁美洲| 红脸关公代表什么意思| 失不出头念什么| 散光轴位是什么意思| 磨砂膏有什么作用| 四月18号是什么星座的| 急性肠胃炎吃什么食物| 胖大海和什么搭配最好| 胃酸吃点什么药| 近视眼底改变什么意思| 肾结石吃什么食物好| 威海有什么好玩的| 舌苔白厚腻吃什么药见效快| 怀孕1个月有什么症状| 眼花缭乱的意思是什么| 梦见种菜是什么意思| 手术室为什么那么冷| 肚子疼拉肚子挂什么科| 甲状腺结节挂什么科室| 藜芦是什么| 为什么地球是圆的| 舌头裂痕是什么原因| 企业性质指的是什么| 缺钙吃什么食物| 外贸原单是什么意思| 粘连是什么意思| 什么鱼最迟钝| 藏青色配什么颜色好看| 脉搏低是什么原因| 关节间隙变窄什么意思| 经常吃莲子有什么好处| 脑梗有什么症状| 梦见小白蛇是什么预兆| 1999是什么年| 女人血虚吃什么补最快| 雪里红是什么| 经常上火是什么原因| 头麻是什么原因| 食指是什么经络| 孔雀的尾巴像什么| 双绉是什么面料| 补体c4偏低是什么意思| 孩子睡觉咬牙齿是什么原因引起的| 990是什么意思| 荨麻疹是什么引起的| 安全起见是什么意思| amv是什么意思| 秦始皇的佩剑叫什么剑| nary是什么牌子的手表| 企业hr是什么意思| 西双版纳有什么好玩的| 鲁迅真名叫什么| 夹腿是什么意思| glu是什么意思| 天涯是什么意思| 黄豆可以和什么一起打豆浆| 女人脸黄是什么原因该怎么调理| 看包皮挂什么科| 韭菜花炒什么好吃| 没有奶水怎么办吃什么能下奶| 病假需要什么医院证明| 不靠谱是什么意思| 凌晨的凌是什么意思| 黑头发有什么好处脑筋急转弯| 媾什么意思| lm是什么意思| 玄牝是什么意思| 孕妇吐得厉害有什么办法解决| 微信屏蔽是什么意思| 复方氨酚烷胺片是什么药| 嗓子疼吃什么药最管用| 势在必得是什么意思| 睡不着挂什么科| 单纯疱疹病毒吃什么药| 什么时候情人节| 亥时是什么时候| 2004是什么年| 射手座男生喜欢什么样的女生| 脑梗做什么检查最准确| 武警是干什么的| 一月28号是什么星座| 公园里有什么有什么还有什么| 什么叫裸眼视力| 百度

新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于S3C44B0X的心电血压监测仪USB接口设计

HTC one x10多少钱 HTC one x10什么时候上市

作者: 时间:2025-08-04 来源:网络 收藏
百度 2017德勤教育行业报告也显示出早教机构跨地域与全产业链发展的趋势,具体表现之一是企业以早教为平台,延伸至整个母婴产业。

摘 要:本文介绍了一种应用于家用心电与计算机进行高速数据传输的接口方案,采用ARM内核控制器与专用控制芯片,实现了心电、血压数据的快速无失真传输,重点阐述了控制芯片N9603的硬件连接和USB固件设计,以及上位机WDM驱动程序的开发思路和方法。
关键词:USB接口;ARM微控制器; 远程医疗;心电监测

引言
家用心电血压监测系统由采集记录设备和上位机电子病历管理系统组成,因此,需要解决数据传输方式问题。传统的通信接口采用简单的RS-232串行UART ,这种方式速度慢且适用性差,而USB转串口芯片的传输性能不能得到根本改善。USB总线接口则具有速度快、易于扩展、支持热插拔、使用灵活方便等优势,尤其适用于家用设备与计算机的通信连接。

本文重点讨论USB通信协议及其接口芯片的控制方法,针对临床需求,设计实现了具有心电、血压智能监测和USB高速数据传输功能的小型化设备,提供心电、血压数据电子病历查询、打印和网络传输等功能,对于提高家庭健康保健水平具有很重要的意义。

监测仪的USB接口电路设计
系统主控制芯片采用32位高性能嵌入式ARM微处理器,USB专用控制芯片选用USBN9603。USBN9603内置7个FIFO端口,包括1个双向的控制端口,3个发送端口和3个接收端口,各有64字节。

USB控制器与的接口电路如图1所示。将USB控制器设计为Bank2,即将nGCS2存储体选择线作为USBN9603的片选线,则该芯片的片选地址为0x4000000。本文采用并行数据接口,两个芯片的低8位数据线D0~D7相连接,并行传输通信数据。将MODE0和MODE1引脚都接地,配置USBN9603为非复用方式,由于此工作模式需要地址线A0作为存取USBN9603片内寄存器DATA_IN、DATA_OUT和ADDR寄存器的选择线,需连接32位地址总线中的A18到USB控制器的A0。对USBN9603进行读写操作时,分为两个总线周期:首先,将地址线A0置高,即设置总线地址为0x4040000,将待访问寄存器的地址从数据线D[0:7]写入,这样,就在第一个总线周期将地址送到芯片;然后,在第二个周期,将A0置低,即设置总线地址为0x4000000,读写D[0:7]即可实现对寄存器的读写操作。整个USB通信过程主要是处理包括接收、发送数据等各种中断事件,将USBN9603的INT引脚连接到S3C44B0X的外部中断EINT0引脚,设置USB中断为向量中断请求模式。由于未使用DMA方式,需将DACK置高,DMA请求线DRQ悬空。USB电缆有4条导线,D+和D-是USB差分信号线,另外两个分别是5V电源线和地线。USBN9603支持低速和全速的USB通信,在D+信号线上连接1.5KΩ上拉电阻,使其工作在全速模式。

监测仪的USB接口固件实现
USB通信过程的操作是从主机开始的,按照约定的时序先发出一个令牌包,包含操作类型、方向、外设地址及端点号等信息,然后在令牌中指定数据发送者发出一个数据包或者指出没有数据传输。而USB外设要以一个确认包作出响应,表示传输成功。

本文采用主从式USB通信结构,上位机通过发送各种事先约定好的协议命令,来实现对心电、血压数据的采集及对系统设备的初始化设置,主要包括以下几种数据:心电数据以段为单位,每段包括32KB心电数据及6B的采集时间信息,每次传输若干段,数据量大,对传输可靠性要求也高;血压数据包括舒张压和收缩压及其采集时间,共10B,由于血压监测比较频繁,每次会传输一段时间内的血压监测数据,数据量也比较大;下载升级版的固件等文件信息 。这3种数据的数据流量都比较大,而且可靠性要求都较高,3种数据均选用块传输通道类型,另外,每个USB传输都必有控制传输通道。因此,需要使用3个通道,即控制通道、BulkIN通道和BulkOUT通道。


图1 系统扩展存储器和USB接口原理图

USB固件数据结构
本文涉及USB设备配置枚举阶段上位机在控制传输中要求设备传输的4类描述符,按照层次依次为:设备描述符、配置描述符、接口描述符和端点描述符,其中,较高阶描述符会通知主机任何其它低阶的描述符信息。

设备描述符是在设备连接时主机第一个读取的描述符,每个设备只能有一个设备描述符,包含整个设备的信息以及设备支持的配置号码,共18个字段。每个USB设备有一个或多个配置描述符,包含设备的电源管理以及设备配置所支持的接口号码,当设备收到获取配置描述符的要求后,传送该配置描述符及其所有接口、端点和其它附属描述符给主机,本文设置一个配置,其描述符共8个字段。接口包含一组端点,本文设置一个接口,其描述符有9个字段,为上位机提供了设备使用端点的数目及其类型等信息。每个接口描述符有零个或多个端点描述符,包含主机与端点通信所需的信息,端点0作为控制端点来通信,端点1和端点2分别为块传输模式,其描述符包含了端点号、传输方向、端点传输类型、数据包最大传输字节等信息。


图2 USB固件框架

USB固件通信流程
USB固件框架流程如图2所示,在进入通信模块后,固件首先调用初始化例程,配置USB接口设备,并使其进入操作状态,然后启用中断,USB通信的主要功能是在中断服务中实现的,主程序只是在循环等待是否有退出的按键,当检测到中断信号时,就会进入中断服务子程序,根据寄存器MAEV的值,判断中断类型,并进入相应的处理过程。

设备的USB通信主要实现心电和血压数据的Bulk传输功能。在USB总线收发数据的通信协议基础上,监测仪还有特定的应用层通信协议。固件接收到用户通信命令后,解析控制命令并执行相应的例程。如传输心电和血压数据命令0x10,固件接收0x10命令码后,从命令参数中获取待传输数据长度、心电或血压的选择传输标志及其记录号等信息,根据记录号调用GetRecordData(),从Flash存储区中查找数据并存入BulkState的发送缓冲区,如果传输心电数据则还需通过Gettime()获得该段心电数据的采集时间。所有待发送数据准备就绪后开始传输,由于Bulk传输的最大缓冲区为64B,首先发送64B数据,然后在TX_EV例程中判断上位机是否接收成功,若成功则传输下一批块输入事务,否则需要重发,循环重复上述过程直到数据发送完毕。

USB固件各模块例程
初始化
USB接口的初始化例程,包括USBN9603芯片的初始化操作和用户变量的初始化,之后开始设备枚举操作。在初始化阶段,固件需要严格按照顺序对USBN9603的寄存器进行操作。

USB设备枚举过程
将系统的USB连接线接入一个USB连接端口(集线器或主机根集线器),设备处于开机状态;在USB的D+和D-数据线和所接入的集线器端口或主机的根集线器之间有两个15KΩ的上拉电阻。此时,上拉电阻会使数据信号线上的电平上升,通知集线器有新设备接入;然后,集线器使用中断通道,报告给主机所发生的事件,确实有新设备接入时,主机向连接设备的集线器发送Set_Port_Feature要求,使集线器向端口发送USB硬件复位命令并持续10ms,然后识别设备的速度。此时,设备已经完成了初始化操作,在主机证明设备已经离开重置状态时,开始在端点0的默认通道上进行USB控制传输,进入枚举阶段。

块传输标准例程
固件的发送例程通过端点1实现到主机的块传输功能,其流程如图3所示。以上传心电数据为例,固件通过端点0接收主机的上传心电数据要求后,将待传送的数据存入writePtr缓冲区,同时,把待传输的数据、大小等信息存入bulkState。


图3 块传输发送模块例程

固件的接收例程通过端点2从主机接收数据,主机先发送一个OUT信令到端点2,SIE从收发器自动接收数据并存储到FIFO2,FIFO2会自动更新接收控制寄存器RXC的状态,数据接收的硬件操作完成后,USBN9603会把一个接收中断传送到S3C44B0X处理器,固件执行接收中断服务例程。

USB通信协议的主机端实现
WDM驱动程序包括设备功能驱动程序和总线驱动程序。其中,总线驱动程序由Windows提供,本文主机端软件包括以下3个层次:用户模式下的应用程序、实现USB通信的Win32API动态连接库以及核心模式下的WDM设备功能驱动程序。动态连接库封装了访问核心模式驱动程序的函数,并为用户应用程序提供了访问接口,用户应用程序只需调用即可实现特定数据的传输,而主机端软件设计的核心就是如何开发WDM设备功能驱动程序。

在Windows2000平台安装Windows2000 DDK,使用Visual C++6.0作为开发工具,同时借助DriverWorks工具包和内核代码调试工具模块SoftICE,以及USB总线监测工具Bus Hound进行WDM驱动程序的开发。

根据DriverWizard向导提示,选择设备类型为USB ;选择I/O请求包IRP的处理方式为IRP排队方式;创建设备接口为128位的全局唯一标识符(GUID)标识,使得在使用CreateFile()函数打开设备时,WDM能通过GUID识别和访问设备的驱动程序;配置控制、BulkIN和BulkOUT这3个端点分别传输命令和数据。配置3个IOCTL控制命令:MYUSB_IOCTL_ COMMAND是主机发送通信命令的控制命令,其IoctlCode为0x812;MYUSB_IOCTL_ BULK_READ和MYUSB_IOCTL_BULK_ WRITE分别发送Bulk数据传输的读写命令,其IoctlCode分别为0x814和0x815。所有设置完成后,生成.inf安装信息文件。在这些框架下,根据应用需求,即可编写与设备固件通信的主机设备驱动程序。

当主机要求以Bulk方式读写并传送心电或血压数据时,会给出IOCTL_CODE为MYUSB_IOCTL_ BULK_READ的IOCTL IRP,处理例程为BulkReadWrite()。通过传递不同参数分别实现BULK方式的数据读写功能,首先需要从应用程序获得IRP传递的通道号、输入/输出缓冲区及其大小等参数,调用FindPipe()得到IRP要求的通道实例,在该通道上构造URB、调用SubmitUrb()发送URB,实现与底层USB类驱动程序的通信,完成Bulk数据传输功能。

结语
本文充分利用USB传输速度快、准确性好、使用方便等特点,将USB接口应用于家用心电、,完成ARM内核MCU与USB控制芯片接口的软硬件设计,通过心电图的传输实验,表明该系统具有高可靠性和准确性。

参考文献:
1萧世文.USB2.0硬件设计.清华大学出版社,2002:67~105
2 王文艺.高速串行总线在DSP数据采集系统中的应用与研究.浙江大学硕士论文.2002:9~21
3National Company. USBN9603(Universal Serial Bus) Full Speed Function Controller.National Semiconductors
4 武安河,周莉莉.Windows设备驱动程序(VxD与WDM)开发实务.电子工业出版社,2001:120~177



评论


相关推荐

技术专区

关闭
老鼠最怕什么气味驱赶 蚕长什么样 夏天吃什么水果好 苍茫的天涯是我的爱是什么歌 脚腿肿是什么原因引起的
为什么不要看电焊火花 卵巢多囊样改变是什么意思 玉髓是什么玉 恶露后期为什么是臭的 乙肝表面抗体弱阳性是什么意思
规整是什么意思 六月初五是什么日子 蛊虫是什么 同房是什么意思 猪苓是什么东西
梦到孩子被蛇咬是什么意思 成人用品是什么 岁月如歌下一句是什么 广西北海有什么好玩的地方 伤官代表什么
属鸡的女生和什么属相最配yanzhenzixun.com 河粉是什么做的hcv8jop7ns3r.cn 导购员是做什么的hcv8jop9ns4r.cn 氟哌噻吨美利曲辛片治什么病hcv8jop3ns9r.cn 清除胃火吃什么药hcv8jop8ns9r.cn
北京摇号什么时候开始的hcv9jop3ns8r.cn 脾切除后有什么影响hcv8jop2ns9r.cn 荻是什么意思hcv8jop1ns1r.cn 血压太低有什么危害naasee.com 乳腺一类是什么意思hcv9jop4ns3r.cn
10月30日是什么星座hcv8jop5ns2r.cn 心律不齐吃什么药效果好hcv9jop1ns7r.cn 小别胜新婚什么意思hcv7jop7ns2r.cn 囧是什么意思hcv9jop1ns6r.cn 后背凉是什么原因hcv8jop6ns2r.cn
处事不惊是什么意思hcv8jop8ns8r.cn 雍正叫什么hcv9jop3ns9r.cn 胎儿左肾盂分离是什么意思hcv8jop2ns6r.cn 不惑之年是什么意思wzqsfys.com 缺蛋白质吃什么补得快hcv9jop5ns1r.cn
百度