积分规则 网站地图 帮助中心    
嵌入式软件 单 片 机 DSP 存储器 传感控制 光电显示
嵌入式硬件 CPLD/FPGA SOPC AD/DA 接口电路 模拟设计
I C设计 通信产品 汽车电子 电源产品 消费电子 数控系统
工业控制 军工/航天 安防产品 医疗电子 计算机外设 测试测量
供应 I C
求购 公司库

  IC 求购 销售 公司 论文 DATASHEET 参考设计 论坛
当前位置: 电子技术 >> 接口设计 >> 应用论文
  相关分类: 相关文章 | 应用论文 | 新产品 | 下载 |
低轼耗数据采集系统的USB接口设计
 
作者:丛伟波 杨 勇 韩清凯   来源:本站原创    点击数:168   更新时间:2008-3-4
您可以添加到网摘 让更多人关注此文章:

    摘要:介绍低功非法收入数据采集系统的USB通信接口设计方法。该设计以超低功耗单片机MSP430F13X为主控制芯片,为主控制芯片,连接Cygnal公司的UART转USB芯片CP2101,实现低功耗数据采集系统的USB接口设计。在IAR Embedded Workbench集成开发环境和VC++环境中,编辑单片机与主机的通信协议。该设计具有超低功耗、高集成度和设计简便等优点,适于便携式电子设备的开发应用。

关键词:超低功耗 MSP430 数据采集 USB接口设计


引言


实现系统运行的最小功耗是现代电子系统的普通取向,也是绿色电子的基本要求。采有最小功耗设计方法既能减少电子设备的使用功耗,又能减少备用状态下的功率消耗。在节省能源的同时还有利于减少电磁污染,有利于电子系统向便携式方向发展,有助于提高系统的可靠性。


现代工业生产和科学研究对数据采集的要求日益提高。在许多场合要求数据采集系统向便携化方向发展,要求系统具有体积小、功耗低、传输速率快、使用方便灵活等特点。在数据采集系统中,如何节省电能以使系统工作时间更长,如何通信才能使系统数据传输速度更快,已经成为系统开发过程中必须加以考虑的主要内容。


微控制器MSP430的超低功耗技术在众多单片机中独树一帜,同时它具有集成高度等特点,因此,选用该控制器作为系统的主控制器,实现数据采集和Flash存储等功能。此外,USB端口与以往的普通端口(串口与并口)相比具有传输速度快、功耗低、支持即插即用、维护方便等优点;因此在通信设计时,结合UART转USB芯片CP2101以实现USB接口通信。上述设计既利用了MSP430的超低功耗特性,又利用了CP2101设计USB接口的简便性,设计得到的数据采集系统可以实现便携化、低功耗、使用方便等目标。


1 MSP430数据采集系统的USB接口设计


1.1 采信系统简介


本系统实现多路数据的采集、Flash存储及USB通信等功能。单片机系统主要完成信息采集、A/D转换、对信号进行放大滤波处理、数据通信、Flash存储等;实时时钟记录采集数据的时间;CP2101实现USB接口,并把单片机采集到的信号传给微机;微机完成数据接收、存入数据库、数据处理、计算、显示等功能。


1.2 超低功耗MSP430微控制器


MSP430是TI公司近几年推出的16位系列单片机。它采用最新的低功耗技术,工作在1.8~3.6V电压下,有正常工作模式(AM)和4种低功耗工作模式(LPM1、LPM2、LPM3、LPM4);在电流电压为3V时,各种模式的工作电流分别为AM:340μA、LPM1:70μA、LPM2:17μA、LPM3:2μA、LPM4:0.1μA,而且可以方便地在各种工作模式之间切换。它的赶低功耗性在实际应用中,尤其是电池供电的便携式设备中表现尤为突出。在系统初始化后进入待机模式,当有允许的中断请求时,CPU将在6μ的时间内被唤醒,进入活动模式,执行中断服务程序。执行完毕,在RETI指令之后,系统返回到中断前的状态,继续低功耗模式。


本设计采用MSP430F13X微控制器。它具有非常高的集成度,单片集成了多通道12位A/D转换、PWM功能定时器、斜边A/D转换、片内USART、看门狗定时器、片内数控振荡器(DCO)、大量的I/O端口、大容量的片内RAM和ROM以及Flash存储器。其中Flash存储器可以实现掉电保护和软件升级。


1.3 USB接口芯片选型


通用串行总线USB是由Intel等厂商制定的连接计算机与具有USB接口的多种外设之间通信的串行总线。传统上,USB接口的开发较为复杂。在同其它USB接口芯片相比较之后,本设计选择了无需外部元件的UART转USB芯片CP2101。选择这种接口芯片,可使USB通信接口设计变得十分容易。与同类产品相比,CP2101具有以下优点:


