EZ-USB® 技术参考手册



8.6.1.2 EP0BCH 和 EP0BCL

These are the byte count registers for bytes sent as the optional data stage of a Control transfer. Although the EP0 buffer is only 64 bytes wide, the byte count registers are 16 bits wide to allow using the Setup Data Pointer to send USB IN data records that consist of multiple packets.

To use the Setup Data Pointer in its most-general mode, firmware clears the SUDPTR AUTO bit and writes the wordaligned address of a data block into the Setup Data Pointer, then loads the EP0BCH:L registers with the total number of bytes to transfer. The EZ-USB automatically transfers the entire block, partitioning the data into MaxPacketSize packets as necessary.

Note The Setup Data Pointer is the subject of section 8.7 The Setup Data Pointer on page 95.

For IN transfers without using the Setup Data Pointer, firmware loads data into EP0BUF, then writes the number of bytes to transfer into EP0BCH and EP0BCL. The packet is armed for IN transfer when the firmware writes to EP0BCL, so EP0BCH should always be loaded first. These transfers are always 64 bytes or less, so EP0BCH must be loaded with ‘0’ (and EP0BCL must be in the range [0-64]). EP0BCH holds that zero value until firmware overwrites it.

For EP0 OUT transfers, the byte count registers indicate the number of bytes received in EP0BUF. Byte counts for EP0 OUT transfers are always 64 or fewer, so EP0BCH is always zero after an OUT transfer. To re-arm the EP0 buffer for a future OUT transfer, the firmware simply writes any value to EP0BCL.

Note The EP0BCH register must be initialized on reset, since its power-on-reset state is undefined. 


EP0BCHEP0BCL作为控制传输在可选的数据阶段发送的字节的字节计数寄存器。虽然EP0缓冲区是64字节宽度,字节计数寄存器是16位宽度,允许使用Setup Data Pointer(SUDPTR)发送由多个数据包组成的USB IN数据记录。

要在常规模式下使用Setup Data Pointer,固件将清除SUDPTR AUTO位,并将数据块的对齐地址写入Setup Data Pointer,然后将EP0BCH:L寄存器装入要传输的总字节数。EZ-USB自动传输整个块,根据需要将数据分割为MaxPacketSize数据包。

注意 Setup Data Pointer作为第958.7节的主题。

输入传输没有使用Setup Data Pointer,固件将数据加载到EP0BUF中,然后将要传输的字节数写入到EP0BCHEP0BCL。当固件写入EP0BCL时,包就会进行传输,因此应始终首先加载EP0BCH。这些传输总是64字节或更少,因此EP0BCH必须装载“0(并且EP0BCL必须在[0 - 64]范围内)EP0BCH保持零值,直到固件覆盖它。

对于EP0输出传输,字节计数寄存器表示在EP0BUF中接收的字节数。 EP0输出传输的字节计数总是为64或更少,因此在输出传输结束之后,EP0BCH始终为零。为了在将来的输出传输中重新使用EP0缓冲区,固件只需将任何值写入EP0BCL

注意 EP0BCH寄存器必须在复位时初始化,因为其上电复位状态未定义。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: EZ-USB FX3是Cypress公司推出的高性能USB 3.0控制器,可广泛应用于视频采集、音频录制、医疗成像、工业自动化等领域。EZ-USB FX3中文手册是指其官方提供的EZ-USB FX3相关技术文档,其包含了产品的功能、硬件架构、软件设计方法、指令集以及应用案例等方面的详细描述。该手册不仅方便开发者理解和使用EZ-USB FX3,同时也提供了完整的技术支持文档供用户参考。 基本上,EZ-USB FX3中文手册分为以下几个部分:概述、产品描述、硬件设计、软件设计和附录。概述主要介绍了EZ-USB FX3 USB3.0控制器的一些特性及性能指标。产品描述则详细描述了EZ-USB FX3的架构、接口、功能以及本地和远程的软件支持。硬件设计则介绍了EZ-USB FX3的硬件元器件及其功能,以及如何设计电路板和外围电路。软件设计则讲解了如何使用EZ-USB FX3软件组件和驱动程序来编写相应的设备控制软件,并给出了常见的设计案例和提示。附录则包括了USB协议、数据包格式、数据传输模式和EZ-USB FX3的指令集。 总之,EZ-USB FX3中文手册是开发者进行EZ-USB FX3开发的重要参考资料,其丰富的技术文档和应用案例,不仅方便理解和掌握具体技术,也为EZ-USB FX3的使用和开发提供了强有力的技术支持。 ### 回答2: EZ-USB FX3是Cypress公司生产的一款USB3.0控制器芯片,它被广泛地应用于PC外围设备、工业控制、医疗设备、视频采集等领域。EZ-USB FX3中文手册是介绍这个芯片的技术手册,主要包括芯片的硬件结构、软件开发环境、通信协议、应用案例等方面的内容。通过阅读这个手册,人们可以了解到EZ-USB FX3芯片的主要性能和特点,以及如何使用这款芯片来开发USB3.0设备。同时,手册还提供了详细的软件开发说明和代码示例,方便开发人员快速上手开发工作,提高开发效率。此外,手册还介绍了芯片的系统应用案例,包括USB3.0摄像头、USB3.0数据采集卡、USB3.0外置硬盘等。这些案例可以为用户提供参考和借鉴,帮助用户快速了解如何使用EZ-USB FX3芯片来实现自己的USB3.0应用。总之,EZ-USB FX3中文手册是一本非常实用的技术手册,对于开发USB3.0设备的工程师和研究人员来说,是必不可少的参考资料。 ### 回答3: EZ-USB FX3是一种USB3.0外设控制器芯片,可用于设计和制造具有高速数据传输的USB设备。EZ-USB FX3中文手册详细介绍了这款芯片的基本原理、硬件设计、软件编程等内容,对于开发者来说是非常有价值的参考资料。 手册介绍了使用EZ-USB FX3开发USB设备所需的基本工具和建议,并详细讲述了芯片的硬件设计细节,例如如何选择封装和引脚,如何连接外部器件,以及如何配置与芯片相连接的主机接口等。手册还说明了如何使用EZ-USB FX3软件开发套件,以及如何编写C、C++和Python等编程语言的应用程序来控制芯片。 手册的中文版是为中国市场专门翻译的,对于不熟悉英文的开发者来说非常方便。手册的每章内容都非常详细,同时还配有示意图和代码示例,使得开发者更容易理解和掌握所有的技巧和技术。 总之,EZ-USB FX3中文手册是一本非常实用的参考资料,适用于所有需要设计和制造USB3.0外设的开发者。无论是对于初学者还是有经验的开发者,手册都可以提供全面准确的指导和帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值