3.3.2 串口读写API
GPS多任务实时操作系统中提供了对串口读写的API函数,本系统在用户初始化时采用信号触发方式来读取串口,具体的串口API的应用如下所述:
1. 打开串口
PORT __y * _pUserPort; //其中_pUserPort为定义的串口变量
_pUserPort = (PORT __y *)UART_Open(?mcom);
if (_pUserPort)
{
PORT_SignalWhenDataAvailable(_pUserPort, 1, ISYS_ThisTaskId());
}
以上的功能为打开串口,paramcom为设定的串口参数结构,其中包括,串口号、缓冲区大小、传输速率等基本设置,若打开成功,则在串口每接收到一个字节时就会发送一个信号给本任务。
2. 读串口
PORT_ReadByte(_pUserPort, &buf)
在收到有字节的信号时,调用此函数将串口_pUserPort中的数据读入缓冲区buf中。
3. 写串口
PORT_WriteByte(_pUserPort, *data))
此函数是将data指针所指向的数据写到串口_pUserPort。
4 结论
本系统通过在GPS多任务实时操作系统中增加一个通信任务,并成功移植了uip0.6协议栈,完成了链路层PPP协议及底层硬件的驱动调用,使得GPS定位数据能够实时、准确传输。经过实践证明,该系统传输过程稳定,数据传输无误。本系统的实现为GPS产品的网络化及将来GPS产品通过网络提高性能奠定了基础。
本文作者创新点是将TCP/IP协议栈成功移植到GPS实时操作系统中,并在VS_DSP中实现了链路层的点对点的PPP协议,节省了原来利用有协议栈的Modem进行数据传输的费用,为以后GPS的广泛应用奠定了工程应用基础。
顶一下 0
踩一下
相关文章
用户评论
已有0位网友发表了看法



发表评论