阅读:1957回复:19
有用过ISP1581的高手没有?出来帮个忙啊!
有用过ISP1581的高手没有?出来帮个忙啊!
编程手册里有固件编程的程序,可是飞利浦的网站没有下载。 那位大侠有,给小弟发一份吧,万分感谢!! mengfly@btamail.net.cn |
|
沙发#
发布于:2003-09-22 11:39
手写输入程序都嫌麻烦啊? :D
|
|
板凳#
发布于:2003-09-22 11:51
关键是没有源代码呀!
|
|
地板#
发布于:2003-09-22 11:52
怎么可能?我就是在那里下载的,是你没找到吧
|
|
|
地下室#
发布于:2003-09-22 12:36
多谢大侠!!
|
|
5楼#
发布于:2003-09-25 12:23
大侠还得帮个忙
RaiseIRQL();LowerIRQL();是干什么用的 是用来关中断,开中断的么? |
|
6楼#
发布于:2003-09-25 15:16
是开中断和关中断的,其实它的原来面目是disable()和enable(),c语言的库里有这两个函数。
|
|
7楼#
发布于:2003-09-25 16:22
原来如此
我是用DSP来控制1581,没有这两个函数。 还有请问: Hal4Sys_ControlISP1581Interrupt(FALSE);是关的什么中断呢? |
|
8楼#
发布于:2003-09-29 15:30
现在可以完成读取设备描述符,可是到不了下一步设置地址。
怎么回事呢,帮忙分析一下! |
|
9楼#
发布于:2003-09-29 15:34
读取设备描述符后
bISP1581flags.bits.DCP_state变成USBFSM4DCP_CONTROLREADHANDSHAKE 可是主循环里没有对它相应 |
|
10楼#
发布于:2003-10-09 19:49
用bushound观察数据,没法开始没举。
总出现没响应,没法连续两次获取设备描述符。 ev Phase Data Info Time Cmd.Phase.Ofs --- ----- ------------------------- ------------- ----- ------------------ 9 DI 02 . 9 CTL a3 00 00 00 - 01 00 04 00 CLASS 9 DI 01 01 0100 .... 9 CTL a3 00 00 00 - 01 00 04 00 CLASS 9 DI 01 01 01 00 .... 9 CTL 23 01 10 00 - 01 00 00 00 CLASS 9 CTL a3 00 00 00 - 01 00 04 00 CLASS 9 DI 01 01 00 00 .... 9 CTL a3 00 00 00 - 01 00 04 00 CLASS 9 DI 01 01 00 00 .... 9 CTL 23 03 04 00 - 01 00 00 00 CLASS 9 DI 02 . 9 CTL a3 00 00 00 - 01 00 04 00 CLASS 9 DI 03 01 10 00 .... 9 CTL 23 01 14 00 - 01 00 00 00 CLASS 9 CTL a3 00 00 00 - 01 00 04 00 CLASS 9 DI 03 01 00 00 .... 9 DI 12 01 10 01 - 00 00 00 40 .......@ cc 04 41 1b - 00 00 01 02 ..A..... 03 01 .. 9 CTL a3 00 00 00 - 01 00 04 00 CLASS 9 DI 03 01 00 00 .... 9 CTL 23 03 04 00 - 01 00 00 00 CLASS 9 DI 02 . 9 CTL a3 00 00 00 - 01 00 04 00 CLASS 9 DI 03 01 10 00 .... 9 CTL 23 01 14 00 - 01 00 00 00 CLASS 9 USTS 05 00 00 80 no response 9 CTL a3 00 00 00 - 01 00 04 00 CLASS 9 DI 03 01 00 00 .... 9 CTL 23 03 04 00 - 01 00 00 00 CLASS 9 DI 02 . 9 CTL a3 00 00 00 - 01 00 04 00 CLASS 9 DI 03 01 10 00 .... 9 CTL 23 01 14 00 - 01 00 00 00 CLASS 9 DI 12 01 10 01 - 00 00 00 40 .......@ cc 04 41 1b - 00 00 01 02 ..A..... 03 01 .. 9 CTL a3 00 00 00 - 01 00 04 00 CLASS 9 DI 03 01 00 00 .... 9 CTL 23 03 04 00 - 01 00 00 00 CLASS 9 DI 02 . 9 CTL a3 00 00 00 - 01 00 04 00 CLASS 9 DI 03 01 10 00 .... 9 CTL 23 01 14 00 - 01 00 00 00 CLASS 9 CTL 23 01 01 00 - 01 00 00 00 CLASS 9 CTL a3 00 00 00 - 02 00 04 00 CLASS 9 DI 00 01 00 00 .... |
|
11楼#
发布于:2003-10-10 11:03
原来如此 唉,你用的固件是philips为8051写的,以知道dsp上有很多东西都需要修改的,dsp的开关中断你不会吗? 把那些没用的都删了吧,如Hal4Sys.c、verify.c文件里的东西都是没有用的!!!有用的相关的文件是chap9.c,isr.c,isp1581.c,mainloop.c及其头文件,还有usb200.h,common.h,其它的都去掉吧,包括那些调试信息,如: cprintf(\" odd/even\\r\\n\");//输出调试信息 textattr(0x09);//好像是在显示器上输出点什么东西,不记得了,很古老的东西了,都去掉吧!!! 仔细看看philips提供的编程指导的开始一段,里面讲了如何移植程序。 [编辑 - 10/10/03 by jinghuiren] |
|
12楼#
发布于:2003-10-10 11:11
读取设备描述符后 大哥,dsp的编程环境里有Find in files呀,你搜一下好吗? 你到isr.c的isr_ep0txdone()或者isr_ep0rxdone()里看看有没有 你把程序从mainloop开始的运行流程及调用关系画个流程图吧,其实在philips提供的编程指导上有的。 唉~~~~~~~~~~~~~~ |
|
13楼#
发布于:2003-10-10 17:33
多谢专家,这两问题已解决觉了。
现在无法开始枚举,主机读取一次描述符后, 第二次总是no response,或是根本没响应,然后就挂起了。 还有个问题,怎么给你分呀:) |
|
14楼#
发布于:2003-10-10 20:24
可能原因:
1,你虽然发送数据给主机了,但是在接下来的ep0tx中断里面没有给主机发送ack信号, 2,主机根本就没有收到你的数据,也就是说你的数据没有写到端点里 3,你发送给主机的描述符有错误, 其中1、2的可能性大一些,如果是3的话主机会重新给你发两次setup包。 最后,点击第一贴下面的那一排按钮里的那个给分键给分! [编辑 - 10/10/03 by jinghuiren] |
|
15楼#
发布于:2003-10-15 11:01
楼主兄弟,你好,你在用isp1581开发,小弟也正在做,但是千头万绪,实在烦恼。
你们在上面说有源代码可用?给小弟一份吧,我在philips的网站上怎么没有找到。如有代码参考,真是不胜感激。谢谢! |
|
16楼#
发布于:2003-10-15 11:03
对了,小弟email
diy123456789@163.com |
|
17楼#
发布于:2003-10-15 12:31
前面不是有链接么。
直接下呀 |
|
18楼#
发布于:2003-10-15 13:03
ft,原来上边有,谢谢你们了!!
|
|
19楼#
发布于:2003-10-27 14:54
多谢大侠帮忙,现在已经可以完成没举了,系统也识别出设备了。
可是一用你给的UsbDevice,他就占用CPU全部资源,什么都动不了了。 还请问大侠,完成枚举后,怎么进行传送数据的测试呢, 这里没有书讲,我也一点概念都没有,望高手执教,定赠高分! 先谢过了! |
|