基于C8051F060和USBl00模块实现高速实时数据传输和采集系统的设计

发布时间:2023-05-30  

引 言

在工业控制现场,常常需要采集多路的现场数据,如电压、电流、温度、湿度、气压等。数据采集器将现场的模拟量经过A/D转换后变成数字量并传输到主机进行处理,由主机根据处理的结果,将控制信号传输给现场执行模块进行各种操作。由于有些工业现场需要对现场的模拟量进行高速A/D数据采集,目前常用的数据传输网络(如RS232/RS485,CAN等)已经不能满足大量采集数据和高速实时数据传输的要求。而USB传输具有高速可靠传输的优势,具有成本低、可靠性高、维护方便等优点。本文介绍一个基于C8051F060的USB高速A/D数据采集器。通过本系统,不仅能了解数据采集的一般过程以及一般数据采集系统的构成,还能了解C8051F060单片机、USBl00模块的功能。该系统最高传输速度可达8 Mbps。


1、 系统原理

该系统由工控机、USBl00、C805lF060单片机、多路模拟切换开关、四路模拟运算放大器、可反复充放电的锂离子电池等构成。系统电路原理框图如图1所示。

基于C8051F060和USBl00模块实现高速实时数据传输和采集系统的设计

1.1 C8051F060单片机

C8051F060是Silicon Laboratories公司推出的完全集成的混合信号片上系统型MCU。具有59个数字I/0引脚,片内集成了2个16位、1 Msps的ADC;有与高速流水线结构的8051兼容的CIP一51内核(可达25MIPS),有DMA控制器和局域网(CAN2.OB)控制器;32个消息对象,每个消息对象有自己的标识屏蔽;具有全速、非侵入式的在系统调试接口(片内),10位、200 ksps的ADC,带8通道模拟多路开关,2个12位DAC;具有可编程数据更新方式;64 KB可在系统编程的Flash内存,4352(4K+256)字节的片内RAM,可寻址64 KB地址空间的外部数据存储器接口,硬件实现的SPI、SMBus/I2C和2个UART串行接口;5个通用的16位定时器,6个捕捉/比较模块的可编程计数器/定时器数组,片内看门狗定时器、VDD监视器、时钟振荡器和温度传感器


C8051F060是真正能独立工作的片上系统。所有模拟和数字外设均可由用户固件使能/禁止和配置。Flash存储器还具有在系统重新编程能力,可用于非易失性数据存储,并允许现场更新8051固件。


C8051F060单片机的P0.O配置为外部中断源(INT0)。P0.1配置为外部中断源(INTl),下降沿触发输入,当USBl00模块接收到工控机数据时触发INTl中断。PO.2配置为通用I/0,当电池电压低到一定程度时被MCU检测到并做低电压处理。P3.0~P3.7配置为通用I/0,P3.0用于驱动发光二极管,P3.1用作USBl00的写控制线,P3.2用作USBl00的读控制线,P3.3、P3.4用作模拟控制开关的控制线,P3.5用于控制传感器的供电(当不需要采集数据时关掉传感器电源以减少系统功耗),P3.6、P3.7用作电平转换芯片74ALVCl64245的数据方向选择控制线。P1配置为通用I/O,作为8位并行数据线。P5配置为通用I/O,作为8位拨码开关的输入,用8位拨码开关设定MCU的数据采集速度。C8051F060接线图如图2所示。

1.2 USBl00通用串行总线模块

USBlOO是基于ASIC设计的,内部封装了USBl.1全部协议以及300位元组的内部FIF0,8位并行数据接口,对USB的操作类似于对外部内存的操作,由USBl00模块完成全部协议的转换和封装,使开发的过程变得简单。注意:由于USBlOO输出TTL电平的数据,可以与5V的单片机很好地连接,而C8051F060是3.3 V的系统,为了系统的稳定性,中间需要增加3~5 V电平转换电路。


DO~D7:数据口是一个8位双向I/0口。它是一个8位并口,C8051F060通过它和USBlOO交换数据。

RD:允许内部接收缓冲区数据通过8位并行总线读出。

WR:将8位并行总线上的数据锁存入内部缓冲区。

TXE:高表示模块发送缓冲区已满;低表示发送缓冲区为空,可以发送数据。

RXF:高表示模块没有数据输出;低表示模块有数据输出,可以读数据。

LISBVCC:USB界面的电源脚。

D+:USB数据脚。

D一:USB数据脚。

GND:电源地。

0UTVCC:+5V输出,可以提供给外部MCU使用,最大为400 mA。

NC:空引脚。

USBl00模块的控制时序:

发送时序如图3所示。当单片机检测到USBl00模块TXE为低时,表示内部发送缓冲区允许发送数据,可以将数据通过8位数据总线DO~D7发给USBl00模块,发送数据锁存由WR控制;USBl00模块TXE为高时,禁止发送数据。

接收时序如图4所示,当单片机检测到USBl00模块RXF为低时,表示内部接收缓冲区有数据,可以通过8位数据总线DO~D7发给C8051F060单片机,接收数据锁存由RD控制。

1.3 多路模拟切换开关

因为C8051F060只有2路高速A/D转换器,而实际上有4路模拟量需要采集,故需要一个多路模拟切换开关。NLAS4684是两路单刀双执CMOS模拟切换开关,具有很低的导通电阻。当ADO_CON、ADl_CON为高电平时,运放的输出OUT2进入ADO进行A/D转换,运放的输出OUT4进入ADl进行A/D转换;当ADO_CON、ADl_CON为低电平时,运放的输出OUTl进入ADO进行A/D转换,运放的输出OUT3进入AD1进行A/D转换,如图5所示。