①具有较小的封装。CP2101为28脚5mm×5mm MLP封装。这在PCB上的尺寸就比竞争对手小30%左右。


②高度成度。片内集成512字节EEOROM(用于存储厂家ID等数据),片内集成收发器、无需外部电阻;片内集成时钟,无需外部晶体。


③低成本,可实现USB转串口的解决方案。CP2101的USB功能无需外部元件,而大多数竞争者的USB器件则需要额外的终端晶体管、上拉电阻、晶振和EEPROM。具有竞争力的器件价格,简化的外围电路,无成本驱动支持使得CP2101在成本上的优势远超过竞争者的解决方案。


④具有低功耗、高速度的特性,符合USB2.0规范,适合于所有的UART接口(波特率为300bps~921.6kbps)。工业级温度范围为-40℃~85℃)。


2 USB通信的硬件接口电路


硬件电路如图1所示。CP2101的SUSPEND与SUSPEND引脚接到MSP430F13X的普通串口上。这两个引脚传送USB挂起和恢复信号,此功能便于CP2101器件以及外部电路的电源管理。当在总线上检测到挂起信号时,CP2101将进入挂起模式,可以节省电能。在进入挂起模式时,CP2101会发出SUSPEND与SUSPEND信号。为了避免SUSPEND与SUSPEND在复位期间处于高电平,使用10kΩ的下拉电阻确保SUSPEND在复位期间处于低电平。


CP2101的USB功能控制器管理USB和UART间所有的数据传输,以及由USB主控制器发出的命令请求以及用于控制UART功能的命令等。CP2101的UART接口处理所有的RS232信号,包括控制和握手信号。CP2101的VBUS与VREGIN引脚必须始终连到USB的VBUS信号上。在VREGIN的输入端加去耦电容(1μF与0.1μF并联)。CP2101与单片机接口是标准UART电平,与计算的USB端口连接是USB标准电路,因此,无论与3V还是5V供电的单片机连接都不需要电平转换。

3 USB通信接口的软件程序设计


USB接口程序设计包括三部分:单片机程序开发、USB设备驱动程序开发、主机应用程序开发。三者互相配置才能完成可靠、快速的数据传输。其中USB设备驱动程序Cygnal公司已经提供。这里所要编写的是剩下的两部分。一部分为单片机MSP430F13X的串行通信程序,即对波特率、数据位、校验位、有无奇偶校验等通信协议的设计及单片机串行通信功能控制器的设置;另一部分为主机对CP2101的通信程序,这部分要在VC++环境中调用API函数实现。


3.1 单片机程序设计


在IAR Embedded Workbench嵌入式集成开发环境中,编写单片机通信程序,可实现在线编辑修改。MSP430的内核CPU结构是按照精简指令集和高透明指令的宗旨来设计的,使用的指令有硬件执行的内核指令和基于现有硬件结构的高效率的仿真指令。以下为系统发送数据的部分应用程序(包括初始化及触发UART端口程序):


#include "msp430x13x.h"


/*************************串口*************************/


void send_byte(char sdata){


TXBUF0=sdata; /*发送数据缓存(UTXBUF0)*/


while(IFG1 & TUXIFG0)==0);/*目的操作数位测试,发送中断标志*/


}


/*************************main*************************/


void main (void){


char a;


uint a=0x0055;


WDTCTL=WDTPW+WDTHOLD;/*停看门狗,WDTCTL看门狗寄存器*/


UCTL0=CHAR;/*8位接收控制寄存器URCTL线路空闲\u24322异步\u26080无反馈8位1位停止位\u26080无校验位*/


UTCTL0=SSEL0;/*发送控制寄存器UTCTL0,UCLK=ACLK时钟*/


UBR00=0x0D;/*32Kb/2400b=13.65,波特率选择寄存器*/


UBR10=0x00;/*高字节*/


UMCTL0=0x6B; /*调节*/


ME1|=UTXE0+URXE0;


/*开USART0 TXD/RXD接收/发送允许*/


IE1|=URXIF0;/*打开USART0 RX接收中断允许位*/


P3SEL|=0x30;/*P3.4,5=USART0 TXD/RXD,选择外围模块功能*/


P3DIR|=0x10;/*目标操作数置位,P3.4=1,输出模式*/


_EINT();/*开中断*/


//主循环


for(;;)


{send_byet(a++);}


}


3.2 USB设备驱动程序的安装


