USB的小小问题!!!

[复制链接]
2707|3
 楼主| win2000_li 发表于 2008-3-3 23:17 | 显示全部楼层 |阅读模式
&nbsp;&nbsp;&nbsp;&nbsp;兄弟最近在搞USB,但是发现一个问题,就是USB上电检测端口的设置问题。<br />因为我现在的设计是没有这个检测端口的,那么在程序里怎么处理呢???<br />我把相关的端口设置都注释掉了,但是还是不行,USB设备根本不能运行。<br />请教怎么处理才能行呢????<br />&nbsp;&nbsp;&nbsp;&nbsp;以下是相关的检测端口的程序!!!请高手指点!!!<br /><br /><br />//#define&nbsp;USB_sense&nbsp;&nbsp;PORTAbits.RA1&nbsp;&nbsp;//USB&nbsp;上电检测端口<br />//#define&nbsp;tris_usb_bus_sense&nbsp;TRISAbits.TRISA1<br />/*************************<br />*&nbsp;USB检测总线状态函数<br />**************************/<br />void&nbsp;USBCheckBusStatus()<br />{<br />&nbsp;&nbsp;//if(USB_sense==USB_BUS_ATTACHED)&nbsp;//如果USB设备上电<br />&nbsp;&nbsp;&nbsp;//{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(UCONbits.USBEN&nbsp;==&nbsp;0)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//如果USB现在处于禁止状态,使能<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UCON&nbsp;=&nbsp;0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UIE&nbsp;=&nbsp;0;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;清除所有USB中断<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UCONbits.USBEN&nbsp;=&nbsp;1;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;使能USB模块<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;usb_device_state&nbsp;=&nbsp;ATTACHED_STATE;&nbsp;&nbsp;//&nbsp;USB进入上电状态<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;//}<br />&nbsp;&nbsp;//else<br />&nbsp;&nbsp;&nbsp;//{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(UCONbits.USBEN&nbsp;==&nbsp;1)&nbsp;&nbsp;//&nbsp;如果USB处于使能状态,禁止<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UCON&nbsp;=&nbsp;0;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;禁止USB模块<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UIE&nbsp;=&nbsp;0;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;清所有USB中断<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;usb_device_state&nbsp;=&nbsp;DETACHED_STATE;&nbsp;&nbsp;//&nbsp;USB设备处于断开状态<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br /><br />&nbsp;&nbsp;//&nbsp;}//end&nbsp;if(USB_sense==USB_BUS_ATTACHED)<br /><br />&nbsp;&nbsp;if(usb_device_state&nbsp;==&nbsp;ATTACHED_STATE)&nbsp;&nbsp;//如果USB处于上电状态<br />&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!UCONbits.SE0)&nbsp;//未检测到单端0<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UIR&nbsp;=&nbsp;0;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;清除所有USB中断标志<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UIE&nbsp;=&nbsp;0;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;复位所有USB中断<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UIEbits.URSTIE&nbsp;=&nbsp;1;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;允许复位中断&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UIEbits.IDLEIE&nbsp;=&nbsp;1;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;允许空闲检测中断&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;usb_device_state&nbsp;=&nbsp;POWERED_STATE;//POWERED_STATE=2,USB总线有效状态&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<br />&nbsp;&nbsp;&nbsp;}//end&nbsp;if(USB_sense&nbsp;==&nbsp;USB_BUS_ATTACHED)<br />}//end&nbsp;USBCheckBusStatus()<br />
 楼主| win2000_li 发表于 2008-3-4 09:05 | 显示全部楼层

顶起

兄第们,帮帮忙!!!!!
 楼主| win2000_li 发表于 2008-3-4 23:19 | 显示全部楼层

为什么是这样啊!!!

快来帮帮我吧!!!!<br /><br />哪位兄弟做出来的USB,出来顶一个吧!!
hccshiyong 发表于 2008-3-5 10:00 | 显示全部楼层

这不是什么小问题了

我估计是VID引起的巴?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

142

主题

718

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部