| 
			 
					阅读:1889回复:5
				 
				问题: 用ds生成的D12驱动, 端点包最大值随机变化的问题(有图)
					用usbview 查看具体报告 
							这是U盘的,它里面的端点报告的 wMaxPacketSize 的数值每次都是固定的 如64,1287 而我的。。  | 
	|
					
						
						
						
						
						
  | 
	
| 
			 沙发# 
								发布于:2007-10-14 12:53				
			
					而我却是随机的,每次拔插都不一样。。有时候数值很大,有时候却为0				 
							 | 
	|
					
						
						
  | 
	
| 
			 板凳# 
								发布于:2007-10-14 12:59				
			
					而且经常出现超出带宽的提示,这是不是跟未设置端点包的最大值有关? 
							我在OnStartDevice(KIrp I) 函数里也设置了大小 m_Endpoint2IN.SetMaximumTransferSize(64); m_Endpoint2OUT.SetMaximumTransferSize(64); m_Endpoint1OUT.SetMaximumTransferSize(16); m_Endpoint1IN.SetMaximumTransferSize(16); 但还是没作用 这是什么原因产生的,我为什么我的值不是固定的,要在哪里设那个 出现USB控制器带宽不足是不是上面那个原因造成的?  | 
	|
					
						
						
  | 
	
| 
			 地板# 
								发布于:2007-10-14 16:59				
			
					原因找到。。。现在好了。。				 
							 | 
	|
					
						
  | 
	
| 
			 地下室# 
								发布于:2007-10-14 20:10				
			
					在网站中搜索到 
							凡是用DriverStudio2.6 开发USB 上层驱动的话,要修改DriverStudio2.6 中的BUG 删除pPipeInfo->PipeFlags |= USBD_PF_CHANGE_MAX_PACKET 這一行,此行在Kusb.cpp 中的 KUsbLowerDevice::Configure(..) 內. 如果没有按照上面做的话,在进行USB 驱动开发中,PC 对USB 端点的读取会造成电脑的蓝屏 屏蔽掉上面那句后,正常了,useview读出的数据也是固定大小了。。 唉。。。  | 
	|
					
						
  | 
	
| 
			 5楼# 
								发布于:2009-10-29 10:29				
			
					不错的分享,那么多人看怎么不顶呢?没人性				 
							 | 
	|
							
				