再看描述的时候一定要注意,上面写的Command: 0xFE, Data: write 1 byte 意思是,命令0xFE,数据写入一个字节,而写入的一个字节是下一次向CmdCode寄存器执行写数据时就可以操作0xFE命令所提供的功能,注释/*写入数据*/的那一行代码。就是我们要实现的连接功能,现在来看下定义的数据是多少!
#define DAT_WR_BYTE(x) (0x00000100 | ((x) << 16)) //x为要写入的数据,01写。
用前面说的命令格式分析就知道这条命令是写命令。在main函数中调用的USB_SetDevCondition(DEV_CON);函数的参数DEV_CON的定义是;
#define DEV_CON 0x01 //连接位表示设备的当前连接状态。用于CONNECT输出
这说明写入0xFE命令所提供功能的数据是0x01,对照前面0xFE提供的功能可以知道这就是让CONNECT输出低电平。这样就实现了D2+拉高了。
|