微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > 射频无线通信设计 > zigbee 接收字节丢失

zigbee 接收字节丢失

时间:10-02 整理:3721RD 点击:
自己做了一个zigbee 模块,从串口接收字节
发现如果传送的字节过多(一次传 139 byte)其实会丢失20个字节
减少了字节再发送,减到28个,还是丢了1个字节
请问各位,这个是什么问题
如何解决

http://bbs.feibit.com/thread-3216-1-1.html

这是另一个坛子上的回复,说最起码都能接 128个字节,这又是怎么回事

附上小弟的主程序,再次求大神解答

void initial(); //串口初始化
void Uart_SendByte(unsigned char buf); //向串口发送数据

void main()
{
initial();
while (1)
{
}
}

void initial()
{
CLKCONCMD &= 0x40; //晶振
while(!(SLEEPSTA & 0x40)); //等待晶振稳定
CLKCONCMD &= 0x47; //TICHSPD128分频,CLKSPD不分频
SLEEPCMD |= 0x04; //关闭不用的RC振荡器

PERCFG = 0x00; //位置1 P0口
P0SEL = 0x3c; //P0用作串口

U0CSR |= 0xC5;/*0x80; */ //UART方式
U0GCR |= 10; //baud_e = 10;
// U0BAUD |= 216; //波特率设为57600
U0BAUD |= 59; //波特率设为38400
UTX0IF = 1;

U0CSR |= 0X40; //允许接收
IEN0 |= 0x84; //开总中断,接收中断
}

void Uart_SendByte(unsigned char buf)
{
U0DBUF = buf;
while(UTX0IF == 0);
UTX0IF = 0;
}

#pragma vector=URX0_VECTOR
__interrupt void URX0_IRQ(void)
{
unsigned char ch;
ch = (unsigned char)U0DBUF;
Uart_SendByte(ch);
}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top