⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_17812.htm

📁 一些关于vc的问答
💻 HTM
字号:
<p>
序号:17812 发表者:le 发表日期:2002-10-15 18:35:30
<br>主题:请教:读寄存器造成死机是什么原因?
<br>内容:各位高手:<BR> 我在驱动中,先做了I/O映射:<BR> dx-&gt;pMapBuffer=(PUCHAR)MmMapIoSpace( dx-&gt;linerAddress, dx-&gt;addrLinerLen, <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MmNonCached);&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;然后在不同的函数中调用:&nbsp;&nbsp;<BR>&nbsp;&nbsp;PULONG pTestReg=(unsigned long *)((unsigned char *)pMapBuffer+Reg)<BR>&nbsp;&nbsp;READ_REGISTER_ULONG(pTestReg);<BR>&nbsp;&nbsp;结果造成死机,请问是什么原因?<BR><BR>&nbsp;&nbsp;多谢!
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:dr0 回复日期:2002-10-15 18:58:00
<br>内容:Reg 是什么 ?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:le 回复日期:2002-10-15 19:20:10
<br>内容:<BR>Reg是我的设备寄存器地址,0x66
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:dr0 回复日期:2002-10-15 19:23:57
<br>内容:dx 呢?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:le 回复日期:2002-10-15 19:46:56
<br>内容:谢谢您的关照,我应该把它说清楚些:<BR>dx是我的设备扩展结构,其中有如下变量:<BR>{<BR>&nbsp;&nbsp; ......<BR>&nbsp;&nbsp; //Register map<BR>&nbsp;&nbsp; bool bSetMem;<BR>&nbsp;&nbsp; PHYSICAL_ADDRESS linerAddress;<BR>&nbsp;&nbsp; ULONG addrLinerLen;<BR>&nbsp;&nbsp; PVOID pMapBuffer;//映射基址&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp; ......<BR>}<BR>在同样的情形下,我读该寄存器就不死机。实际的情况是该寄存器可在任意时刻读写的。<BR>请问我可能是哪里出了问题?<BR>非常感谢!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:^_^ 回复日期:2002-10-16 09:31:06
<br>内容:什么叫同样的情况下?<BR>理论上如果板卡没有问题,读写都不会司机的。<BR>看你的0x66时不是大了一些?你的板卡确实有这么多I/O寄存器么?<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:le 回复日期:2002-10-16 12:38:12
<br>内容:同样的情况上是说把读寄存器语句<BR>换成写寄存器WRITE_REGISTER_ULONG(pTestReg);这样就可以正常通过。<BR>上次的发言错了一个地方,应该是在同样的情形下,我“写”该寄存器就不死机。<BR>请教各位高手,<BR>可能是什么原因造成的呢?<BR>&nbsp;&nbsp;
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:dr0 回复日期:2002-10-16 18:58:27
<br>内容:可能是地址对齐
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:dr0 回复日期:2002-10-16 18:58:51
<br>内容:你肯定写了不该写的地方
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:le 回复日期:2002-10-17 12:46:32
<br>内容:多谢各位高手的关照!<BR>&nbsp;&nbsp;TO drv0:<BR>&nbsp;&nbsp;&nbsp;&nbsp; 非常感谢。<BR>&nbsp;&nbsp;&nbsp;&nbsp; 是我上次发言错了,让您误会我的意思了:实际是:“写寄存器可以通过,读寄存器死机”<BR><BR>但是,实际上,我只是将设备物理地址映射到内存空间,然后简单地去读该寄存器,怎么会死机呢?应该不会有地址对齐的要求吧?读写寄存器还需要地址对齐吗?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:^_^ 回复日期:2002-10-18 08:23:36
<br>内容:这应该是硬件有问题了,<BR>检查一下硬件的读写数据线,有没有接错的地方
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:le 回复日期:2002-10-18 12:47:50
<br>内容:谢谢!<BR>硬件好象没有问题,因为厂家提供的测试程序可以通过。<BR><BR>一个简单的读寄存器操作怎么会引起系统挂起呢?<BR>各位高手,谁用过SOFTICE调式器,可以指教一下怎么调式这个问题吗?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:le 回复日期:2002-10-18 18:00:19
<br>内容:谢谢了
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:dr0 回复日期:2002-10-18 19:18:39
<br>内容:到 www.driverdevelop.com 去找点资料
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:^_^ 回复日期:2002-10-19 17:35:35
<br>内容:softice下用id,od访问一下你的那个寄存器,如果也有问题,就不好说了
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -