基于STM32F103C8T6和ZigBee的油井压力监控系统研究
EC
ENC28J60接收数据包主要框架程序如下:
unsigned int enc28j60PacketReceive(unsigned int maxlen, unsigned char* packet)
{
enc28j60Write(ERDPT, (NextPacketPtr));
NextPacketPtr=enc28j60ReadOp(ENC28J60_READ_BUF_MEM, 0);
NextPacketPtr|=enc28j60ReadOp(ENC28J60_READ_BUF_MEM, 0)<<8;
len = enc28j60ReadOp(ENC28J60_READ_BUF_MEM, 0);
len |= enc28j60ReadOp(ENC28J60_READ_BUF_MEM, 0)<<8;
rxstat=enc28j60ReadOp(ENC28J60_READ_BUF_MEM, 0);
rxstat |= enc28j60ReadOp(ENC28J60_READ_BUF_MEM, 0)<<8;
enc28j60ReadBuffer(len, packet);
return(len);
}
3.4高层协议uIP移植和应用层主程序的设计
完成了MAC 层及物理层协议的驱动程序,要想实现嵌入式以太网服务器与其它设备之间的通信,还要在嵌入式系统中实现更高层的 TCP/IP 协议。本文选用uIP1.0协议栈并对其适当精简来实现功能。uIP协议栈由瑞典计算机科学研究所的AdamDunkels开发的免费、开发源代码的协议栈[7]。在本系统中程序首先用中断的方式接收 ZigBee协调器发
<<上一页 下一页>>
广州市越秀区图书馆版权所有。
联系电话:020-87673002
本站访问人数: