zer0line
驱动牛犊
驱动牛犊
  • 注册日期2001-11-02
  • 最后登录2004-03-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:3295回复:30

63001的问题!做过的过来帮帮忙!!!

楼主#
更多 发布于:2002-07-12 16:53
我参照usbhidio.asm写的固件程序框架,结合要实现的功能后,决定只采用ep0,只用ep0的控制传输完成对设备的配置和用户程序与设备间的数据传输。把我要实现的设备功能都定义为厂商的请求(对应应该是0xc0,0x40?),再根据请求中wvalue的值来判断是要请求的哪种功能,从而转向完成此功能的子函数。如果我这样做的话,在控制传输进行之前的代码,比如说main loop的函数如何写?因为我调试的时候总是观察不到控制传输三个阶段的运行。还有一点不是很明确,就是主机对设备的配置应该是在控制传输三个阶段内完成的吧?另外,列举的部分完成与否如何判断?
还有我现在的firmware运行后,主机得不到设备的描述符和vid、pid 我想应与mainloop有关,可是不知道如何写才行?请做过的哥们分析以下给些提示!困饶很久了,sigh! :(
zer0line
驱动牛犊
驱动牛犊
  • 注册日期2001-11-02
  • 最后登录2004-03-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-07-15 17:26
斑竹做过,帮帮忙!!只有自己up了:(
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-07-16 09:14
你提的问题太乱了,我都不知道你具体在问什么.最好用1,2,3,4标示出来,一目了然,别人回答的时候也有针对性.
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
zer0line
驱动牛犊
驱动牛犊
  • 注册日期2001-11-02
  • 最后登录2004-03-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-07-16 09:34
我参照usbhidio.asm写的固件程序框架,结合要实现的功能后,决定只采用ep0,只用ep0的控制传输完成对设备的配置和用户程序与设备间的数据传输。把我要实现的设备功能都定义为厂商的请求(对应应该是0xc0,0x40?),再根据请求中wvalue的值来判断是要请求的哪种功能,从而转向完成此功能的子函数。
问题:
1。我是否可以这样做?
2。可以的话,main loop函数怎么写呢?或者说在这种情况下,main loop部分要完成什么样的功能;
3。如何判断主机对设备的列举完成;

斑竹、大家帮忙!


kfb
kfb
驱动牛犊
驱动牛犊
  • 注册日期2002-01-27
  • 最后登录2008-01-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-07-16 21:05
很巧! 我也正在做63001A,可以看的出:我比你做的糟糕。
你是用CY3650和CM8MON41了吗?
如果用的顺手的话,我想用一些断点来调试你的程序。
还有你的程序可参考一些USB鼠标(有下载的)。
可是我的CY3650怎么用,都不行,不知道是它的问题,还是我的问题, 也许我和它都有问题。
zer0line
驱动牛犊
驱动牛犊
  • 注册日期2001-11-02
  • 最后登录2004-03-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2002-07-17 08:44
kfb:
我也是用cy3650和cm8mon41,
可以把你的遇到的情况说一下,为什么不能用?
或许大家可以帮你
kfb
kfb
驱动牛犊
驱动牛犊
  • 注册日期2002-01-27
  • 最后登录2008-01-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2002-07-17 22:00
我的遭遇如下:
    首先我觉得我所调试的程序没问题,因为它写到片子里,
可以正常运行!
    但我把程序下载到CY3650板上RAM中,然后RUN。
我再把PC机的USB接口接到CY3650板上的USB接口后,通过CM8MON41
知道:USB总线仅使本开发板复位,却不能使开发板得端点0的中断!
PC机上表明USB设备无回应。
   我的环境: 同一台PC:WIN98!
你的环境? 你的开发板可得到SETUP中断吗?

kfb
kfb
驱动牛犊
驱动牛犊
  • 注册日期2002-01-27
  • 最后登录2008-01-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2002-07-18 22:34
大家再帮我看看!
谢谢!!!
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2002-07-19 09:53
1. 可以
2. 初始化,无限循环
3. 一般在SetConfig后. 你需要知道这个干嘛?
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
zer0line
驱动牛犊
驱动牛犊
  • 注册日期2001-11-02
  • 最后登录2004-03-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2002-07-22 15:14
to rayyang:关于第2个问题,能说的更为详细一点吗?
wuzhenq
驱动牛犊
驱动牛犊
  • 注册日期2001-07-17
  • 最后登录2008-01-11
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2002-07-22 16:22
我做过cy7c63413的开发,用cy3651仿真的,和3650差不多,我觉得仔细看懂鼠标和键盘的例子程序应该没问题,还是比较简单的!
calf
驱动牛犊
驱动牛犊
  • 注册日期2001-10-30
  • 最后登录2006-07-15
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2002-07-24 11:12
To zerline:

你现在的项目做的怎么样了。
你的control_write是怎么处理的?

qq:5723737
jonhychang@263.net
Phoritto
驱动小牛
驱动小牛
  • 注册日期2002-06-18
  • 最后登录2002-11-14
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2002-07-24 13:58
你有没有开发包。如果哦你又开发包的话很容易的。还有你说主机找不到VID,PID。那你的设备计算机可以识别嘛!  
zer0line
驱动牛犊
驱动牛犊
  • 注册日期2001-11-02
  • 最后登录2004-03-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2002-07-24 14:11
to:Phoritto
计算机只能识别出是usb device(应该是没有识别吧),另外你说的开发包指的是什么?

---------------
qq:23270714
mail:zhangaidi@163.net
jbxie
驱动牛犊
驱动牛犊
  • 注册日期2002-04-28
  • 最后登录2002-12-12
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2002-07-24 14:29
CY3650的仿真环境需要纯英文操作系统。
参考鼠标的示例。
比较简单,坚持就是胜利。
jbxie
Phoritto
驱动小牛
驱动小牛
  • 注册日期2002-06-18
  • 最后登录2002-11-14
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2002-07-24 15:01
我说的开发包是Cypress公司的开发板带的一套开发软件。如果你能等到的话开发起来就很简单了。对了,你的设备完成啥功能?
Phoritto
驱动小牛
驱动小牛
  • 注册日期2002-06-18
  • 最后登录2002-11-14
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
16楼#
发布于:2002-07-24 15:04
对了,忘了问你。你的板子上有没有EEPROM呀!一般VID PID都是烧到里面。在上电是自动下载。主机识别。既然你没有识别,下面的工作也就不能进行 :)。
zer0line
驱动牛犊
驱动牛犊
  • 注册日期2001-11-02
  • 最后登录2004-03-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
17楼#
发布于:2002-07-24 15:46
 to:jbxie:
CY3650的仿真环境需要纯英文操作系统。
参考鼠标的示例。比较简单,坚持就是胜利。
我用的中文win2000pro,只要将区域设置改为英文,可以进行仿真的,不知道和纯英文操作系统有什么区别?另:谢谢鼓励:)

