您的位置: OpenADSP社区论坛 -> Blackfin专区 -> 新手上路 -> 大家好!请问有关BF51x_USB工程中的一些问题... 
本帖共有433个阅读者
发表帖子 发表投票 回复主题
大家好!请问有关BF51x_USB工程中的一些问题。
cmjauto(论坛新手)
cmjauto
头衔:社区公民
帮派:无帮无派
帖数:11
金钱:173
积分:11
注册时间:2012/7/27
楼主信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
大家好!请问有关BF51x_USB工程中的一些问题。

大家好!

      我在阅读BF51x_USB工程代码时碰到一些问题,罗列如下:

1)void mdelay(int count)
{
     int i,j;
     for(i=0;i<count;i++)
     {
        for(j=0;j<1000;j++)
                 asm("ssync;");
      }
}

该函数当count等于100时,是不是延时1毫秒?

2)U8 D12RdInt()
{
    D12Cmd = 0xf4;
    mdelay(100);
    return D12Cmd;

}

该函数首先发送“读取中断寄存器”指令,按理说接下来可以读取2字节的内容,这里的问题是:(1)为什么是return D12Cmd,而不是return D12Dat ?(2)这里只读取了第一字节,那第二字节为何不管了呢?

3)在调试验证代码时,应该在什么时候把usb连接线插入电脑?因为我这里是一步步实现功能的,不像OP公司提供的可以完整运行的程序,那我应该在程序运行前将USB线插入电脑,还是在程序运行至某个节点前插入电脑?



       本人初学,还望大家多多指教,在此先表示感谢!



「该帖子被 cmjauto 在 2013-07-11 15:16:32 编辑过」

越美好,越害怕得到……
等级:论坛新手 参考IP地址:*.*.*.*
2013/7/10 21:24:15
尊贵身份标志
andy(论坛版主)
andy
头衔:社区公民
帮派:无帮无派
帖数:2287
金钱:11132
积分:2263
注册时间:2011/6/8
1信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
1. 不是1ms,这个延时仅仅是利用for循环,不准确的,只能大概记时,你可以看这个函数消耗多少个内核时钟,然后计算出时间。
2. 这个函数是读取中断状态的,源代码中采用查询法,这个函数应该没有用上,也可能写错了,没太注意过,你可以下载其它版本的代码确认下。
3.在代码运行后,然后再插入USB线,否则芯片检测不到USB 插入瞬间的电平跳变。需要你完成枚举后再运行代码,运行时代码不能打断点,不能单步,否则会与PC机通讯超时。所有数据可以通过串口打印出查看。

这家伙很懒,什么也没有留下!
等级:论坛版主 参考IP地址:*.*.*.*
2013/7/11 22:57:20
cmjauto(论坛新手)
cmjauto
头衔:社区公民
帮派:无帮无派
帖数:11
金钱:173
积分:11
注册时间:2012/7/27
2信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线

谢谢您的回复。

这里我对第二个问题还有一些情况要说明,我后来在许多个用到D12Cmd、D12Dat的场合,发现本以为应该用D12Dat的地方调试不同,而将D12Dat换成D12Cmd之后,所期待的结果就出现了,所以我很奇怪这些到底是由哪个机制决定的,D12 datasheet里面只提到了“this command is followed by a data read”,而按我的理解这里的data read应该是使用D12Dat的场合,结果却没有达到预期效果……

如果您知道这方面的机制或者有除了D12 datasheet其他编程资料,还望周知,谢谢!

另外,我再继续确认下我的疑惑是否在任何场合都存在。


越美好,越害怕得到……
等级:论坛新手 参考IP地址:*.*.*.*
2013/7/12 19:01:13
尊贵身份标志
andy(论坛版主)
andy
头衔:社区公民
帮派:无帮无派
帖数:2287
金钱:11132
积分:2263
注册时间:2011/6/8
3信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线

你到PUDN.com上找找D12的代码吧,上面有很多,看看其它代码是怎么写的。

D12很久以前做的,很多都忘记了


这家伙很懒,什么也没有留下!
等级:论坛版主 参考IP地址:*.*.*.*
2013/7/12 20:43:24
Powered by OpenADSP Copyright © 2010 www.Openadsp.com. All rights reserved.159217 Call, 1 Queries, Processed in 0.015625 second(s),