- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
USB多线程数据管理论文
摘要:说明基于USB技术的实时数据采集系统的硬件、软件实现;重点介绍PDIUSBD12带并行总线的USB接口器件以及基于多线程思想设计应用程序的方法。
关键词:USBPDIUSBD12多线程实时数据采集
1问题的提出
随着信息技术的飞速发展,各种数据的实时采集和处理在现代工业控制中已成为必不可少的。这就为我们的设计提出了两个方面的要求:一方面,要求接口简单灵活且有较高的数据传输率;另一方面,由于数据量通常都较大,要求主机能够对实时数据做出快速响应,并及时进行分析和处理。
传统的外设与主机的通信接口难以满足上述第一个方面的要求。这些接口一般采用PCI部线或RS-232串行总线。PCI总线虽然有很高的传输率(可达132Mbps),还能“即插即用”,但是它们的扩充槽相当有限,且插拔并不方便。RS-232串行总线虽然连接方便,可是它的带宽非常有限,传输速度太慢,而且1条RS-232串口通信电缆只能连接1个物理设备。USB技术正是顺序这一要求提出的,它集PCI和RS-232的优点于一身:具有较高的传输速率(USB协议1.1支持最高传输速度达12Mbps,USB协议2.0支持最高传输速度可达148Mbps),实现了真正意义上的“即插即用”(PlugPlay),同时USB上最多可以连接127个外设。因此,将USB技术应用于数据的实时采集是非常适合的。
实时系统对多任务的要求比较普遍。往往在后台采集数据、进行数据显示的同时,还要在前台界面对用户的操作做出响应。在实时系统中,对实时数据做出及时而准确的反应是十分重要的。由于受A/D采集速度等因素的限制,从硬件上采用USB接口技术的确可以提高速度,但毕竟潜力有限,因此在现有硬件设计基础上充分发挥软件的作用就能进一步提升速度。使用传统的单线程编程技术效率较低,无法及时处理,必须充分利用Windows的多任务处理功能,采用多线程编程技术来处理数据。
在这个实时采集系统的设计上,我们将这两种技术结合起来:在硬件上采用USB技术;软件用VC++进行开发,采用多线程编程,使系统的效率从这两方面都得到提升。
2系统体系结构
2.1硬件结构
整个系统硬件结构如图1所示。
实时数据采集系统主要由多路选择开关、A/D转换、单片机系统、PDIUSBD12、微机组成。多路选择开关对多路信号进行选择,使其分时输入;A/D转换实现模拟信号的数字化;单片机系统主要完成信号采集、数据通信;PDIUSBD12实现USB接口;微机完成数据接收、存入数据库、数据处理、计算、显示等功能。
其中PDIUSBD12是系统USB技术得以实现的关键。它是Philips公司的一个带并行总线的USB接口器件,支持本地的DMA传输。它完全符合USB1.1版的规范,同时集成了SIE(串行接口引擎)、FIFO存储器、收发器以及电压调整器。其主端点的双缓冲配置增加了数据吞吐量并轻松实现实时数据传输,功能框图如图2所示。
在这个系统中,单片机采用的是80C52。PDIUSBD12与80C52的接口有2种方式:多路地址/数据总线方式、单地址/数据总线方式。我们采用的是前一种方式:使用了80C52的INT0、ALE、WR、RD和P0口,当PDIUSBD12接收到主机的有效信息时,会产生一个中断通知80C52进行处理。在此种方式下,PDIUSBD12在ALE下降沿的时候,对单片机的输出地址进行锁存。若输出地址为奇数,则表示对PDIUSBD12发送指令;若输出地址为偶数,则表示对PDIUSBD12进行数据传输。接口电路如图3所示。
80C52将A/D采集的数据经PDIUSBD12的并行接口送入FIFO存储器。当USB的传输速率达到12Mbps时,MMU(存储器管理单元)和集成RAM作为USB之间速度差异的缓冲区,这就允许单片机以它自己的速率对USB信息包进行读写。若FIFO中数据已满,SIE会立即对数据做处理:同步模式的识别、并行/串行转换、位填充/解除填充、CRC校验/产生、PID校验/产生、地址识别和握手评估/产生。SIE实现了全部的USB协议层,完全由硬件实现而不需要固件的参与。数据经处理后由收发器通过数据线D+、D-传送到主机。对一个单片机而言,PDIUSBD12看起来就像1个带8位数据总线和1个地址位的存储器件。
2.2软件结构
USB的软件系统包括三部分:客户应用软件、设备固件以及USB设备驱动程序。其中,设备固件和USB设备驱动程序又被称为主机软件。软件层次如图4所示。
2.2.1固件设备
设备固件(firmware)是储存在程序内存中的代码。它
您可能关注的文档
最近下载
- 2024宜春职业技术学院招聘笔试真题及参考答案详解.docx VIP
- 南京市南师附中2024-2025学年高二上学期期中考试化学试卷.pdf VIP
- 2022年土地登记代理人题库700道精编答案.docx
- 艺术歌曲《满江红》的演唱技巧与情感处理.pdf VIP
- 2025年衢州市xx乡镇“十五五”发展规划.docx VIP
- 现代大学英语精读3(第三版)课后习题答案.pdf
- 电力电子技术(本科)电子科技大学含答案.doc VIP
- 2025-2030中国天然气管道行业前景动态与需求规模预测研究报告.docx
- 在校证明模板.pdf VIP
- 广东省佛山市南海区2022年人教版小升初考试数学试卷(原卷版+解析).docx VIP
原创力文档


文档评论(0)