lpbirdueng
驱动牛犊
驱动牛犊
  • 注册日期2004-02-20
  • 最后登录2004-05-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1852回复:17

longyinjiuxiao请进。小弟有问题!!!!!!!!!!

楼主#
更多 发布于:2004-05-18 16:50
Hi,longyinjiuxiao!
听说你的问题解决了,祝贺你。我在论坛看过你的帖子,咱们遇到的问题差不多,你是如何解决的?修改了那些地方?帮帮我吧!我快烦死了!我的qq:12106491  

最新喜欢:

lhaihlhaih
longyinjiuxiao
驱动小牛
驱动小牛
  • 注册日期2004-03-15
  • 最后登录2004-06-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-05-18 16:53
你的情况跟ms520sxl一样吗?
你的D12也没有回应get_descriptor吗?
不能进IN中断吗?
如果是,
请求参考ms520sxl的帖子。
longyinjiuxiao
驱动小牛
驱动小牛
  • 注册日期2004-03-15
  • 最后登录2004-06-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-05-18 17:02
其实我也没有做出来,
我只是修改后就可以进IN中断了。
我只做到了SET_ADDRESS这一步,
没有收到set_configuration。

我不知道我的修改对不对,
但是我也有疑问,
端点状态寄存器有一个位叫“设置包”,
而最后处理状态寄存器有一个位叫“设置信息包”,
我也不知道两者的区别,
只是我看见周立功的程序用的是后者,
可是我用他的程序并不能回应get_desriptor请求,
于是我就改过来试试,
谁知竟然能回应了,
我也不知道其中的原由。
lpbirdueng
驱动牛犊
驱动牛犊
  • 注册日期2004-02-20
  • 最后登录2004-05-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-05-18 17:12
能把具体修改的程序贴出来参考一下吗?你说的是不是周立功的《d12固件和驱动程序编程〉》那本书
longyinjiuxiao
驱动小牛
驱动小牛
  • 注册日期2004-03-15
  • 最后登录2004-06-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-05-18 17:17
是的,
他的书上用的是最后处理状态寄存器。

只改下面的程序:

//端点0OUT中断
void ep0_rxdone(void)
{
unsigned char ep_last, i,epstatus2;

ep_last=D12_ReadLastTransactionStatus(0); //清中断标志

epstatus2=D12_ReadEndpointStatus(0);

if (epstatus2&0x04)
{
//接收到SETUP包
ControlData.wLength = 0;
ControlData.wCount = 0;

lpbirdueng
驱动牛犊
驱动牛犊
  • 注册日期2004-02-20
  • 最后登录2004-05-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-05-18 17:25
只修改了一个地方吗?你收到的id对吗?
我有时能收到数据,但id不对
longyinjiuxiao
驱动小牛
驱动小牛
  • 注册日期2004-03-15
  • 最后登录2004-06-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-05-18 17:29
就改上面的程序。

我的ID是对的。
你先确定你的ID是对的,
这样才能确保你对D12的正确读写操作。

查一下硬件,
或者改变上电顺序,
先插入USB还是先执行程序。

lpbirdueng
驱动牛犊
驱动牛犊
  • 注册日期2004-02-20
  • 最后登录2004-05-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2004-05-18 17:37
我用的是星研仿真器,只能先连好usb才能进入调试状态,所以我怀疑我进入调试状态后,d12已经挂起,另外,你是用哪个版本的bushound,你能告诉我qq号吗,或加我
longyinjiuxiao
驱动小牛
驱动小牛
  • 注册日期2004-03-15
  • 最后登录2004-06-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2004-05-18 17:43
346707655

我不好上QQ的,
老总“监视”,
呵呵。

我的也是先接好USB才能正确收到ID。

是否挂起,
你观察一下中断寄存器。
lpbirdueng
驱动牛犊
驱动牛犊
  • 注册日期2004-02-20
  • 最后登录2004-05-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2004-05-18 17:45
我的中断寄存器是挂起状态,我不知道如何唤醒,你知道吗
longyinjiuxiao
驱动小牛
驱动小牛
  • 注册日期2004-03-15
  • 最后登录2004-06-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2004-05-18 17:47
你把挂起改变函数里面的内容注释掉就可以了。
longyinjiuxiao
驱动小牛
驱动小牛
  • 注册日期2004-03-15
  • 最后登录2004-06-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2004-05-18 17:48
挂起的前一个中断是什么?
lpbirdueng
驱动牛犊
驱动牛犊
  • 注册日期2004-02-20
  • 最后登录2004-05-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2004-05-18 17:50
我不知道,如何看中断,在那看?请指教。
longyinjiuxiao
驱动小牛
驱动小牛
  • 注册日期2004-03-15
  • 最后登录2004-06-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2004-05-19 08:18
你用什么软件写程序?
ms520sxl
驱动牛犊
驱动牛犊
  • 注册日期2004-03-17
  • 最后登录2005-01-06
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2004-05-19 20:44
longyinjiuxiao,我用BUS HOUND(尽管还是会重起,但还是先用着再说吧) 看我的开发板,描述符送出之后,就可用了,这样不对吗
ms520sxl
驱动牛犊
驱动牛犊
  • 注册日期2004-03-17
  • 最后登录2005-01-06
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2004-05-19 21:08
我开始也不能送描述符,但我只是把上电顺序换了一下,也就是 先加仿真器电源,再家USB电源(我的总线供电,也就是插上USB),就能送出描述符了,程序还是周立功的。
ms520sxl
驱动牛犊
驱动牛犊
  • 注册日期2004-03-17
  • 最后登录2005-01-06
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
16楼#
发布于:2004-05-19 21:11
用BUS HOUND看看呗(尽管我用的5。0会动不动重起)。我看以前的帖子,好象第一次送第一个描述符(16个)是不用进IN中断的
ms520sxl
驱动牛犊
驱动牛犊
  • 注册日期2004-03-17
  • 最后登录2005-01-06
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
17楼#
发布于:2004-05-20 10:44
longyinjiuxiao,我用BUS HOUND(尽管还是会重起,但还是先用着再说吧) 看我的开发板,描述符送出之后,就可用了,这样不对吗

我弄错了,在DEVICE选项中,没选中D12设备!我认为没装驱动之前只送设备描述符和配置描述符,装驱动之后,才送整个描述符和配置设备。
游客

返回顶部