USB错误代码详解与ZLG/USB1700 HOST驱动开发

需积分: 32 111 下载量 87 浏览量 更新于2024-08-10 收藏 9.83MB PDF 举报
"该资源主要涉及的是嵌入式系统中USB通信的相关错误代码及ZLG/USB1700 HOST软件包的应用,同时也涵盖了LPC1700微控制器的各种功能部件,包括系统节拍定时器、脉宽调制器(PWM)、电机控制PWM(MCPWM)、正交编码接口(QEI)以及实时时钟(RTC)的介绍和使用。" 在USB通信中,错误代码是诊断和解决问题的关键。例如,USB_ERR_SUCESS表示操作成功,而USB_ERR_DEVICE_NOT_ATTACHED意味着设备未连接;USB_ERR_DEVICE_NOT_READY表示设备未准备好,可能在设备枚举之前调用了批量或中断传输函数;USB_ERR_SOFT_NOT_SUPPORT则表示软件包不支持当前操作;USB_ERR_EXIT_REQ指示卸载函数请求退出;USB_ERR_TIMEOUT表示数据传输超时;USB_ERR_NOERR与USB_ERR_SUCESS相同,代表传输正常;USB_ERR_CRC、USB_ERR_BITSTUFFING、USB_ERR_DATATOGGLEMISMATCH、USB_ERR_STALL、USB_ERR_DEVICENOTRESPONDING、USB_ERR_PIDCHECKFAILURE和USB_ERR_UNEXPECTEDPID等错误则涉及数据传输中的各种异常情况,如CRC校验错误、位填充错误、数据触发位不匹配、端点被禁止、设备无响应、PID校验失败和未知PID等。 ZLG/USB1700 HOST软件包用于设计U盘的主机驱动程序,它基于USB的大容量类设备驱动,这些设备通常使用Bulk-Only传输协议和RBC(Reduced Block Commands)命令集,这是SCSI-2命令集的简化版本,适用于大多数实际操作。 LPC1700微控制器的功能部件包括: 1. 系统节拍定时器(SysTick Timer):用于提供系统时基,通常用于调度和延迟功能。 2. 脉宽调制器(PWM):用于生成可变占空比的模拟信号,常用于电机控制和其他模拟信号生成。 3. 电机控制PWM(MCPWM):专为电机控制设计,具有更高级别的功能和灵活性。 4. 正交编码接口(QEI):用于测量旋转编码器的速度和方向,常用于闭环电机控制系统。 5. 实时时钟(RTC):提供精确的时间保持功能,支持闰年计算和中断设置。 每一部分都详细介绍了其工作原理、特点、寄存器描述、操作示例和中断设置,为开发者提供了全面的参考资料,便于在实际项目中进行硬件驱动编程和系统集成。