//设定本机与目标机IP地址。 }
void CloseSocket(void); //套接字关闭函数。
网络交互的主要飞行参数有俯仰角、滚转角、航向角、风速、风向、……,均以“structure”的方式定义在主仿真软件网络数据包中,辅助参数如vsd 、end、thf 等以“class”的方式单独定义,需要时再调用。
here_recv.sin_family = AF_INET;
here_recv.sin_port = htons(LOCAL_HOST_PORT_RECV); here_recv.sin_addr.s_addr = address; here_send.sin_family = AF_INET;
here_send.sin_addr.s_addr = inet_addr(LOCAL_HOST_ADDR); here_send.sin_port = address;
socketBuffer();//套接字缓冲区锁定设置。
setsockopt(sr,SOL_SOCKET,SO_RCVBUF|SO_REUSEADDR,(char if(bind(sr,(SOCKADDR *)&here_recv,sizeof(here_recv)))
return(false);
setsockopt(ss,SOL_SOCKET,SO_SNDBUF,(char FAR*)sockBufferS,DataSize); if(bind(ss,(SOCKADDR *)&here_send,sizeof(here_send)))
return(false); return(true);
……
FAR*)sockBufferR,DataSize);
3.2定时器编程
主仿真软件调试期间出现过视景图像及模拟综显动态页面与操纵信号不同步的现象,经检测发现, Windows2000平台虽最稳定,但其提供的定时器是建立在DOS的1CH中断基础上的,其发送WM_TIMER消息只能精确到大约55ms,无法适应飞控试验的需求,造成接收方采样频率无法与发送方同步,于是采用Windows2000下,包含于mmsystem.dll动态链接库中,多媒体编程接口中的底层定时器操作函数,实现计时精度可达1ms高精度的系统计时器, 解决了跟随性问题,下面是系统计时器的编程的关键代码段:
搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新教学研究09-仿真技术在直升机飞控试验中的应用(黄剑飞)(7)全文阅读和word下载服务。
相关推荐: