yyouking
驱动老牛
驱动老牛
  • 注册日期2003-12-18
  • 最后登录2020-04-28
  • 粉丝0
  • 关注0
  • 积分967分
  • 威望114点
  • 贡献值1点
  • 好评度78点
  • 原创分0分
  • 专家分0分
  • 社区居民
阅读:1133回复:3

请教读中断寄存器的问题

楼主#
更多 发布于:2004-01-12 11:47

D12+52
void outportcmd(unsigned char value)
{
*((unsigned char xdata *)D12_COMMAND)=value
}
void outportdata(unsigned char value)
{
   *((unsigned char xdata *)D12_DATA)=value;
}

unsigned char inportb(void)
{
 return *((unsigned xdata *)D12_DATA);
}
unsigned short D12_ReadInterruptRegister(void)
{
unsigned char b1;
unsigned int j;
//outportb(D12_COMMAND, 0xF4);
outportcmd(0xF4);
b1 = inportb();
j = inportb();
j <<= 8;
j += b1;
return j;
}

为什么读不出来??
ALE--ALE
RD--RD
WR--WR
CS--P1。6
SUSPEND--P1。7



[编辑 -  1/12/04 by  yyouking]
提供: AT89S52+D12开发套件 W78E54+Sl811HST单片机读写U盘套件 PL2303HX-串口转USB 网站http://www.devking.cn 联系 sl811hs@yahoo.com.cn QQ:14441292
yyouking
驱动老牛
驱动老牛
  • 注册日期2003-12-18
  • 最后登录2020-04-28
  • 粉丝0
  • 关注0
  • 积分967分
  • 威望114点
  • 贡献值1点
  • 好评度78点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2004-01-12 12:38
应该是对的啊,怎么就不能执行呢
提供: AT89S52+D12开发套件 W78E54+Sl811HST单片机读写U盘套件 PL2303HX-串口转USB 网站http://www.devking.cn 联系 sl811hs@yahoo.com.cn QQ:14441292
wozhuce
驱动小牛
驱动小牛
  • 注册日期2004-04-02
  • 最后登录2005-11-01
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-10-25 18:01
yyouking搂主,可以告诉我你的问题是怎么解决的吗?我的代码和你的相同,但也遇到了和你同样的问题,所以向你请教,非常希望得到答复,不胜感激。
wozhuce
驱动小牛
驱动小牛
  • 注册日期2004-04-02
  • 最后登录2005-11-01
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-10-25 22:20
这个问题我已经搞定了,“就是用原代码替换子程序!”
但是我的周立功的板子,为什么在上电初读中断寄存器而每次的值会不一样呢,很奇怪!我正在调试,那位大虾如知道,请指点一二!是不是不稳定的缘故啊?
游客

返回顶部