阅读:1536回复:6
5933的MRAR寄存器赋值中的数值类型问题
为了使5933执行总线主控DMA功能,需要向其“读地址寄存器”MRAR赋值。我想这32位地址应该是物理地址。
赋值语句我想是WRITE_PORT_ULONG(*ADD,ULONG NUM); 得到缓冲器的物理地址,类型为PHYSICAL_ADDRESS,实际上是一个 UNION LARGE_INTEGER,定义为 typedef union _LARGE_INTEGER { struct { DWORD LowPart; LONG HighPart; }; LONGLONG QuadPart; } LARGE_INTEGER, *PLARGE_INTEGER; 我应该如何得到我要的ULONG类型呢? 低级问题,莫笑 |
|
|
沙发#
发布于:2002-06-25 16:32
我大概知道了。
取结构中的低32位 |
|
|
板凳#
发布于:2002-06-26 09:03
聪明。 :D
|
|
地板#
发布于:2002-06-26 13:18
聪明。 :D 怎么?不对吗? 大侠不要笑得如此暧昧 稍作指点,这分就给了如何 |
|
|
地下室#
发布于:2002-06-28 05:22
呵呵,LARGE_INTEGER可是64位的,32位机当然要这么干了。
|
|
5楼#
发布于:2002-06-28 11:30
谢谢二位
|
|
|
6楼#
发布于:2002-06-28 12:32
谢谢就不要了吧,我都说什么。 :P
|
|