




免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
STM32F103x的USB多路数据采集系统设计引言目前,在工业和许多其他场合依然使用基于PCI板卡、ISA板卡的数据采集系统,价格昂贵、接插不方便。USB(Universal Serial Bus,通用串行总线)是计算机上的一种新型接口技术,它使得计算机和外部设备的连接十分方便。USB具有高效、快速、价格低廉、体积小和支持热拔插等优点,使其成为数据采集系统设计的新宠儿。然而当前的USB数据采集设备大多采用的是专门的USB接口芯片,而且根据不同的需求,需要外扩一定数量的AD 转换芯片,使得接口非常复杂,增加了系统的开发难度,进而对系统的稳定性产生影响。本设计采用意法半导体公司开发的基于Cortex-M3内核的新型32 位微控制器STM32F103x作为主控芯片。该芯片内部集成了全速USB20设备接口模块和16通道的12位高精度AD转换器,单芯片即可完成设计任务,避免了复杂的接口电路设计,有效地降低了系统接口的复杂度和系统开发的难度,在很大程度上提高了系统的稳定性。1 主控芯片STM32F103xSTM32F103x是意法半导体公司生产的基于ARMCortex-M3处理器核的微控制器。Cortex-M3是基于ARMv7-M体系结构的 32位标准处理器,具有低功耗、少门数、短中断延迟、低调试成本等众多优点。它是专门为在微控制器系统、汽车电控系统、工业控制系统和无线网络等对功耗和成本敏感的嵌入式应用领域实现高系统性能而设计的,大大简化了编程的复杂性,集高性能、低功耗、低成本于一体。STM32F103x微控制器采用了先进的 Cortex-M3内核结构,具有丰富的性能出众的片上外设,包括16通道的12位AD转换器、7通道的DMA控制器、16位定时器、USART接口、 CAN接口(20B)和USB20全速接口(12 Mbps)等。2 数据采集系统硬件设计21 数据采集系统硬件结构多路数据采集系统的硬件结构框图如图1所示,主要包含5个模块:信号输入接口模块、信号调理模块、数据采集及预处理模块、USB20通信模块和上位机模块。其中的信号输入接口模块实现信号的隔离接入;信号调理模块对输入信号进行放大或衰减,以适应AD转换器的转换量程;数据采集及预处理模块和 USB20通信模块实际是由微控制器 STM32F103x独自实现的。STM32F103x通过内部AD转换器对经过调理后的信号进行采集,然后进行数据的预处理,并将预处理后的数据通过 USB20全速接口传送到上位机。上位机模块主要是对获取的数据进行存储和分析处理。由于大量的工作都是在STM32F103x内部完成的,只需通过简单的寄存器设置和程序设计即可完成数据的采集和传输过程,这在很大程度上优化了系统的设计。下载 (32.97 KB)2010-1-16 16:0622 STM32F103x的ADC模块STM32F103x系列微控制器所带的2个12位ADC是一种逐次逼近型模拟数字转换器。它有16个外部通道,可测量16个外部信号源。各通道的 AD 转换可以是单次、连续、扫描或不连续模式执行,其转换结果可以左对齐或右对齐方式存储在16位数据存储器中。ADC转换频率最高可达1 MHz,且每个通道的采样间隔时间均可独立编程设置。在通道转换期间,ADC能产生DMA请求,使DMA来传输ADC转换值,提高了数据传输的效率。 ADC模块的结构示意图如图2所示。下载 (47.41 KB)2010-1-16 16:0623 STM32F103x的USB20全速设备接口模块USB接口模块为上位机和由微控制器实现的功能设备之间提供了符合USB规范的通信连接。USB接口模块通过和微控制器共享一块专用的数据缓冲区实现上位机和系统存储器之间的数据传输。这块专用数据缓冲区的大小由所使用的端点数目和每个端点最大的数据分组大小来决定,每个端点最大可使用512字节缓冲区,最多可用于16个单向或8个双向端点。USB接口模块根据UJSB规范实现了令牌分组的检测,数据发送接收的处理和握手分组的处理。整个传输的数据格式由硬件自动生成,其中包括CRC的生成和校验。USB20全速设备接口模块的结构示意图如图3所示。下载 (72.85 KB)2010-1-16 16:063 数据采集系统软件设计数据采集系统软件设计主要包括设备固件程序设计和上位机应用程序设计两部分。31 设备固件程序设备固件程序设计的两个主要部分是ADC模块的配置和USB模块的配置与通信。(1)ADC模块的配置意法半导体公司针对ARM的32位STM32F103x系列MCU提供了固件库。该固件库提供了包括ADC在内的各种功能模块的软件使用接口,使用该固件库可以有效节省用户产品的开发和调试时间。利用该库,本设计中ADC的配置代码如下:下载 (69.87 KB)2010-1-16 16:06ADC校准之后通过函数ADC_SoftwareStart-ConvCmd(ADC1,ENABLE)即可启动AD转换。(2)USB模块的配置与通信意法半导体公司还提供了针对STM32F系列的USB开发工具包。该工具包是一个完整的固件和软件包,包括所有USB传输方式的范例,大大减少了开发人员的工作量。利用USB工具包主要完成对IJSB模块的配置及与USB主机(即上位机)之间的通信。USB规范定义了4种数据传输类型:控制传输、块传输、中断传输和同步传输。块传输适用于传输大量的且对传输时间和传输速率均无要求的数据;中断传输适用于传输少量或中量的且对传输时间有要求的数据;同步传输适用于传输大量的,速率恒定的且对传输时间有要求的数据;控制传输适用于传输少量的且对传输时间和传输速率均无要求,但必须保证数据传输的可靠性。在本设计中,端点0为控制传输端点,实现USB设备上电后的配置过程;端点1为OUT中断传输端点,用以接收上位机发送的命令,实现上位机对数据采集过程的控制;端点2为IN块传输端点,将数据采集结果实时地传送到上位机,供上位机进行数据分析和处理。利用意法半导体公司提供的USB开发工具包并参照范例,修改一些描述符(设备描述符、配置描述符、接口描述符和端点描述符等)和设备复位函数,添加相应的端点传输中断服务程序等,即可方便地实现本系统的 USB设备开发。端点2的配置代码如下:下载 (22.39 KB)2010-1-16 16:06在设置端点2发送有效之后,USB模块可自动完成端点2缓冲区的数据发送。32 上位机应用程序本设计采用一种使用NI-VISA和LabVIEW进行USB数据采集系统上位机程序开发的快速简单而且有效的方法,从而避开传统的Windows编程技术。通过在LabVIEW下调用NI-VISA子控件程序,可以方便地实现与USB设备的通信和应用程序界面的开发。VISA(Virtual Instrument Software Architecture)是一个用来与各种仪器总线进行通信的高级应用编程接口(API),不受平台、总线和环境的限制。在利用NI-VISA完成对 USB设备的驱动后,即可在LabVIEW开发环境中直接使用VISA面板对USB设备进行控制和通信。LabVIEW是当今国际上唯一的编译型图形化编程语言,能方便、快捷地进行应用程序开发。本系统利用Lab-VIEW设计的USB多路数据采集系统用户界面如图4所示。下载 (44.46 KB)2010-1-16 16:06本系统实现了对16路外部信号的实时采集。图4中在实时波形显示区域,可以实时地显示4个通道的波形曲线。这4个通道通过选择可以是16个通道中的任意一个通道。在实时数据显示区域,能观测到每一路数据采集的结果;在左侧的控制及状态显示区域,可以实现设备选择、采集过程的控制以及数据采集系统的工作状态显示。结语本设计实现了基于STM32F103x的USB多路数据采集系统,以STM32F103x微控制器为主控芯片实现了外部信号的调理、采集、预处理和 USB 数据传输,以及上位机应用程序的开发。主控芯片STM32F103x内部集成了丰富的功能模块,使系统无需外扩大量芯片而能实现数据采集功能,降低了开发的复杂度和成本,达到了提高系统稳定性的目的。参考文献1. 李宁.基于MDK的STM32处理器开发应用M.北京:北京航空航天大学出版社,2008.2. 王永虹,徐炜,郝立平.STM32系列ARM CortexM3微控制器原理与实践M.北京:北京航空航天大学出版社,2008.3. 李英伟,王成儒,练秋生,等.USB2.0原理与工程开发M.2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025沈鼓集团校园招聘正式启航笔试参考题库附带答案详解
- 2025江西吉安市农业农村发展集团招聘缴费及笔试安排考试历年参考题附答案详解
- 2025江苏扬州广源实业投资有限公司招工笔试参考题库附带答案详解
- 2025新疆红星建设工程(集团)有限公司招聘(14人)笔试参考题库附带答案详解
- 2025广东依顿电子科技股份有限公司招聘锣带制作工程师等岗位拟录用人员笔试参考题库附带答案详解
- 2025年江西销售分公司秋季高校毕业生招聘10人笔试参考题库附带答案详解
- 2025年度中国石化毕业生招聘11301人笔试参考题库附带答案详解
- 2025年华北油田分公司秋季高校毕业生招聘110人笔试参考题库附带答案详解
- 2025年北京公交运营驾驶员招聘笔试参考题库附带答案详解
- 2025年中国水电十四局校园招聘笔试参考题库附带答案详解
- 体育与健康教学设计《手倒立前滚翻》
- NISP一级考前模拟训练题库200题(含答案)
- JJG 20-2001标准玻璃量器
- 2024外研版初中英语单词表汇总(七-九年级)中考复习必背
- 《大数据平台部署与运维》课程标准(含课程思政)
- 英语中的时间表达(示范课例)
- 项目产品研发各阶段质量控制输出文件
- 脊柱外科进修汇报
- 《史记》上册注音版
- 苏州大学文学院语言学纲要课程笔记
- 危重症患者护理文书书写规范-课件
评论
0/150
提交评论