阅读:2839回复:22
长时间读写9052导致死机?
我做了一块9052的AD板,驱动是用Driverstudio写的,现在已经可以按300K的速率采到数据,但是如果让它连续采样10分钟以上,有时会使系统死机(WIN2000),有时系统没死,但驱动死了,再也读不到采到的数据和9052的配置数据;不知哪位高手遇到过类似的情况,如能指点一二不胜感激!!!
|
|
沙发#
发布于:2004-09-17 11:07
bigsoldier老兄说的没错,希望这个论坛都是为了互相学习,互相交流,以达到共同进步的目的。希望走到前面的网友多伸伸手,帮帮我们这些初学者
|
|
板凳#
发布于:2004-09-16 16:43
bigsoldier老兄说的没错,希望这个论坛都是为了互相学习,互相交流,以达到共同进步的目的。
我的QQ是337559087,希望和大家多交流 |
|
地板#
发布于:2004-09-06 22:34
bigsoldier老兄说的没错,希望这个论坛都是为了互相学习,互相交流,以达到共同进步的目的。希望走到前面的网友多伸伸手,帮帮我们这些初学者!
|
|
地下室#
发布于:2004-09-03 17:18
我觉得大家来到这个论坛都是为了互相学习,互相交流,以达到共同进步的目的,不管问题回答得对或错,都会给对方一个提示或新的思路,所以我如果遇到自己能够解答的问题,一定会尽量解答清楚,一定不会吝惜我那一点微薄的经验或知识,即使答错了,也是值得尊敬和鼓励的,大家说对不对?
我相信只要大家只要多多交流,一定会共同进步的!!! 同意我的看法的朋友,如果有好的经验和想法,请多与我交流,大家交个朋友,不管对我的问题是否有帮助,都非常感谢!!! |
|
5楼#
发布于:2004-09-03 16:40
我试过了,还是不行!
|
|
6楼#
发布于:2004-09-02 22:44
我的描述符:00000022
控制 :00044ED2 不一定正确,不过你可以试一下 |
|
7楼#
发布于:2004-09-02 21:18
4041 0082 是为了在读写FPGA时加入一点延时,设置详情在PCI9052 DataBooK中有描述。
至于1f20 4db6 我是用的别人原来用过的,没有仔细研究,现在正在考虑,不知你是否有更好的设置,指点一下?? 我现在已经发现一个现象,在驱动出问题后,系统还没死的情况下,可以读写9052的配置寄存器,这时我往CNTRL中写入5F204DB6,然后再写入1F204DB6,这时即让PCI软件复位,之后我的板子又恢复正常工作,让我看到了一点曙光,但是还是一头雾水,不知是不是我的配置存在问题,现在正在琢磨,而且我用WinDriver写的驱动也出现了和以前一样的问题,这样我怀疑可能问题多半出在配置上,哪位如果能指点迷津,那在下就真的感激万分,一定高分献上!!! 不知哪为大侠是不是可以将你们成功的配置贴给小弟一看,以做参考??? |
|
8楼#
发布于:2004-09-02 19:52
28:4041 0082 50:1F20 4DB6 以上配置能否大致 解释一下,什么目的? |
|
9楼#
发布于:2004-09-02 13:55
我准备用WinDriver再写一个驱动程序,测试我的板子,不知还会不会出现死机的情况,如果不死机就说明用Driverstudio写的有问题,如果还死机就说明我的硬件可能有问题!
不知大家有什么好的建议??? |
|
10楼#
发布于:2004-09-01 20:39
对的。
死机的问题我也正在研究。 |
|
11楼#
发布于:2004-09-01 20:28
可能是一开始输入有错,不好意思
我的片选为 00020081 00010001 算法如上,不知是否有错??? |
|
12楼#
发布于:2004-09-01 20:23
引用:
片选寄存器应是基地址+范围(右移)。看不太懂你的片选寄存器值 是咋算出来的? 问错了,请别见笑。 我的片选应该没问题,因为已经在非连续快速发IRP包的情况下,在两个片选空间上进行读写没问题! 我是这样算的: 片选一的基地址为20000H,RANGE为256字节 20000H + 100H>>1 =20080H 所以为200081H 片选二的基地址为0H,RANGE为64K WORD 即128K BYTE 0+(20000H)>>1 = 10000H 所以为10001H 不知错在哪里,请指正,谢了!!! |
|
13楼#
发布于:2004-09-01 19:50
片选寄存器应是基地址+范围(右移)。看不太懂你的片选寄存器值
是咋算出来的? 问错了,请别见笑。 如有帮助,请给点分 |
|
14楼#
发布于:2004-09-01 15:20
EEPROM的配置如下:
00:0FFF FF00 04:0FFE 0000 08:0000 0000 0C:0000 0000 10:0002 0001 14:0000 0001 18:0000 0000 1C:0000 0000 20:0000 0000 24:0000 0000 28:4041 0082 2C:0040 0000 30:0000 0000 34:0000 0000 38:0000 0000 3C:0002 0001 40:0001 0001 44:0000 0000 48:0000 0000 4C:0000 0020 50:1F20 4DB6 我现在用了MEMERY方式,两个片选分别来选中FPGA和RAM,FPGA分配在LAS0共256字节空间,基地址从10000H开始,RAM分配在LAS1公64K字(16BIT)空间,这个配置现在已经可以进行正常读写,就不知死机的原因,请大家分析我的配置是否有问题???谢!!! |
|
15楼#
发布于:2004-09-01 14:54
CNTRL: 1F204DB6
这样配置有问题吗? |
|
16楼#
发布于:2004-09-01 14:38
你的EEPROM中CNTL(50H)中设置的是否有问题?可以仔细看看!可以贴出来看看!
|
|
|
17楼#
发布于:2004-09-01 13:50
有一次驱动死掉后,用SOFTICE调试,发现应用程序发送的IRP包已经可以让驱动捕获,而驱动程序在执行完读或写操作后,读不到正确数据或写不下正确的指令控制FPGA动作,好象是9052出了什么问题,此时硬件的其他功能(如DA)还能照常工作,只是驱动再也不能正确访问硬件,是不是在某种情况下使9052进入了一个错误的状态,但为什么驱动读写数据的操作还能进行,但得不到正确的数据???而且,更多的时候是直接使系统死掉,根本没法进入SoftICE观察???
|
|
18楼#
发布于:2004-09-01 12:44
和我的问题很像,不过我是在PLXMON调试环境下发现的问题,读写大量数据就会死机
关注!! |
|
19楼#
发布于:2004-09-01 11:38
中断暂时没用(屏蔽了),IRP的方式是BUFFER方式,我用MEMERY方式读取AD缓冲RAM的数据,用IO方式读取FPGA的配置数据,只要在非连续发送IRP读取数据时不会有问题,连续读取板上缓冲RAM时会死机,每次都是读完一个IRP然后再发下一个IRP,每个IRP读500个字节数据时大概10分钟后会死掉,读300字节有时可以坚持很长时间,有时大概一个多小时也会死掉,我观察是否死机是将采样得到的数据波形在屏幕上绘出观察,一旦与信号源的波形不一致,或屏幕停止更新时便可发现出了问题,要么死机,要么驱动死掉了???
|
|
上一页
下一页