微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI无线射频设计 > CC2531,USB接口的软硬件移植问题

CC2531,USB接口的软硬件移植问题

时间:12-22 整理:3721RD 点击:

你好:)

目前的项目需要利用CC2531的USB接口实现大数据量传输功能。之前没有接触过USB这块,有些问题想请教大家。

我有从TI官网上下载CC_USB_LIBRARY文件包,不太明白的地方有以下一些:

1) CC2531的USB实现的是CDC和HID功能?这两个功能从传输的角度哪个更快?最快速率能支持到多高?(我看数据手册说最高能到12Mbps)

2) 从软件开发的角度出发,在“rf_modem”工程中需要做哪些改动?(我查阅了相关的数据手册,对新手来说感觉描述的不是很详细)

3) 从硬件接口的角度出发,USB接口复用了P2的Interrpt,那P2接口还能否外接其他外设?P20~P24引脚产生中断后是否会影响P25引脚D+的中断信号?

谢谢。

1) CDC is better for bluk data transfer. 12Mbps is the USB physical layer max speed. There will have many factors limit the data rate such as RF and the PC software that work with the CC2531. Genrally, 115200 can be achevied. Does it meet your requirments?

2) rf_modem - rfusb_cc2531 contains all the USB CDC code and application code. You may add your application code on it.

3) Actually, P2_0-4 interrupt is shared with USB interrupt. If a P2 interrupt occur, it may trigger by P2 pins interrupt or USB interrupt.  The software need to check which trigger it by using the interrupt flags.

Jerry,你好 :)

谢谢你的解答。

1)我目前的项目需求大概要求数据的传输速率在650KBytes/s以上,一般的U口传输应该都能到这个速率级别的吧,如果只是115200bps的话可满足不了需求(是虚拟串口的原因吗?)。假如采用CDC功能通信,能做到650KBytes/s以上吗?

2)这个项目留给研发的周期很短,我目前还不是很清除应该如何在原有源码结构之上添加自己的应用代码... — _ —'

3)这个问题已经明白了。多谢。

 

1) 650kbytes/s  is 5.2Mbps
For CC2531 with IEEE 802.15.4 radio the bitrate is 250kbps which is far below your requirements.

5.2Mbps is also very challenging for CC2531


Does the data go through RF -> USB -> PC ?

if so, CC2531 cannot meet such data rate in the RF section

Jerry,你好:)

我这里数据的传输过程如下:

1) 后台准备64KBytes数据

2) 通过USB传给2531

3) 2531通过射频传给下一级子节点,空口帧净负荷104Bytes

4) 子节点收到后会送应答ACK

在这个过程里,我计算过,基本上空口的速率是额定的,传输64KBytes最少需要2.048s

如果要满足64KBytes传输10s的要求,留给USB的传输时间应该在7s以内,理论上115200的速率是可以实现的。

但之前我用串口传输过,没有采用硬件流控制,115200的波特率,实际传输过程中串口传输状态很不稳定,会丢包、堵塞。

因此考虑采用USB口传输,觉得更稳定可靠。

Jerry,你觉得按照我以上的条件,使用USB传输的过程中会不会也出现像UART传输过程中一样的不稳定现象呢?

Jerry,还想问下你,如果我想快速使用2531的USB库代码,我的数据通过USB传输,解析,拆包,组包,这部分应用功能代码我应该添加在库代码中的哪个位置呢?由于没有细看CC_USB_LIBRARY,就是这里比较含糊... 嘿嘿...   -_-'

3Q~

For the 不稳定,会丢包、堵塞, it highly depends on the firmware and the software in PC. Say, if CC2531 has a buffer size of 256bytes, it has to wait for RF transmission completed before sending data from PC to CC2531.

Please read doc swru222.pdf section 5.2. Please also take a look on source code  mrfi_link.c for details on packet format

Jerry,你好:)

我先遵循你说的看看,3Q~

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top