⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 entrypoint.txt

📁 该项目实现在.net 2003上
💻 TXT
字号:
public int ComNo = 1;
		public int BaudRate = 19200;

        public EquipAndPerformInfo m_EquipAndPerformInfo = new EquipAndPerformInfo();
		public LinkLayerDataHandler m_DataHandler = new LinkLayerDataHandler();
        
		//线程入口点 
		public void EntryPoint()
		{   
			CommPort comm = new CommPort(ComNo,BaudRate);//定义串行口对象
		    comm.Open();
			try
			{
				while(true)
				{
					//从串口读取数据
					byte [] recData = comm.Read();
					if(recData != null && recData.Length > 0)
					{
						m_DataHandler.AddBytesToTail(recData);
					}
					else
					{
						Thread.Sleep(20);
						
						continue;
					}
					//分析串口数据
					while(true)
					{
						byte [] oneFrame = m_DataHandler.GetOneFrameFromRecBytesList();
						
						if(oneFrame == null || oneFrame.Length == 0)
						{
							break;
						}
						else
						{
							
							m_EquipAndPerformInfo.CurFrame = oneFrame;
							byte [] ackFrame = m_EquipAndPerformInfo.DecodeCurFrame();
							if(ackFrame != null)
							{
								DataEntry dataEntry = new DataEntry(ackFrame.Length);
								dataEntry.szData = ackFrame;
                                m_DataHandler.AddOneFrameToSndDataList(dataEntry);

							}

						}
						Thread.Sleep(0);
					}
                
					//从发送队列中获得一帧数据,并写入串口
					while(m_DataHandler.m_SndDataList.Count !=0 )
					{
						byte [] sndData = m_DataHandler.GetOneFrameFromSndDataList();
						comm.Write(sndData);
						Thread.Sleep(20);//如果有两个帧,则有帧间隔
					}
					Thread.Sleep(20);
				
				}
			}
			catch
			{

			}
			finally
			{
               comm.Close();
			}
			//return;
		}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -