圈巨侠,救命啊!

[复制链接]
2912|11
 楼主| yzs0126 发表于 2009-5-15 11:55 | 显示全部楼层 |阅读模式
EDN学习板跑USB键盘示例时,枚举后,拔下来老是死机啊!这咋回事啊 搞的这板子我都不敢玩了!
computer00 发表于 2009-5-16 22:36 | 显示全部楼层

没道理啊...可能跟你电脑的驱动有关?你换台电脑试试?

  
 楼主| yzs0126 发表于 2009-5-18 10:17 | 显示全部楼层

回复圈圈

看来是我电脑的问题了,换了台就好使了,会不会PID,VID或者出厂编号什么的和之前已有的设备冲突,导致死机的呢!
computer00 发表于 2009-5-18 10:19 | 显示全部楼层

如果有冲突,那么应该不会出现新硬件的对话筐。

据说有些笔记本(好象是戴尔,记不清楚了)、装了bus hound后会有这个问题....
topone 发表于 2009-5-19 23:16 | 显示全部楼层

考虑下供电合接地

建议考虑下USB电缆的接地,ESD以及+5V电源
Terry_lin 发表于 2009-5-22 17:15 | 显示全部楼层

b ushound..经常导致死机

  
 楼主| yzs0126 发表于 2009-5-25 18:44 | 显示全部楼层

呵呵 谢谢!请问圈圈书中代码一个问题

&nbsp;&nbsp;最近学习了键盘例程,为什么用的都是结构体和联合体,这有什么好处吗?还有,鼠标例程枚举是在控制输出中断中进行的,而键盘例程里枚举是在控制输入中断里进行的,有点困惑!<br />&nbsp;&nbsp;拿键盘实例来说,每次控制操作先有一个建立包,这个是在控制输出中断中处理的,没什么疑义,可是接下来设备怎么进入控制输入中断里进行相应的枚举操作呢?中断输入标志是怎么置位的呢?这之前主机做了些什么,使得产生了输入中断!望圈老师赐教,学生不才哈!
computer00 发表于 2009-5-25 19:47 | 显示全部楼层

书中的代码好象用的是数组啊,没用结构体

  
 楼主| yzs0126 发表于 2009-5-26 09:27 | 显示全部楼层

回复圈圈!

光盘里键盘例程的代码,很多变量都是结构体和联合体!可是我的困惑还是没有解答啊,圈老师赐教!
computer00 发表于 2009-5-26 10:05 | 显示全部楼层

我晕,这个没有道理的啊...别人拿到的光盘都没结构体和联

你贴点代码上来看看?哪来的结构体啊?晕...
 楼主| yzs0126 发表于 2009-5-26 14:41 | 显示全部楼层

部分的,不过我又发现了另外一个没带结构体的代码版本!

