无线通道仿真软件源程序Word格式文档下载.docx
- 文档编号:6190906
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:63
- 大小:28.95KB
无线通道仿真软件源程序Word格式文档下载.docx
《无线通道仿真软件源程序Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《无线通道仿真软件源程序Word格式文档下载.docx(63页珍藏版)》请在冰点文库上搜索。
privateintWirelessPort;
privateIPEndPointWirelessServer;
privateSocketWirelessSock;
privateSocketWirelessSocket;
privateIPAddressSimuIP;
privateintSimuPort;
privateIPEndPointSimuServer;
privateSocketSimuSock;
privateIPAddressDRCUIP1;
privateIPAddressDRCUIP2;
privateIPAddressMRCUIP1;
privateIPAddressMRCUIP2;
privateList<
Socket>
SocketList=newList<
(4);
//用于存放已建立的DRCU和MRCU连接
//程序运行中所用线程
privateThreadWirelessThread;
privateThreadAcceptThread;
privateThreadSimuThread;
//用于绘制线路图
privateint[]BSLoc=newint[47];
//基站公里标
privatePoint[]BSPoint=newPoint[47];
//基站坐标
privatestring[]BSName=newstring[47]{"
1A1"
"
1B1"
1A2"
1B2"
2B1"
2A1"
2B2"
2A2"
2B3"
2A3"
2B4"
2A4"
"
2B5"
2A5"
2B6"
2A6"
2B7"
2A7"
2B8"
2A8"
2B9"
2A9"
2B10"
2A10"
2B11"
2A11"
2B12"
2A12"
2B13"
2A13"
2B14"
2A14"
2B15"
2A15"
2B16"
2A16"
2B17"
2A17"
2B18"
2A18"
2B19"
2A19"
2B20"
2A20"
2B21"
2A21"
2B22"
};
//基站名
staticprivateintDistance=0;
//水平滚动条当前值
staticprivateinttrainLoc=0;
//列车当前位置
privatePointtrainPoint=newPoint(0,220);
//列车当前坐标
//标识位
privateboolTimeFlag=false;
//用于标识时间同步与否
privateboolBSInitFlag=false;
//用于标识基站初始化与否
privatebool[]WirelessFlag=newbool[4]{false,false,false,false};
//用于标识MRCU和DRCU当前通信状态
//发送至仿真管理计算机的报文
staticprivateintSerialNum=0;
//用于标识报文序列号
privatebyte[]SimuMessage=newbyte[26]{0x02,0x08,0x00,0x0D,0x00,0x00,0x00,0x00,0xD0,0x02,0x0B,0x00,0x00,
0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xD0,0x02};
//状态报文
privatebyte[]SimuRespond=newbyte[5]{0x02,0x00,0x06,0x73,0xff};
//命令应答报文
privatebyte[]TimeRespond=newbyte[2]{0x66,0x66};
//时间同步应答报文
//用于ListView显示
staticprivateintNum1=0;
staticprivateintNum2=0;
privateErrorStatEState=newErrorStat();
privateFileWRfileWR=newFileWR();
privateByteProcessbytePro=newByteProcess();
publicMainForm()
InitializeComponent();
}
privatevoidForm1_Load(objectsender,EventArgse)
//界面第一次打开时,5盏信号灯全红
pictureBox1.Image=imageList1.Images[1];
pictureBox3.Image=imageList1.Images[1];
pictureBox5.Image=imageList1.Images[1];
pictureBox15.Image=imageList1.Images[1];
pictureBox17.Image=imageList1.Images[1];
//实例化装载4个TCP/IP连接的List
SocketList.Add(newSocket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp));
Control.CheckForIllegalCrossThreadCalls=false;
privatevoidtoolStripMenuItem1_Click(objectsender,EventArgse)
Microsoft.Win32.SystemEvents.TimeChanged+=newEventHandler(SystemEvents_TimeChanged);
//加载配置信息
XmlDocumentdoc=newXmlDocument();
doc.Load("
无线通道初始化配置文件.xml"
);
XmlNoderoot=doc.DocumentElement;
XmlNodetempNode;
tempNode=root.SelectSingleNode("
通信接口信息/仿真管理计算机以太网配置/IP"
SimuIP=IPAddress.Parse(tempNode.InnerText);
通信接口信息/仿真管理计算机以太网配置/port"
SimuPort=Int32.Parse(tempNode.InnerText);
//与仿真管理计算机TCP/IP连接初始化
try
SimuServer=newIPEndPoint(SimuIP,SimuPort);
SimuSock=newSocket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
SimuSock.Connect(SimuServer);
//开始周期的向仿真管理计算机发送报文
if(SimuSock.Connected)
SimuThread=newThread(newThreadStart(SimuRecv));
SimuThread.Start();
pictureBox17.Image=imageList1.Images[0];
SimuThread.IsBackground=true;
catch
MessageBox.Show("
仿真管理计算机以太网参数设置故障"
privatevoid无线通道初始化ToolStripMenuItem_Click(objectsender,EventArgse)
WirelessInitdialog1=newWirelessInit();
dialog1.Owner=this;
dialog1.ShowDialog();
if(dialog1.DialogResult==DialogResult.OK)
通信接口信息/无线通道以太网配置/IP"
WirelessIP=IPAddress.Parse(tempNode.InnerText);
通信接口信息/无线通道以太网配置/port"
WirelessPort=Int32.Parse(tempNode.InnerText);
通信接口信息/DRCU1以太网配置/IP"
DRCUIP1=IPAddress.Parse(tempNode.InnerText);
通信接口信息/DRCU2以太网配置/IP"
DRCUIP2=IPAddress.Parse(tempNode.InnerText);
通信接口信息/MRCU1以太网配置/IP"
MRCUIP1=IPAddress.Parse(tempNode.InnerText);
通信接口信息/MRCU2以太网配置/IP"
MRCUIP2=IPAddress.Parse(tempNode.InnerText);
//创建TCP/IP连接
WirelessServer=newIPEndPoint(WirelessIP,WirelessPort);
WirelessSock=newSocket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
WirelessSock.Bind(WirelessServer);
WirelessSock.Listen(10);
AcceptThread=newThread(newThreadStart(SockAccept));
AcceptThread.Start();
AcceptThread.IsBackground=true;
无线通道初始化ToolStripMenuItem.Enabled=false;
基站模拟初始化ToolStripMenuItem.Enabled=true;
故障注入ToolStripMenuItem.Enabled=true;
MsgShowing("
无线通道初始化成功"
privatevoid基站模拟初始化ToolStripMenuItem_Click(objectsender,EventArgse)
BSInitdialog2=newBSInit();
dialog2.Owner=this;
dialog2.ShowDialog();
if(dialog2.DialogResult==DialogResult.OK)
基站位置信息/一分区基站位置/A1"
BSLoc[0]=int.Parse(tempNode.InnerText);
基站位置信息/一分区基站位置/B1"
BSLoc[1]=int.Parse(tempNode.InnerText);
基站位置信息/一分区基站位置/A2"
BSLoc[2]=int.Parse(tempNode.InnerText);
基站位置信息/一分区基站位置/B2"
BSLoc[3]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/B1"
BSLoc[4]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/A1"
BSLoc[5]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/B2"
BSLoc[6]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/A2"
BSLoc[7]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/B3"
BSLoc[8]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/A3"
BSLoc[9]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/B4"
BSLoc[10]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/A4"
BSLoc[11]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/B5"
BSLoc[12]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/A5"
BSLoc[13]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/B6"
BSLoc[14]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/A6"
BSLoc[15]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/B7"
BSLoc[16]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/A7"
BSLoc[17]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/B8"
BSLoc[18]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/A8"
BSLoc[19]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/B9"
BSLoc[20]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/A9"
BSLoc[21]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/B10"
BSLoc[22]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/A10"
BSLoc[23]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/B11"
BSLoc[24]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/A11"
BSLoc[25]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/B12"
BSLoc[26]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/A12"
BSLoc[27]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/B13"
BSLoc[28]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/A13"
BSLoc[29]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/B14"
BSLoc[30]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/A14"
BSLoc[31]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/B15"
BSLoc[32]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/A15"
BSLoc[33]=int.Parse(tempNode.InnerText);
基站位置信息/二分区基站位置/B16"
BSLoc[34]=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 无线 通道 仿真 软件 源程序