1.4 模拟运算放大电路

LM134、R1、R2、D1构成恒流源电路,对桥式电路传感器提供恒流源。桥式电路传感器输出信号INl+、INl一经INA326EA放大后送入多路模拟切换开关,然后由C805lF060的A/D电路进行A/D转换。INA326EA是一款单电压供电、高性能、低功耗、满幅度输入输出的仪表运算放大器。运算放大器电路放大倍数G=2K1/R3。总共有4路模拟运算放大电路。图6为其中一路模拟运算放大电路。

1.5 供电电路

为了符合工业现场便携式的需要,选用上海捷士电池制品有限公司的JS一7.4V一1.2Ah可反复充放电的锂离子电池。电池采用锂离子083448电芯,组合方式为两串,电池容量1.2 Ah,电池电压7.4 V,外形尺寸50 mm×37mm×17 mm,重量55 g。该电池具有电池过充保护、过放保护、短路保护、过流保护功能(这些功能已经集成在电池内部,便于使用)。TPS76650[)是具有250 mA输出能力的LDO芯片,电池电压通过该芯片的5、6脚输入,7脚输出稳定的+5 V电压供系统使用;2脚是对TPS76650D是否工作正常的指示输出,当芯片工作正常时,2脚输出高电平,当芯片输出电压在4.6~4.9 V时,2脚输出低电

平,R1为外部上拉电阻。TPSll00为大电流驱动能力、低导通电阻的电源分配开关;输出5 V电压为传感器电路提供恒流源,通过SPXlll7稳压成3.3 V为传感器放大电路供电。为了节省耗电,C8051F060可以通过TPSll00的4脚关掉传感器电路的恒流源和放大电路。

另外,当采集器和计算机通过USB相接时,因为USB提供+5 V/500 mA电源,采集器可以通过USB连接线对采集器供电。供电电路如图7所示。

2、 采集系统的编程

2.1 单片机编程

采用Silicon公司的Silicon Laboratories IDE集成编辑、编译、仿真、下载软件包,用C语言进行软件编写。系统通电后,首先要对单片机进行初始化,包括单片机的I/0端口和交叉开关、定时器的初始化,A/D转换器的初始化以及A/D参考电压的初始化等。工控机通过USB口对便携式数据采集器发送0x41、0x42、0x43、0x4_4,便携式数据采集器分别回送传感器1、2、2、4的200个A/D采集数据,高位在前,低位在后。(部分源代码程序略——编者注)

2.2 工控机编程

在工控机上安装好USBlOO模块的专用驱动程序后,USBl00即可作为一个标准的设备,按照与串口完全一样的方法进行编程。本次设计采用了VB编程。在VB中采用MSComm控件,将USB接口作为一个标准的串口使用。程序分为两部分:一部分是USB接口程序;另一部分是应用程序。将由C8051F060采集到的数据用直观的图像方法显示出来。

3、结 语

C8051F060作为新一代8051单片机,具有功能强大、体积小、工作稳定等特点,适用于复杂控制系统。本文只介绍了基于C8051F060的USB高速A/D数据采集器。数据采集器已经成功运用于某工程中。对其他相类似的数据采集、USB数据传输应用具有一定的参考价值。


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    规范电脑与外部设备的连接和通讯。被广泛地应用于个人电脑和移动设备等信息通讯产品,随着科技的发展,USB接口设备也日益增多,比如我们常见的键盘,鼠标,摄像头,游戏机、U盘等等。 Topway的液晶显示模块有丰富的接口。智能液晶显示模块......
    基于STM32F103的USB数据采集模块的设计;通用串行总线(USB,universalserialbus)由于具有高传输速率、即插即用和易于扩展等优点而被广泛应用于计算机外设、数字......
    机应用程序读取心电数据库中一文件,利用设备驱动程序与D/A回放模块设备进行通信。通过USB总线不断向硬件设备发送数据,设备接收到的原始数据,利用DMA传输方式,连续、不丢失地传送到DAC模块中,在定......
    欧姆龙新品:Type-C接口测试模块;USB type-C是一种新的USB接口,可以实现智能手机、平板、笔记本电脑、便捷式游戏机、电子烟、数码相机、头戴式耳机等产品的轻薄化,并将电源充电功能、数据......
    利用自带的USB2.0通信接口与调试平台进行通信。调试平台主要由USB设备选择模块、IO端口控制模块、AD数据采集模块、DA输出模块以及PWM输出模块这五个部分组成,本平台的总体结构框图如图1所示。本文......
    发地解决以上这些冲突。 利用89C51设计基于USB总线的数据采集设备,还可与MAX485结合起来实现数据的远程采集。该系统具有可靠性高、性价比高和多点采集等优点。 1 系统硬件设计 USB数据采集系统硬件模块......
    。 上位机运行调试软件,将编译器的各种调试操作,通过调试接口函数转化为各种调试协议数据;再将这些调试协议数据通过底层通信模块发送给M8051调试器。本设计的底层通信接口是USB接口。编译......
    芯海科技CS32G051:笔电USB-C接口的智慧管家; Your browser is not supported 芯海科技CS32G051宣传视频 USB-C接口自发布以来,以更小更高速,双面......
    输入到CY7C68013A的数据是来源于数字信号还是模拟信号经ADC模块之后的数字信号。由于该逻辑分析仪为USB连接,故此在USB连接端口上加入ESD芯片。并在板上增加16 kB的EEPR0M来作......
    外部稳压器、使用开发板自带的5V引脚、通过USB线提供电源、或者使用外部电源模块。 使用外部稳压器:使用外部稳压器是最常见的方式之一,可以稳定地提供5V电压给STM32单片机。具体步骤如下: 选择......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>