阅读:1045回复:0
写外设双口ram时page error?
外设双口ram为8K word。初始化双口ram时,如果一次写出8k word,就出现page error。程序如下:
PUSHORT pInputBuf = (PUSHORT)I.IoctlBuffer(); ULONG BufSize = I.IoctlInputBufferSize(); //8192 word m_MemoryRange0.outw(0, pInputBuf, BufSize); 但是如果将8K word双口ram分为两次写,就没有问题了。数据也写下去了。 PUSHORT pInputBuf = (PUSHORT)I.IoctlBuffer(); ULONG BufSize = I.IoctlInputBufferSize(); //8192 word //First part write 写入4096 word m_MemoryRange0.outw(0, pInputBuf, BufSize/2); //Second part write 写入4096 word m_MemoryRange0.outw(0x2000, pInputBuf, BufSize/2); 这是什么问题?我将写双口ram的程序段放在IoDeviceControl中或者放在SerialWrite中,都是同样的问题。谢谢! |
|