/定义配置,接口,端点等描述符结构体,因为它们是随配置描述符一起返回的<br />typedef&nbsp;struct&nbsp;_CON_INT_ENDP_DESCRIPTOR_STRUCT<br />{<br />&nbsp;CONFIGURATION_DESCRIPTOR_STRUCT&nbsp;configuration_descriptor;<br />&nbsp;INTERFACE_DESCRIPTOR_STRUCT&nbsp;&nbsp;interface_descriptor;<br />&nbsp;HID_DESCRIPTOR_STRUCT&nbsp;hid_descriptor;<br />&nbsp;ENDPOINT_DESCRIPTOR_STRUCT&nbsp;&nbsp;endpoint_descriptor[ENDPOINT_NUMBER];<br />}CON_INT_ENDP_DESCRIPTOR_STRUCT;<br /><br />code&nbsp;CON_INT_ENDP_DESCRIPTOR_STRUCT&nbsp;con_int_endp_descriptor=<br />{<br />//configuration_descriptor&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;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//配置描述符<br />{<br />&nbsp;sizeof(CONFIGURATION_DESCRIPTOR_STRUCT),&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;//配置描述符的字节数大小<br />&nbsp;CONFIGURATION_DESCRIPTOR,&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;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//配置描述符类型编号<br />&nbsp;SWAP16(sizeof(CON_INT_ENDP_DESCRIPTOR_STRUCT)),<br />&nbsp;0x01,&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;&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;&nbsp;&nbsp;//只包含一个接口<br />&nbsp;0x01,&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;&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;&nbsp;&nbsp;//该配置的编号<br />&nbsp;0x00,&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;&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;&nbsp;&nbsp;//iConfiguration字段<br />&nbsp;0xA0,&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;&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;&nbsp;&nbsp;//采用总线供电,支持远程唤醒<br />&nbsp;0xC8&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;&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;&nbsp;&nbsp;//从总线获取最大电流400mA<br />},<br />//interface_descritor&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;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//接口描述符<br />{<br />&nbsp;sizeof(INTERFACE_DESCRIPTOR_STRUCT),&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;//接口描述符的字节数大小<br />&nbsp;INTERFACE_DESCRIPTOR,&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;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//接口描述符类型编号<br />&nbsp;0x00,&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;&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;&nbsp;&nbsp;//接口编号为0<br />&nbsp;0x00,&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;&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;&nbsp;&nbsp;//该接口描述符的编号<br />&nbsp;ENDPOINT_NUMBER,&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;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//非0端点数量为2,只使用端点主端点输入和输出<br />&nbsp;0x03,&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;&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;&nbsp;&nbsp;//人机接口设备(HID)类<br />&nbsp;0x01,&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;&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;&nbsp;&nbsp;//使用的子类:支持BIOS根启动Boot的子类<br />&nbsp;0x01,&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;&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;&nbsp;&nbsp;//使用的协议:键盘<br />&nbsp;0x00&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;&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;&nbsp;&nbsp;&nbsp;//接口描述符字符串索引<br />},<br /><br /><br /><br /><br />code&nbsp;uint8&nbsp;HeadTable[][74]={<br />&quot;********************************************************************
&quot;,<br />&quot;******&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EDN&nbsp;USB学习板键盘程序&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;******
&quot;,<br />&quot;******&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AT89S52&nbsp;CPU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;******
&quot;,<br />&quot;******&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;建立日期:&quot;,__DATE__,&quot;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;******
&quot;,<br />&quot;******&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;建立时间:&quot;,__TIME__,&quot;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;******
&quot;,<br />&quot;******&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;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;******
&quot;,<br />&quot;******&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;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;******
&quot;,<br />&quot;******&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;USB专区:http://group.**/93/&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;******
&quot;,<br />&quot;******&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;BLOG1:http://www.**/blog/computer00&nbsp;&nbsp;&nbsp;&nbsp;******
&quot;,<br />&quot;******&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;BLOG2:http://computer00.21ic.org&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;******
&quot;,<br />&quot;******&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;请按K1-K8分别进行测试&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;******
&quot;,<br />&quot;******&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;K1:左Ctrl键&nbsp;&nbsp;K2:左Shift键&nbsp;&nbsp;K3:左Alt键&nbsp;&nbsp;K4:0键&nbsp;&nbsp;&nbsp;&nbsp;******
&quot;,<br />&quot;******&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;K5:1键&nbsp;&nbsp;K6:2键&nbsp;&nbsp;K7:Caps&nbsp;Lock键&nbsp;K8:Num&nbsp;Lock键&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;******
&quot;,<br />&quot;********************************************************************
&quot;,<br />};<br /><br /><br /><br />/***************************主函数**********************************************/<br />void&nbsp;main(void)<br />{<br />&nbsp;uint8&nbsp;i;<br />&nbsp;InitUART();&nbsp;&nbsp;//串口初始化<br />&nbsp;Printc(0x0c);&nbsp;&nbsp;//清屏<br />&nbsp;Printc(0x0c);<br />&nbsp;Prints(&quot;系统启动.
&quot;);<br />&nbsp;for(i=0;i&lt18;i++)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//显示信息<br />&nbsp;{<br />&nbsp;&nbsp;Prints(HeadTable);<br />&nbsp;}&nbsp;<br />&nbsp;disconnect_usb();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//断开USB连接<br />&nbsp;delay(1000);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//延迟<br />&nbsp;init_usb();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//初始化USB芯片<br />&nbsp;connect_usb();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//连接USB<br />&nbsp;InitKeyboard();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//<br /><br />&nbsp;while(1)<br />&nbsp;&nbsp;{&nbsp;<br />&nbsp;&nbsp;&nbsp;if(!USB_INT)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//中断产生<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;read_interrupt_register();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(Interrupt_Register.Interrupt.bus_reset){usb_bus_reset();continue;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(Interrupt_Register.Interrupt.suspend_change){usb_bus_suspend();continue;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(Interrupt_Register.Interrupt.control_out_port){endp0_out();continue;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(Interrupt_Register.Interrupt.control_in_port&&usb_flags.flags.usb_endp0_in){endp0_in();continue;}<br />//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(Interrupt_Register.Interrupt.port_out_1)endp1_out();<br />//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(Interrupt_Register.Interrupt.port_in_1)endp1_in();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(Interrupt_Register.Interrupt.main_out_port){endp2_out();}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(Interrupt_Register.Interrupt.main_in_port){endp2_in();}<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;}<br />}<br />/******************************************************************************/
computer00 发表于 2009-5-31 15:51 | 显示全部楼层

你贴的是网上老版本的代码,根本不是随书光盘的,

不知道你怎么复制的,光盘里没有都能复制得到。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

59

帖子

0

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