当把开发板接到主机的USB端口时系统会提示发现新硬件,并要求安装驱动程序:


先安装CP2101的驱动程序CP2101_Drivers.exe到C:Filesto RS-232 Bridge Controller.


完成上面两步的安装后,在系统的设备管理器中会看见CP2101虚拟的那个COM口。在以后的设计中就是对这个口进行操作。此时可能应用串口调试助手调试下位机程序,接收发送数据。


3.3 主机应用程序设计


主机应用程序的编写使用VC++编译环境中的API(应用程序设计接口)函数实现。应用程序的设计方法与串口编程类似。首先必须查找设备并打开设备的句柄,然后进行读写和控制操作,最后是关闭设备句柄。为了提高效率,可使用多线程技术实现读写。具体步骤如下:


①把CP2101的动态链接库CP2101.DLL文件拷贝到,或者路径下。当程序运行时就能调用CP2101.DLL。


②在visual studio6.0中打开CP2101SetIDs.dsw,选择Release或者Debug建立CP2101.EXE工程文件。


③在VC++6.0中链接CP2101.LIB,这时就可以应用CP2101的动态链接库了。


④在VC++里进行编程,用API功能函数对USB堆栈、CP2101的EEPROM及数据传输的通信协议等进行编程。


当数据传输完毕时,应用CP2101_Close()函数关闭设备句柄。可以根据实际应用修改CP2101的VID和PID,并用相应函数写进CP2101的EEPROM中。但须注意的是,修改后要用CP2101_Rest()函数使CP2101复位并重新安装驱动程序。


4 结论


通过试验证明,本设计能够很好地完成USB通信,达到了预期的目的。应用超低功耗MSP430微控制器与CP2101实现USB通信接口设计,具有体积小、功耗低、开发简单、可靠性高、移植性强等特点。在此基础上开发的低功耗数据采集系统具有很大的优越性。这种设计可以加以推广应用到其它便携式设备开发中。




[1]



相关文章
· 基于MSP430的烟雾报警器优化设计[348]
· 基于FPGA的超高速雷达实时采集存储系统[134]
· 基于AT89S52的数据采集系统[136]
· 基于LPC2378的数据采集系统的设计[325]
· 基于C8051F340的低成本数据采集器设计[192]
热门评论排行
·VHDL设计中电路简化问题的
·ARM嵌入式系统基础教程(N
·江苏嵌入式Linux教育培训
·ARM处理器应用开发4步骤
·锐极LINUX驱动培训班定于

文章评论
    没有任何评论
*只显示最新10条评论。评论内容只代表网友观点,与本站立场无关。更多评论
发表评论
  * 请先[登陆]再进行评论,谢谢。
评分: 1分 2分 3分 4分 5分
内容: *
发帖须知:
一.所发文章必须遵守《互联网电子公告服务管理规定》;
二.严禁发布供求代理信息,公司介绍,产品信息等广告宣传信息;
三.严禁恶意重复发帖;
四.严禁对个人,实体,民族,国家等进行漫骂,污蔑,诽谤。
 
热点新闻 [更多]
 
节能环保备受关注 半导体照
半导体产业最终将存活并将再次蓬勃发展
电子元件业御寒过冬 静待行
台湾当局拨款60亿美元援助DRAM厂
Vishay Silico
严冬期如何发展半导体业 扩
2008年中国集成电路市场回顾与展望
分析师:亚洲芯片厂商库存远超预期
2008年基础电子业十大事件点评
Aptina并购智多微手机软件平台设
 
热门下载 [更多]
 
[ PCB设计] Protel99教程下载
[ ] 手把手学单片机20个例
[ ] 单片机做的智能台灯
[ ] 单片机入门书
[ ] linux系统移植开发文档
[ ] IC卡的读写程序
[ ] 8051单片机C语言彻底应用
[ 常用软件] 555定时器电路设计软件V1.2
[ 常用软件] 51定时器计算软件
[ ] ARM处理器应用开发4步骤
 
论坛新帖 [更多]
 
供应HY5PS561621AF...
优势供应SPP11N80C3...
优势供应ICE2A0565Z...
低价专业PCB打样 双面板20...
深圳市天漠科技超低价供应atm...
深圳市天漠科技超低价供应ARM...
[推荐]2.5米精度,高灵敏度...
830实验箱+电脑没有并口...
[原创]平望科技助力自服终端国...
低价专业PCB打样 双面板20...

 
赞助商 [更多]
 

ICP许可证号:[粤 05056597]
联系电话:010-82517432 82517615 传真: 010-82517615

版权所有 Copyright © 2006 嵌入式技术网