工业控制 | 能源技术 | 汽车电子 | 通信网络 | 安防监控 | 智能电网 | 移动手持 | 无线技术 | 家用电器 | 数字广播 | 消费电子 | 应用软件 | 其他方案

ISP1761的应用

作者:dolphin时间:2016-09-27

ISP1761的应用
移动电话,数码相机,打印机,mp3 播放器,个人数码助理等等。
下面是ISP1761 的结构图,用于帮助我们更好的理解ISP1761的工作原理。

该文件主要是USB 基础传输协议的实现,在它之下是硬件链路层,ISP1761 的读写访问
数据的传送,在它之上是应用协议层,譬如SCSI 协议等。该文件起到了很好的承上启下的作
用,这里面主要运用到的是setup 传输。首先通过枚举,知道设备的类型和设备所具有的特
定信息,包括生产厂家,设备型号,传输端点,端点类型,端点容量等等,这都是后续工作所
必需的基本信息。
#include "usb.h"
#include "ISP1761.h"
#include "timer.h"
#include "usb.inc"
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* 函数名称 : DeviceEnum
* 输入参数 : 无
* 输出参数 : FAIL 失败
* SUCCESS 成功
* 功能说明 : 设备枚举,这是进行usb 传输的第一步
*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*/
int DeviceEnum( void )

unsigned int i, j, k;
unsigned char usCfgDescriptor[64], usDescriptor[64];/*声明描叙符buffer*/
unsigned char portstatus[4]; /*声明端口状态变量*/
sDevDesc sDev; /*设备描述符*/
sCfgDesc sCfg; /*配置描述符*/
sIntfDesc sIfc; /*接口描述符*/
sEPDesc sEnp[4]; /*端点描述符*/
i = 0;
j = 0;
DevReset:
if( j++ == 10 )
return FAIL;
HubAddr = 0;
USBSPEED = HIGHSPEED;

ISP1761中文资料



评论

技术专区