这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » Get Over It —— 我碰到的USB接口问题

共11条 1/2 1 2 跳转至

Get Over It —— 我碰到的USB接口问题

专家
2009-12-19 14:09:03     打赏

                有关UART升级到USB的方法

1.    发现问题

最近做项目时发现,随着微型计算机技术的飞速发展,原来与之通信的串口已经消失。这对于用惯了RS232串口通信的人来说,措手不及。急需改进技术,USB接口将是最好替代接口。

 

2.    分析问题

就目前来说,UART接口升级到USB接口的方案有三类。

<1>、USB转UART桥接芯片。PC通过USB接口虚拟出一个RS-232接口,设备对PC接口的形式为USB,实现操作是UART接口,不存在USB协议问题。比如:Prolific公司的PL2303/PL2302,Silicon Laboratories公司的CP210X,南京沁恒电子有限公司的CH340/CH341。

<2>、带USB接口的微控制器(MCU)。这些微控制器有些是从底层专用于USB控制的,比如Cypress半导体公司的CY7C63xxx/CY7C64xxx,这类微控制器有自己的系统结构和指令;有些微控制器只是增加了USB接口的通用8051内核芯片,比如Intel公司的8x931/8x930,Cypress公司的EZUSB,Silicon Laboratories公司的C8051F320/321;

<3>、USB接口芯片。需要一个外部微控制器控制,比如朗讯公司的USS820/825。National Semiconductor公司的USBN9602/9603,Chip公司的NET2888,Philips公司的PDIUSBD11/PDIUSBD12,南京沁恒电子公司的CH372。


3. 解决问题

根据具体要求选用合适USB接口芯片,以降低开发成本、减少开发时间。 

方案一、最快速的升绶方案。采用一款号称业界体积最小集成度最高的单芯片USB至UART桥接芯片CP2101。其特点:外配元件少,使用PCB空间小。该芯片包含一个 USB 2.0 全速功能控制器,USB收发器振荡器和带有全部的调制解调器控制信号的异步串行数据总线(UART)全部功能.采用一个 5mm X 5mm MLP-28封装。片内带有EEPROM,可以用于定义USB供应商代码,产品代码,产品描述文字,功率标牌版本号和器件序列号等数据的存储。EEPROM可以通过USB在应用板上进行编程。CYGNAL 免费提供的器件驱动程序可以很容易地将 CP2101 用于实现一个有效的 COM 口,提供免税的实用COM口(VCP)器件驱动器。允许一个基于CP2101的产品作为PC机的一个COM口使用。CP2101 的 UART 接口处理所有的 RS232 信号包括控制和握手信号所以现存的系统固件无需改动在许多现存的 RS232 设计中更新从RS232到USB 所要做的就是用CP2101 取代 RS232 级别的转换器
特点如下:
 

单芯片 USB 转 UART 数据转换器

- 集成的 USB 收发器无需外部电阻

- 集成的时钟无需外部振荡器

- 集成的 512 字节 EEPROM 用于存储产品生产商ID产品ID序列号电源参数版本号和产品说明

- 片内上电复位电路

- 片内电压调节器3.3V 输出

USB 功能控制器

-符合USB 2.0 规范全速 (12 Mbps)

-SUSPEND 引脚支持 USB 挂起状态

异步串行数据总线(UART)

- 所有握手和调制解调器接口信号

- 支持的数据格式

- 支持硬件 或 X-On / X-Off 握手

- 支持事件状态

虚拟 COM 口器件驱动程序

- 可以和带有COM口的 PC 应用配合使用

封装- 28脚 MLP (5mm X 5mm)






        方案二、            随着带USB接口的单片机价格降低,采用带USB接口的单片机C8051F320/321。

   特点如下:

   模拟外设

              10 ADC

              ƒ 转换速率可达200ksps

              ƒ 可多达1713个外部单端或差分输入

              ƒ VREF可在内部VREF、外部引脚或VDD中选择

              ƒ 外部转换启动输入

              ƒ 内置温度传感器

              两个比较器

              内部电压基准

              上电复位/掉电检测器

 

