打印

USB总线模块 概述

[复制链接]
690|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
给力芯片|  楼主 | 2015-11-25 17:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
PSoC USB作为一个USB设备和一个主机进行通信。USB模块作为PSoC内的一个固定功能的设备。只支持全速通信(12Mbps),并且和USB2.0协议兼容。USB设备设计成即插即用,也支持热插拔。
沙发
zhengbo7hui| | 2015-11-25 17:33 | 只看该作者
USB总线模块的特点有:
与USB2.0规范兼容;
支持全速外设,最高速率到12Mbps;
支持8个数据端点和1个控制端点;
支持四种类型的传输-块(批量)传输、中断传输,同步传输和控制传输;
支持热插拔;
支持存储转发传输模式,最大包的大小为64个字节;
差分信号(D+和D-)输出;
支持P2/2和CMOS信号;
支持两个Vccd电压范围,通常的电压范围为3.3V;

使用特权

评论回复
板凳
zb0830| | 2015-11-25 17:36 | 只看该作者
下图给出了USB模块的结构图,该模块由串行接口引擎(Serial Interface Engine,SIE)和仲裁器构成。

使用特权

评论回复
地板
zheng522| | 2015-11-25 17:37 | 只看该作者
SIE用于处理译码,以及在发送和接收时,创建数据
和控制包。在接收时,SIE将USB的位流解码成USB的包;
在发送时,创建USB的位流。下面给出SIE的主要特性:
兼容USB2.0规范;
支持1个设备地址;
支持8个数据端点和1个控制端点;
每个端点支持中断;
在48MHz时钟(最大允许的公差为±0.25%)下全速运行;
在控制端点集成一个8字节缓冲区;

使用特权

评论回复
5
zhengbo7hui| | 2015-11-25 17:37 | 只看该作者
这个模块的寄存器主要用于配置数据端点操作和控制端点的数据缓冲。寄存器也控制每个端点可用的中断。        SIE在每次传输结束后产生中断。使用USB_SIE_INT_EN寄存器可以使能/禁止端点的中断。通过USB_SIE_INT_SR寄存器可以得到端点的中断状态。

使用特权

评论回复
6
zb0830| | 2015-11-25 17:38 | 只看该作者
SIE寄存器CNT0和CNT1保持着每个端点的计数值,这个计数值表示USB传输的数据字节的个数。在输出(OUT)端点情况下,固件程序确定端点所能接收到的最大的字节。SIE用所接收到的字节数更新寄存器。在输入(IN)端点情况下,它保持将要发送数据的字节数。
        USB_SIE_EPx_CR0寄存器保持每个端点的模式值。模式值决定了USB模块对主机的响应。表5给出了USB_SIE_EPx_CR0寄存器MODE位域的值。

使用特权

评论回复
7
zb0830| | 2015-11-25 17:41 | 只看该作者
SIE也报告发送错误,USB_SIE_EPx_CR0寄存器的比特为“err_in_txn“表示错误的发生。
        当设置该位时,当它接收到来自主机的其它IN令牌时,硬件自动重发相同的数据。
        这种重发只出现在存储转发模式下。在直通模式下,通过固件读取该位来确定重发数据。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

65

主题

624

帖子

0

粉丝