Telit ve Kilitlenme sorunu

Başlatan rakkoc, 04 Mart 2014, 10:47:52

rakkoc

Merhaba Arkadaslar

Telit KS-863PY urunuun kulllanarak bir uygulama gelistirmekteyim.

Yasadigim problem su ki, Soket aciyor ve TCP/IP server'a veri aktariyorum fakat 1 kere aktarmayi yaptigimdan sonra 2. yi yapamadim. cihaz iletisimi kesiyor, hic veri gelmiyor Rx uzerinden.

Geldigi zamanda Soket acmada hata verip bir daha acamiyor.


Kodlarim asagidaki gibi

unsigned char OUTBUFFER[255];
	char *s;
	
	sap1024_Clear(0x00);
//	Send2GPRS("AT#CGSN\r",1);
// 	DelayMs(300);

	//Send2GPRS("+++",3);
 	DelayMs(500);
	Send2GPRS("AT+CMEE=2\r",10);
 	DelayMs(500);

	strAddNotNull(UART1Buffer);
	s = strstr((char *)UART1Buffer, "OK"); 
	if (s != NULL)                     
	{
		sap1024_StringXY(10,10,"Step 1 : Ok",1,1,1);
	}
	else
	{
		sap1024_StringXY(10,10,"Step 1 : No",1,1,1);
	}
	sap1024_Update();

	Send2GPRS("AT+COPS=1,0,\"TR TELSIM\"\r",25);
 	DelayMs(1250);

	strAddNotNull(UART1Buffer);
	s = strstr((char *)UART1Buffer, "OK"); 
	if (s != NULL)                     
	{
		sap1024_StringXY(20,10,"Step 2 : Ok",1,1,1);
	}
	else
	{
		sap1024_StringXY(20,10,"Step 2 : No",1,1,1);
	}
	sap1024_Update();
	
	Send2GPRS("AT+CGDCONT=1,\"IP\",\"internet\"\r",39);
 	DelayMs(2500);
	strAddNotNull(UART1Buffer);
	s = strstr((char *)UART1Buffer, "OK"); 
	if (s != NULL)                     
	{
		sap1024_StringXY(30,10,"Step 3 : Ok",1,1,1);
	}
	else
	{
		sap1024_StringXY(30,10,"Step 3 : No",1,1,1);
	}
	sap1024_Update();
	
	Send2GPRS("AT#SKTSET=0,6000,\"85.95.239.230\",255\r",46);
 	DelayMs(3500);
	strAddNotNull(UART1Buffer);
	s = strstr((char *)UART1Buffer, "OK"); 
	if (s != NULL)                     
	{
		sap1024_StringXY(40,10,"Step 4 : OK",1,1,1);
		sap1024_Update();
	}                                  
	else
	{
		sap1024_StringXY(40,10,"Step 4 : Not Ok",1,1,1);
		sap1024_Update();
		DelayMs(1500);
	Send2GPRS("+++",3);
		DelayMs(1000);
		Send2GPRS("AT#SH\r",6);

		return 0;
	}
	Send2GPRS("AT#SKTOP\r",10);
 	DelayMs(5500);

	strAddNotNull(UART1Buffer);
 	s = strstr((char *)UART1Buffer, "CONNECT"); 
	if (s != NULL)                     
	{
		sap1024_StringXY(50,10,"Step 5 : CONNECT",1,1,1);
		sap1024_Update();
	}
	else
	{
		sap1024_StringXY(50,10,"Step 5 : Not Connect",1,1,1);
	//	sap1024_Clear(0x00);
	//	DebugPrintHex(UART1Buffer, UART1Count,10,10,0);		

	//	Send2GPRS("+++",3);
	//	DelayMs(3000);
	//	Send2GPRS("AT#SH\r",6);

		sap1024_Update();
	//	DelayMs(15000);
	//	return 0;
	}
	
	
	memset(OUTBUFFER, 0, sizeof(OUTBUFFER));	
	sprintf(OUTBUFFER,"8088;%2X%2X%2X%2X;%6d;266;\r\n",tekneId[0],tekneId[1],tekneId[2],tekneId[3],AtikCounter);
	Send2GPRS(OUTBUFFER,27);
 	DelayMs(5555);
	
		sap1024_StringXY(60,10,"Step 6 : SEND",1,1,1);
		sap1024_Update();

		Send2GPRS("+++",3);
		DelayMs(3000);

	sap1024_StringXY(70,10,"Step 7 : DC",1,1,1);
	sap1024_Update();

	Send2GPRS("AT#SH\r",6);
		DelayMs(2500);


Send2Gprs fonksionumda asagidaki gibi
int Send2GPRS(char sData[], int L)
{
	unsigned char OUTBUFFER[255];

	ClearUartBuffer(1);
	memset(OUTBUFFER, 0, sizeof(OUTBUFFER));
	
	strcpy(&OUTBUFFER[0], sData);

  UARTSendBuffer(1,OUTBUFFER,L);	
	
	return 0;
}

rakkoc

Sorun cozuldu. Paylasayim ki belki lazim olur;

AT&K0  komutu eklemem yeterli mis.

Kaynak: https://www.picproje.org/index.php/topic,36941.0.html

Cozumu sunan : Goktug Cakmak ( Expkits.com )

Tesekkurler.