USB控制器

              符合USB规范2.0

              全速(12Mbps)或低速(1.5Mbps)

              集成时钟恢复电路;无需外部晶体

              支持8个端点

              − 1KB USB缓存

              集成收发器;无需外部电阻

 

在片调试

              片内调试电路提供全速、非侵入式的在系统调试(不需仿真器!)

              支持断点、单步、观察/修改存储器和寄存器

              比使用仿真芯片、目标仿真头和仿真插座的仿真系统有更优越的性能

 

电压调整器输入:4.0V - 5.25V

高速8051微控制器内核

              流水线指令结构;70%的指令的执行时间为一个或两个系统时钟周期

              速度可达25MIPS(时钟频率为25MHz时)

              扩展的中断系统

 

存储器

              − 2304 B内部数据RAM(1K+256+1K USB FIFO)

              − 16KB FLASH;可在系统编程,扇区大小为512字节

 

数字外设

              − 25/21个端口I/O;均耐5V电压,大灌电流

              硬件增强型SPI、增强型UARTSMBus串口

              − 4个通用16位计数器/定时器

              − 16位可编程计数器/定时器阵列(PCA),有5个捕捉/比较模块

              使用外部时钟源和PCA或定时器的实时时钟方式

 

时钟源

              内部振荡器:0.25%的精度(时钟恢复被使能时)。支持USBUART操作

              外部振荡器:晶体、RCC、或外部时钟

              可在运行中切换时钟源,适用于节电方式

 

封装

              − 32LQFPC8051F320

              − 28MLPC8051F321

 

 

 

 






 




关键词: 碰到     接口     问题     公司     外部     时钟    

院士
2009-12-19 15:20:45     打赏
2楼
奖勤罚懒~~~~~~~~

顶起来

高工
2009-12-19 18:26:10     打赏
3楼
不错的Get Over it,顶起来

菜鸟
2009-12-19 23:08:29     打赏
4楼
谢谢

工程师
2009-12-21 09:32:34     打赏
5楼

思路很清晰,非常好!


菜鸟
2009-12-21 14:42:18     打赏
6楼
不错,谢啦!

菜鸟
2009-12-22 16:00:39     打赏
7楼

不错,学习了。:)


高工
2009-12-23 17:50:22     打赏
8楼
的确不错,现在板子上带USB接口的确是一个趋势,不过如果什么时候板子间可以进行USB全速通讯就好了,现在还总得麻烦PC机。

专家
2009-12-23 18:59:13     打赏
9楼

也就是USB OTG

简单地说,OTG就是On The Go,正在进行中的意思,也就是可以直接传输,就是可以从一个机器直接传到另一个机器中,举个例子 未来的一天,我拿着MEIZU最新产品“EX”来到学校,听着“EX”里面装着的我最新下载的一首新歌,我的一个好朋友夺下我的耳塞想听听这首歌,她一边听一边陶醉地说:“我找这首歌已经很久了,可是一直都没有能download到,你是在哪儿找到的???”我笑着要她拿出她的Mp3,同时我从钥匙扣上取下一条便携的数据线,数据线的一头插在“EX”上,另一头插在她的Mp3上,我打开“EX”的菜单,选中了基于OTG技术的传输模式,直接将这首好听但是难找的歌“拷”到了她Mp3上,她非常惊讶,直到她在自己的Mp3上听到了这首歌才相信这一切都是是真的……,呵呵呵



usb host         USB设备分为HOST(主设备)和SLAVE(从设备),只有当一台HOST与一台SLAVE连接时才能实现数据的传输。

简单的说,如果一个数码设备支持USB HOST,那么它就可以从另外一个USB设备中取得数据。
USB HOST线可以使得很多智能手机支持连接鼠标、键盘、硬盘、U盘、MP3、USB游戏手柄、USB HUB、USB网卡、USB打印机、手机、USB SIM手机卡读卡器等一堆设备,好处多多


所以一句话来说:一般情况下 OTG和HOST的区别就是host支持的东西多一点,otg传输方便点,不需要别的机器上有从设备的接口就能传输 ,就说真么多了

高工
2010-01-07 12:34:25     打赏
10楼

很多USB接口芯片都有HOST模式,不过高速传输很占用CPU时间,要有DMA的话就比较好。


共11条 1/2 1 2 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]