算法4数据上传算法:
1)初始化uart0;
2)等待计算机端的发送命令,有,则进入(3);
3)读取eeprom中数据;
4)发送数据到串口;
5)判断是否已全部发送,否,则转入(3),是,则进入
(6);
6)发送结束码给计算机端。
基站是采用中断的方式来响应计算机发来的命令,由于使用的是uart0口,所以,跟无线通信模块的收发过程类似。基站zui后发送的结束码是为了计算机异步读取串口数据时,提借时间与空间的空隙,以免zui后几位的数据丢失。
计算机端采用java语言编写的程序,对基站进行控制,这里,使用了sun*提供的java communicationapi对串口进行编程。当计算机端程序点击提取按钮,计算机就会向基站发送一个提取命令。计算机把基站传来的数据保存到数据库服务器中。程序中主要设计了下面几个函数:
1)串口初始化函数:本函数初始化所的串口并返回初始化结果。如果初始化成功返回1,否则,返回-1。初始化的结果是该串口被serialbean独占性使用,其参数被设置为57600,n,8,1。如果串口被成功初始化,则读取从串口传入的数据,并将其保存在缓冲区中。
2)串口读取函数:本函数从串口(缓冲区) 中读取长度的字符串。参数length所返回字符串的长度。
3)串口发送函数:本函数向串口发送一个字符串。参数msg是需要发送的字符串。
4)串口关闭函数:本函数停止串口检测进程并关闭串口。