to:Phoritto

  
我说的开发包是Cypress公司的开发板带的一套开发软件。如果你能等到的话开发起来就很简单了。对了,你的设备完成啥功能?
对了,忘了问你。你的板子上有没有EEPROM呀!一般VID PID都是烧到里面。在上电是自动下载。主机识别。既然你没有识别,下面的工作也就不能进行 。
有cy3650开发板所带的一些例程(hid的),和一个监视环境;在仿真的时候,有两种方式,我是将*.rom文件下载到program ram里,我想这个和你说的主机“识别”没有影响; 现在只要能完成与主机的通信,就可以了~~

希望正在做和做过cypress6300x的朋友留下你们的qq或email,便于大家彼此交流,共同提高!

-----------------------
qq:23270714
email:zhangaidi@163.net
Phoritto
驱动小牛
驱动小牛
  • 注册日期2002-06-18
  • 最后登录2002-11-14
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
18楼#
发布于:2002-07-24 16:03
那你pid vid是多少你自己应该清楚吧。你可以到注册表里看看你的设备发现没有。发现了可以看见你的PID VID.
zer0line
驱动牛犊
驱动牛犊
  • 注册日期2001-11-02
  • 最后登录2004-03-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
19楼#
发布于:2002-07-24 16:28
pid和vid是我随便设置的,0001,04b4,可是在注册表中是显示的是vid0000&pid0000。

另外在注册表中的key_local_machine\\system\\currentcontrolset\\enum\\usb\\某一设备
\\下有一个键值:locationinformation:REG_SZ:XXXX,另外还有一个:DeviceDesc:REG_SG:YYYY,我想知道,这个XXXX和YYYY是在固件中设定的呢,还是在*.inf文件中呢?
上一页
游客

返回顶部