请教各位,为什么我的8019只能往CR寄存器中写值,但只要往其他寄存器里写值,所有内存都变成不可用(ff,部分是10)!不知道为什么,请大家指教!
环境是:vxworks+9200
另外:我的9346没有焊!
是不是我的sysInByte\sysOutByte\sysOutWordString\sysInWordString定义不对啊?
以下是我在syslib.c中对这些函数的定义,请大家指教,小弟不胜感激!
UCHAR sysInByte (ULONG port)
{
char data;
char *p;
p=(char*)port;
data=*p;
return(data);
}
void sysOutByte (ULONG port, UCHAR data)
{
char *p;
p=(char *)(port);
*p= (data);
}
void sysOutWordString(ULONG port, UINT16 *pData, int count)
{
int i = 0;
for(i = 0; i < count; i ++)
{
short *p;
p=(short *)(port);
*p = *(pData + i);
}
}
void sysInWordString(ULONG port, UINT16 *pData, int count)
{
int i = 0;
for(i = 0; i < count; i ++)
{
short *p;
p=(short *)(port);
*(pData + i) = *p;
}
}
还是得对第三页的寄存器配置一下!