导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→能收不能发!---奇怪啊!,恳请大家帮我分析一下

* 50766: 能收不能发!---奇怪啊!,恳请大家帮我分析一下

   guest 
guest发表的帖子 

 能收不能发!---奇怪啊!,恳请大家帮我分析一下

我是用8052控制的RTL8019AS,工作在跳线模式下,
现在能够实现接收数据,可是怎么也发不出去,我以前怀疑是我的数据包
构造错误,但是我利用了一个网上抓来的ARP包发送,仍然不行,所以我排除
了数据包错误的可能,另外还有几种可能,硬件?初始化程序?发送程序?

这样说太广泛了,所以到现在我都没有找到错误的地方,请求大家帮我分析
一下啊,
下面是我的发送程序:
  我是每次对DMA发送一个数据(一次发送60个数据我也试过,也就是把发
送计数器置为60.也没有成功),然后又改初始位置,直至发送完.在启动发
送命令(RC=0X24,RC=0X3E,我的都试过没有成功).
void sendmsg(void){
unsigned char xdata *y=NULL;
unsigned char data kkk=0;
select_8019(0x00);
//y=(unsigned char xdata *)0x0000;
//kkk=*y;
//printf("%d",kkk);
y=(unsigned char xdata *)0x0000;//cmd=20
*y=0x20;

y=(unsigned char xdata *)0x0700;//isr=0x0a
*y=0x0a;

y=(unsigned char xdata *)0x0500;//tbcr0=0x3c
*y=0x3c;
y+=0x0100;
*y=0x00;

y=(unsigned char xdata *)0x0400;
*y=0x40;
/////////////////////////////////////////////

y=(unsigned char xdata *)0x0700;//isr=0x40
*y=0x40;

for(kkk=0;kkk  <60;kkk++){

y=(unsigned char xdata *)0x0a00;//RBCR0=0X3c,RBCR1=00
*y=0x01;
y+=0x0100;
*y=0x00;

y=(unsigned char xdata *)0x0900;//RSAR1=0X40,RSAR0=0X00
*y=0x40;
y-=0x0100;
*y=kkk;
delay(50);
*y=(unsigned char xdata *)0x0000;//rc=12h
*y=0x12;
delay(100);
y=(unsigned char xdata *)0x1000;

*y=arppack[kkk];
}
delay(1000);
////////////////////////////////////////////////////////////

for(kkk=0;kkk  <2;kkk++){
y=(unsigned char xdata *)0x0000;
*y=0x24;
delay(1000);
}

return;
}
 
 


发表时间:2004年3月17日21:59:08

  
回复该帖

本主题共有 1 帖,分页:>>>>>该主题的所有内容[1]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

[上一篇帖子]:稍微提示:1uA的电流在1K的取样电阻上有1mV的电压降、在10K的电阻上就会有10mV,采用运算放
[下一篇帖子]:答:1.dsp可以通过电平转换电路驱动5伏的cpld 2。管脚没有办法减少,你可以改用其他封