/******************************************** * 函数名称:run() * 功能:体温传感节点组件执行函数 * 参数:无 * 返回值:无 * *****************************************/ public void run() { while (true) { if (Form1.stop) { this.EmptyingQueue(); return; } //-------------------体温传感器节点input端口传输数据-------------------// //若input端口不为空 if (this.input_ports != null) { //foreach(Input_port input in this.input_ports){ PortDataTransfer(this.input_ports[0]); //input端口进行数据传输 //} } //--------------------体温传感器组件启动执行---------------------------// TemperatureSensor ts = (TemperatureSensor)(this.TemperatureSensor); //step1、体温传感器组件接收数据 ts.ComponentDataReceive(ts); //++++++++++++ Debug - 读取组件接收队列中的数据 +++++++++++// //Console.Write(ts.name + "组件接收队列内的数据(入队后):"); //Console.WriteLine("组件接收队列长度:" + ts.Component_reveice_queue.Count); //foreach (TemperatureDataType arr in ts.Component_reveice_queue) //{ // Console.Write("[" +arr.Temperature+"] "); //} //Console.WriteLine(""); ////Console.WriteLine("========================="); //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++// //step2、执行体温传感器功能,即采样数据,并将采样数据传至发送队列 ts.CollectTemperatureData(); //step3、体温传感器组件output端口传输数据 ts.ComponentDataTransfer(ts); //传输采样体温数据 //--------------------微处理器组件启动执行---------------------------// MicroProcessor mp = (MicroProcessor)this.microProcessor; //step1、微处理器组件接收数据 mp.ComponentDataReceive(mp); //step2、执行微处理器功能 mp.MessageEncapsulation(x); //step3、微处理器组件output端口传输数据 mp.ComponentDataTransfer(mp); //--------------------缓冲区组件启动执行---------------------------// MyBuffer buf = (MyBuffer)this.myBuffer; //step1、缓冲区组件接收数据 buf.ComponentDataReceive(buf); //step2、执行缓冲区功能 buf.MessageBuffering(y); //step3、缓冲区组件output端口传输数据 buf.ComponentDataTransfer(buf); //------------------------无线模块--------------------------------// WirelessModule wm = (WirelessModule)this.wirelessModule; //step1、无线模块组件接收数据 wm.ComponentDataReceive(wm); //step2、执行无线模块数据帧封装功能 wm.FrameEncapsulation(y, dest_address); //step3、无线模块组件output端口传输数据 wm.ComponentDataTransfer(wm); //-------------------体温传感器节点output端口传输数据-------------------// //若output端口不为空 if (this.output_ports != null) { foreach (Output_port output in this.output_ports) { PortDataTransfer(output); //output端口进行数据传输 } } } }// public void run()
/******************************************** * 函数名称:run() * 功能:心率传感节点组件执行函数 * 参数:无 * 返回值:无 * *****************************************/ public void run() { while (true) { if (Form1.stop) { this.EmptyingQueue(); return; } //-------------------心率传感器节点input端口传输数据-------------------// //若input端口不为空 if (this.input_ports != null) { //foreach(Input_port input in this.input_ports){ PortDataTransfer(this.input_ports[0]); //input端口进行数据传输 //} } //--------------------心率传感器组件启动执行---------------------------// HeartRateSensor hrs = (HeartRateSensor)(this.HeartRateSensor); //step1、心率传感器组件接收数据 hrs.ComponentDataReceive(hrs); //step2、执行心率传感器功能,即采样数据,并将采样数据传至发送队列 hrs.CollectHeartRateData(); //step3、心率传感器组件output端口传输数据 hrs.ComponentDataTransfer(hrs); //传输采样心率数据 //--------------------微处理器组件启动执行---------------------------// MicroProcessor mp = (MicroProcessor)this.microProcessor; //step1、微处理器组件接收数据 mp.ComponentDataReceive(mp); //step2、执行微处理器功能 mp.MessageEncapsulation(x); //step3、微处理器组件output端口传输数据 mp.ComponentDataTransfer(mp); //--------------------缓冲区组件启动执行---------------------------// MyBuffer buf = (MyBuffer)this.myBuffer; //step1、缓冲区组件接收数据 buf.ComponentDataReceive(buf); //step2、执行缓冲区功能 buf.MessageBuffering(y); //step3、缓冲区组件output端口传输数据 buf.ComponentDataTransfer(buf); //------------------------无线模块--------------------------------// WirelessModule wm = (WirelessModule)this.wirelessModule; //step1、无线模块组件接收数据 wm.ComponentDataReceive(wm); //step2、执行无线模块数据帧封装功能 wm.FrameEncapsulation(y, access_address); //step3、无线模块组件output端口传输数据 wm.ComponentDataTransfer(wm); //-------------------心率传感器节点output端口传输数据-------------------// //若output端口不为空 if (this.output_ports != null) { foreach (Output_port output in this.output_ports) { PortDataTransfer(output); //output端口进行数据传输 } } } } // public void run()