USB开发
文章平均质量分 70
乔sir
这个作者很懒,什么都没留下…
展开
-
枚举的详细过程分析
下面介绍枚举的详细过程:①USB主机检测到USB设备插入后,就会先对设备复位。USB设备在总线复位后其地址为0,这样主机就可以通过地址0和那些刚刚插入的设备通信。USB主机往地址为0的设备的端点0发送获取设备描述符的标准请求(这是一个控制传输的建立过程)。设备收到该请求后,会按照主机请求的参数,在数据过程将设备描述符返回给主机。主机在成功获取到一个数据包的设备描述符并且确认没有错误后,原创 2015-05-22 19:28:44 · 1004 阅读 · 0 评论 -
BUS HOUND调试USB驱动遇到的错误代码解析
在使用BUS HOUND调试USB驱动时,在Capture页面会遇到抓取的错误信息,错误代码会在data字段显示,根据不同的显示,含义如下:顺便记录用于以后代码分析。ValueCodeMeaningUSBD_STATUS_CRC0xC0000001 CRC error (d转载 2015-08-31 10:27:53 · 5925 阅读 · 0 评论 -
USB枚举过程分析
1 枚举过程中,第一个来回的详细分析。检测到设备,主机发总线复位。这个复位与USB上电复位和系统复位是不同的。这个是SIE根据总线状态通知用户的一种复位。设备产生复位中断,如何处理由设备固件程序决定。主机发起第一个控制传输:(1)主机SETUP包(发往地址0端点0)、主机数据包(请求设备描述符)、设备握手包ACK转载 2015-06-16 09:46:24 · 1040 阅读 · 0 评论 -
用定时器实现流水灯
#include #define GPIO_Pin_6 0x0040 /* LED2 */#define GPIO_Pin_7 0x0080 /* LED1 */#define PLL_M8#define PLL_N 336#define PLL_P 2#define PLL_Q 7void RCC_con原创 2015-09-06 20:48:01 · 15538 阅读 · 0 评论 -
呼吸灯的实现
#include int BreathFlag;int BreathAdd;#define GPIO_Pin_6 0x0040 /* LED1 */#define GPIO_Pin_7 0x0080 /* LED2 */#define PLL_M 8#define PLL_N 336#define原创 2015-09-06 20:58:32 · 5421 阅读 · 0 评论 -
用中断实现流水灯
#include #define GPIO_Pin_6 0x0040 /* LED2 */#define GPIO_Pin_7 0x0080 /* LED1 */#define PLL_M 8#define PLL_N 336#define PLL_P 2#define PLL_Q 7uint32_t fl原创 2015-09-06 15:31:42 · 12213 阅读 · 0 评论