Exemple #1
0
/********************************************************************

  Declaration: 
	Call:  Send_0x24_Message_I (nSize, nCOM)
  Input: size of message (int) and number of com-mport
  Returns: none
  10.11.2006 Initial coding / YS  
  
*********************************************************************/
void Send_0x20_Message_I (int nSize, int nCOM)
{
  unsigned char  *IRISbuffer; 
  const int nMsgSize = 28;
	unsigned char tmpchr;
  IRISbuffer = new unsigned char[nMsgSize];
  VcbTest_SensorInfo *Vcb_SensorInfo = new VcbTest_SensorInfo();
  
	Vcb_SensorInfo->TotalFlow = 11+nSize;
  Vcb_SensorInfo->OxygenFlow= 12;
  Vcb_SensorInfo->AirFlow = 13;
	Vcb_SensorInfo->TotalCurrentTemp= 567;
  Vcb_SensorInfo->OxygenCurrentTemp= 235;
  Vcb_SensorInfo->AirCurrentTemp= 145;
	
	Vcb_SensorInfo->serialize(IRISbuffer);
  
	IRISbuffer[27] =0x7E; // this is wrong, because we should use something like "stuff message"

  t.TRACE("Send_0x20_MessageI - ");
  for (int j=0; j < nMsgSize; j++)
  {
   tmpchr=(unsigned char) IRISbuffer[j];
   t.TRACE("\\0x%X", tmpchr); 
	}
	t.TRACE("\n");

	TxData(nCOM, (char*)IRISbuffer, nMsgSize);

	delete [] IRISbuffer;
}
Exemple #2
0
/********************************************************************

  Declaration: 
	Call:  Send_SET_AIR_VALVE_EN_Message (nSize, nCOM)
  Input: size of message (int) and number of com-mport
  Returns: none
  01.09.2004 Initial coding / YS  
 
*********************************************************************/
void Send_TEST_Message (int nSize, int nCOM)
{
  unsigned char  *IRISbuffer;   
  int nMsgSize = 12;
	unsigned char tmpchr;

  IRISbuffer = new unsigned char[15];

	IRISbuffer[0] =0x1E;
	IRISbuffer[1] =0x8F;
	IRISbuffer[2] =0x12;
	IRISbuffer[3] =0x36;
	IRISbuffer[4] =0x93;
	IRISbuffer[5] =0x10;
	IRISbuffer[6] =0x4;
	IRISbuffer[7] =0x41;
	IRISbuffer[8] =0xCC;
	IRISbuffer[9] =0xE;
	IRISbuffer[10]=0xF;
	IRISbuffer[11]=0x7E;
	//IRISbuffer[0]=0x
	//IRISbuffer[0]=0x
  
 t.TRACE("Send- "); 
 for (int j=0; j < nMsgSize; j++)
  {
   tmpchr=(unsigned char) IRISbuffer[j];
   t.TRACE("\\0x%X", tmpchr); 
	}
	t.TRACE("\n"); 

  TxData(nCOM, (char*)IRISbuffer, nMsgSize);

	delete [] IRISbuffer;
}
Exemple #3
0
/********************************************************************

  Savcor IT Oy/YS
  Declaration: Function creates message of randomised characters (litter)
	             and sends it to a COM port which is nCOM. 
							 REM: Test purposes only!!
	Call:  SendTestMes(nSize, nCOM)
  Input: size of message (int) and number of com-mport
  Returns: none
  05.05.2003 Initial coding / YS  
 
*********************************************************************/
void SendTestMes(int nSize, int nCOM)
{

  char  SendTx[nSize];
  int   y;
	long  StVal, Subst;
  int   RValue = FALSE;
  char  tmpbuff[30];
  int   random, flag; 
 
	srand((unsigned)time(NULL));


flag = 0;

for (y=0; y<nSize; y++)
{ 
  while(!flag)
		{
     random = rand() % 255;		
     if ((random >= 0) && (random <= 255))
      flag= 1;      
		}
	SendTx[y]= (unsigned char)random;		
	flag = 0;
}
 //printf("Start Time=%d\n", Get1msTimeMS());
 StVal = Get1msTimeMS();

 TxData(nCOM, SendTx, sizeof(SendTx));
do
{
  RValue = comm_port_out_empty(com_port[nCOM]);
} while (!RValue);

//printf("End Time=%d\n", Get1msTimeMS());
Subst = Get1msTimeMS() - StVal;

sprintf(tmpbuff, " Diff = %ld", Subst); 
TxData(nCOM, tmpbuff,strlen(tmpbuff));
//printf ("%s\n", tmpbuff);
}
// Transmit full frame
int SerialIntrf::Tx(int DevAddr, uint8_t *pData, int DataLen)
{
    int count = 0;

    if (pData && StartTx(DevAddr))
    {
        count = TxData(pData, DataLen);
        StopTx();
    }

    return count;
}
Exemple #5
0
/********************************************************************

  Declaration: Function creates message "log versiona" and sending 
               it to a COM port connected to a GPS card. Testing purpose 
               only.
	Call:  SendGPSTESTMessage (nSize, nCOM)
  Input: size of message (int) and number of com-mport
  Returns: none
  01.09.2004 Initial coding / YS  
 
*********************************************************************/
void SendGPSTESTMessage(int nSize, int nCOM)
{
   char  SendTx[15];   
   int   RValue = FALSE; 
   
 sprintf(SendTx, "%s%c", "log versiona", 0x0D);
 TxData(nCOM, SendTx, sizeof(SendTx));
/*
do
{
  RValue = comm_port_out_empty(com_port[nCOM]);
} while (!RValue);
*/
}
Exemple #6
0
//***************************************************************************
//! \brief       主函数
//***************************************************************************
void main (void)
{
	WDTR = 0x5A;
	SYS_Init();				//
	Wifi_Rest();			//
	while(1)
	{
		WDTR = 0x5A;
		LinkCheck ();		// WiFi连接断开 检测
		RxData ();		// 串口接收数据处理
		TxData ();		// 串口数据发送
		TimeFlag ();			// 时间标志位处理
		Sd_Send ();			// 与主机通信 发送处理函数
		Sd_Receive ();			// 与主机通信 接受处理函数
	}
}
Exemple #7
0
/********************************************************************

  Declaration: 
	Call:  Send_0x20_Message (nSize, nCOM)
  Input: size of message (int) and number of com-mport
  Returns: none
  27.10.2006 Initial coding / YS  
  
	binary part:
	\0x23\0x1\0x1\0x1\0x1\0x1\0x0\0x0\0x1\0x1\0x1\0x1\0x72\0x9C\0x7E

*********************************************************************/
void Send_0x23_Message (int nSize, int nCOM)
{
  unsigned char  *IRISbuffer;   
  int nMsgSize = 14;
	unsigned char tmpchr;
	unsigned short calcCRC;
  unsigned char tmpBuf[2];

	t.TRACE ("nSize: 0x%X", nSize);
  t.TRACE (", %d\n", nSize);
  IRISbuffer = new unsigned char[15];

	IRISbuffer[0] =0x23;
	IRISbuffer[1] =0x2;
	IRISbuffer[2] =0x1;
	IRISbuffer[3] =0x2;
	IRISbuffer[4] =0x1;
	IRISbuffer[5] =0x2;
	IRISbuffer[6] =0x0;
	IRISbuffer[7] =0x0;
	IRISbuffer[8] = 0x1;
	IRISbuffer[9] = 0x1;
	IRISbuffer[10] =0x1;
	IRISbuffer[11] =0x1;
	
	calcCRC = NetworkServices::calcCRC(IRISbuffer, nMsgSize-2);	
	t.TRACE ("calculated CRC: 0x%X\n", calcCRC);
	memcpy ((void*)(tmpBuf),  (const void*)&calcCRC, sizeof(calcCRC) );

  IRISbuffer[12] =tmpBuf[1]; //0x35
	IRISbuffer[13] =tmpBuf[0]; //0xAC

	IRISbuffer[14] =0x7E;
 
 t.TRACE("Send_0x23_Message- "); 
 for (int j=0; j < nMsgSize+1; j++)
  {
   tmpchr=(unsigned char) IRISbuffer[j];
   t.TRACE("\\0x%X", tmpchr); 
	}
	t.TRACE("\n"); 

  TxData(nCOM, (char*)IRISbuffer, nMsgSize+1);

	delete [] IRISbuffer;
}
Exemple #8
0
/********************************************************************

  Declaration: 
	Call:  Send_EMPTY_Message (nSize, nCOM)
  Input: message number (int) and number of com-mport
  Returns: none
  01.09.2004 Initial coding / YS  
 
*********************************************************************/
void Send_EMPTY_Message (int nNumber, int nCOM)
{
  unsigned char  *IRISbuffer;   
  int nMsgSize = 6;
	unsigned char tmpchr;
  unsigned short calcCRC;
  unsigned char tmpBuf[2];

  IRISbuffer = new unsigned char[nMsgSize];
  
	IRISbuffer[0]=nNumber;
	IRISbuffer[1]=0x0;
	IRISbuffer[2]=0x0;
	// IRISbuffer[5]=0x7E;

	calcCRC = NetworkServices::calcCRC(IRISbuffer, 3);
	
	// t.TRACE ("calculated CRC: 0x%X\n", calcCRC);
	memcpy ((void*)(tmpBuf),  (const void*)&calcCRC, sizeof(calcCRC) );
	IRISbuffer[3]=tmpBuf[1];
	IRISbuffer[4]=tmpBuf[0];
	
	// memcpy((void *)&BD_Header[GPSNbr], (const void*)RecvData[GPSNbr], sizeof(BD_HEADER));
	//IRISbuffer[0]=0x
  //\0x2B\0x0\0x0\0x8\0x70\0x7E
	//IRISbuffer[0]=0x
  
  IRISbuffer[5]=0x7E;

 t.TRACE("Send- "); 
 for (int j=0; j < nMsgSize; j++)
  {
   tmpchr=(unsigned char) IRISbuffer[j];
   t.TRACE("\\0x%X", tmpchr); 
	}
	t.TRACE("\n"); 

  TxData(nCOM, (char*)IRISbuffer, nMsgSize);

	delete [] IRISbuffer;
}
int main(void)
{
	spi_init();
	setup();

	#ifdef Rx_mode
		cc2500_mode(1);  //configure device in rx/tx mode (1 - rx ,0 - tx)
	#else if Tx_mode
		cc2500_mode(0);
	#endif
	while (1)
	{
		request_received = 1;  // for testing only.
//		PWR_EnterSleepMode(PWR_SLEEPEntry_WFI);  //wfi();// commented temporary by rb must remove it.(15/11/14)
		if (request_received)   // must be high on external interrupt
		{
			request_received = 0;
			#ifdef Rx_mode
				RxData();
			#else if Tx_mode
				TxData("id+key no which is pressed");
			#endif
		}
	//	loop_T(); not needed for receiver at this place.
	//	loop_R();
		if(take_action!=0)
		{
			switch(take_action)
			{
				case 49:
					led_toggle;
				case 50:
					;
				default:
					;
			}
			take_action = 0;
		}
	}
}
Exemple #10
0
/********************************************************************

  Declaration: 
	Call:  Send_1F_Message (nSize, nCOM)
  Input: num of message (int) and number of com-mport
  Returns: none
  01.09.2004 Initial coding / YS  
 
*********************************************************************/
void Send_1F_Message (int nNum, int nCOM)
{
  unsigned char  *IRISbuffer;   
  int nMsgSize = 5;
	unsigned char tmpchr;
  unsigned short calcCRC;
  unsigned char tmpBuf[2];

  IRISbuffer = new unsigned char[nMsgSize];
    
	// 0x1E = 30

	IRISbuffer[0]=0x1F;
	IRISbuffer[1]=nNum;
  
	calcCRC = NetworkServices::calcCRC(IRISbuffer, 2);
	
	//t.TRACE ("calculated CRC: 0x%X\n", calcCRC);
	memcpy ((void*)(tmpBuf),  (const void*)&calcCRC, sizeof(calcCRC) );
	
	IRISbuffer[2]=tmpBuf[1];
	IRISbuffer[3]=tmpBuf[0];
		
	IRISbuffer[4]=0x7E;
		
 t.TRACE("Send- "); 
 for (int j=0; j < nMsgSize; j++)
  {
   tmpchr=(unsigned char) IRISbuffer[j];
   t.TRACE("\\0x%X", tmpchr); 
	}
	t.TRACE("\n"); 

  TxData(nCOM, (char*)IRISbuffer, nMsgSize);

	delete [] IRISbuffer;
}
void loop_T() 
{
	delay_ms(10);
	TxData(6); //  Transmit No_of_Bytes
	delay_ms(10);
}
Exemple #12
0
/********************************************************************

  Declaration: 
	Call:  Send_0x24_Message (nSize, nCOM)
  Input: size of message (int) and number of com-mport
  Returns: none
  10.11.2006 Initial coding / YS  
  
	binary part:
	
	\0x24\0x4E\0x6F\0x6E\0x65\0x00\0x78\0x70\0x20\0x46
	\0x6C\0x6F\0x77\0x20\0x53\0x65\0x6E\0x73\0x6F\0x72
	\0x20\0x43\0x61\0x6C\0x20\0x50\0x61\0x73\0x73\0x00
	\0x00\0x00\0x00\0x00\0x00\0x00\0x00\0x00\0x00\0x00
	\0x00\0x18\0x07\0xD0\0x56\0xE7\0x7E

*********************************************************************/
void Send_0x24_Message (int nSize, int nCOM)
{
  unsigned char  *IRISbuffer;   
  const int nMsgSize = 47;
	unsigned char tmpchr;
	unsigned short calcCRC;
  unsigned char tmpBuf[2];

	t.TRACE ("nSize: 0x%X", nSize);
  t.TRACE (", %d\n", nSize);
  IRISbuffer = new unsigned char[nMsgSize];
  // Message ID:
	IRISbuffer[0] = 0x24;
	IRISbuffer[1] = 0x4E;
	IRISbuffer[2] = 0x6F;	
	IRISbuffer[3] = 0x6E;
	IRISbuffer[4] = 0x65;
	IRISbuffer[5] = 0x00;
	IRISbuffer[6] = 0x78;	
	IRISbuffer[7] = 0x70;
	IRISbuffer[8] = 0x20;
	IRISbuffer[9] = 0x46;
	IRISbuffer[10] =0x6C;
	IRISbuffer[11] =0x6F;
	IRISbuffer[12] =0x77;
	IRISbuffer[13] =0x20;
	IRISbuffer[14] =0x53;	
	IRISbuffer[15] =0x65;
	IRISbuffer[16] =0x6E;
	IRISbuffer[17] =0x73;	
	IRISbuffer[18] =0x6F;
	IRISbuffer[19] =0x72;
	IRISbuffer[20] =0x20;
	IRISbuffer[21] =0x43; 
	IRISbuffer[22] =0x61;
	IRISbuffer[23] =0x6C;
	IRISbuffer[24] =0x20;
	IRISbuffer[25] =0x50;
	IRISbuffer[26] =0x61;
	IRISbuffer[27] =0x73;
	IRISbuffer[28] =0x73;
	IRISbuffer[29] =0x00;
	IRISbuffer[30] =0x00;
	IRISbuffer[31] =0x00;
	IRISbuffer[32] =0x00;
	IRISbuffer[33] =0x00;
	IRISbuffer[34] =0x00;
	IRISbuffer[35] =0x00;
	IRISbuffer[36] =0x00;
	IRISbuffer[37] =0x00;
	IRISbuffer[38] =0x00;
	IRISbuffer[39] =0x00;
	IRISbuffer[40] =0x00;
	IRISbuffer[41] =0x18;
	IRISbuffer[42] =0x07;
	IRISbuffer[43] =0xD0;
	IRISbuffer[44] =0x00;
	IRISbuffer[45] =0x00;
		
	calcCRC = NetworkServices::calcCRC(IRISbuffer, nMsgSize-3);	
	t.TRACE ("calculated CRC: 0x%X\n", calcCRC);
	memcpy ((void*)(tmpBuf),  (const void*)&calcCRC, sizeof(calcCRC) );

  IRISbuffer[44] =tmpBuf[1]; 
	IRISbuffer[45] =tmpBuf[0]; 

	IRISbuffer[46] =0x7E;
 
 t.TRACE("Send_0x24_Message- "); 
 for (int j=0; j < nMsgSize; j++)
  {
   tmpchr=(unsigned char) IRISbuffer[j];
   t.TRACE("\\0x%X", tmpchr); 
	}
	t.TRACE("\n"); 

  TxData(nCOM, (char*)IRISbuffer, nMsgSize);

	delete [] IRISbuffer;
}
Exemple #13
0
/********************************************************************

  Declaration: 
	Call:  Send_0x20_Message (nSize, nCOM)
  Input: size of message (int) and number of com-mport
  Returns: none
  27.10.2006 Initial coding / YS  
  
	binary part:
	\0x20\0x0\0x0\0xD\0x8E\0x0\0x0\0x0\0x17\0x0\0x0\0xD\0xC1\0x0
  \0x0\0xB\0xF\0x0\0x0\0xB\0x4D\0x0\0x0\0xA\0xDD\0x35\0xAC\0x7E

*********************************************************************/
void Send_0x20_Message (int nSize, int nCOM)
{
  unsigned char  *IRISbuffer;   
  const int nMsgSize = 28;
	unsigned char tmpchr;
	unsigned short calcCRC;
  unsigned char tmpBuf[2];

	t.TRACE ("nSize: 0x%X", nSize);
  t.TRACE (", %d\n", nSize);
  IRISbuffer = new unsigned char[nMsgSize];
  // Message ID:
	IRISbuffer[0] =0x20;

	// Flow ml/min - Total:
	IRISbuffer[1] =0x0;
	IRISbuffer[2] =0x0;	
	IRISbuffer[3] =0x0;
	IRISbuffer[4] =0x8E;
	// Flow ml/min - Oxygen:
	IRISbuffer[5] =0x0;
	IRISbuffer[6] =0x0;	
	IRISbuffer[7] =0x0;
	//*(IRISbuffer+8) = 6;
	IRISbuffer[8] = nSize;// 0x05;

// Flow ml/min - Air:	
	IRISbuffer[9] = 0x0;
	IRISbuffer[10] =0x0;
	IRISbuffer[11] =0x0;
	IRISbuffer[12] =0xC1;

//Temperature - Total:	
	IRISbuffer[13] =0x0;
	IRISbuffer[14] =0x0;	
	IRISbuffer[15] =nSize;
	IRISbuffer[16] =nSize; //0x0;

//Temperature - Oxygen:	
	IRISbuffer[17] =0x0;	
	IRISbuffer[18] =0x0;
	IRISbuffer[19] =0x0; // 0xB
	IRISbuffer[20] =0x4D;

//Temperature - air:		
	IRISbuffer[21] =0x0; 
	IRISbuffer[22] =0x0;
	IRISbuffer[23] =0x0;
	IRISbuffer[24] =0x4D;
	
	calcCRC = NetworkServices::calcCRC(IRISbuffer, nMsgSize-3);	
	t.TRACE ("calculated CRC: 0x%X\n", calcCRC);
	memcpy ((void*)(tmpBuf),  (const void*)&calcCRC, sizeof(calcCRC) );

  IRISbuffer[25] =tmpBuf[1]; //0x35
	IRISbuffer[26] =tmpBuf[0]; //0xAC

	IRISbuffer[27] =0x7E;
 
 t.TRACE("Send_0x20_Message- "); 
 for (int j=0; j < nMsgSize; j++)
  {
   tmpchr=(unsigned char) IRISbuffer[j];
   t.TRACE("\\0x%X", tmpchr); 
	}
	t.TRACE("\n"); 

  TxData(nCOM, (char*)IRISbuffer, nMsgSize);

	delete [] IRISbuffer;
}