本地数据处理程序根据任务又分为以下两部分:用户操作响应部分,视频流数据处理部分。用户操作响应部分主要负责采集用户对上位机软件按下的按钮、输入的命令等数据,并将这些采集到的数据进行运算和处理,得到结果后再进行加密并编码,最后加载到网络流上,自动通过网络发送到下位机。视频流数据处理部分则是智能家居安防监控功能的承载,上位机的软件定时器产生一定时间间隔的溢出中断后,通过TCP连接到路由器,账号和密码验证无误后,即可获取监控摄像头每一帧JPEG格式的图像信息,经过处理,可将这些JPEG图像信息合成24帧每秒显示在上位机界面上,由于人眼的视觉暂留效益(Persistence of vision),这些连续的图像可以被看成是达到了流畅的视频效果。
这段函数调用了IAR Embedded公司提供的标准库函数stdlib.h中的atoi函数,atoi函数功能的描述是/*convert string to int*/,即把字符串直接强制转成整形数据。本系统上位机与下位机之间的通信协议由我们专门针对性地设计,其中字符串头部带有长度不能预知的命令字节,因此调用atoi函数前还需要判断该数据包之中的参数是从字符串的第几位开始的,得到正确的指向字符串参数位置的指针。