Beispiel #1
0
void send_comand(USART_TypeDef* USARTx, char * ss)
{
 uint8_t i=0;
 while(ss[i]){
   send_Uart(USARTx,ss[i]);
  i++;
 }

}
Beispiel #2
0
void send_int_Usart(long c)
{
	unsigned long d=10000;
	char temp,flag=0;
	do
	{
		c=c%d;
		d=d/10;
		temp=c/d;
		if(temp!=0)
			flag=1;
		if(flag==1)
			send_Uart(USART3,temp+'0');
	}
	while(d>1);
}
Beispiel #3
0
void webif_data(uint8_t id, eth_frame_t *frame, uint16_t len)
{
	ip_packet_t *ip = (void*)(frame->data);
	tcp_packet_t *tcp = (void*)(ip->data);
	char *req = (void*)tcp_get_data(tcp);
	char *buf = (void*)(tcp->data), *buf_ptr = buf;
	char *url, *p, *params, *name, *value;


	if(!len) return;

	if( (memcmp_P(req, PSTR("GET "), 4) == 0) &&
		((p = strchr(req + 4, ' ')) != 0) )
	{
		url = req + 4;
		*p = 0;

		if((params = strchr(url, '?')))
			*(params++) = 0;

		if(strcmp_P(url, PSTR("/")) == 0)
		{
		
			if(params==NULL) {
					send_Uart_str(" No params!");
					send_Uart(13);
			}else {
					send_Uart_str(" With params!");
					send_Uart(13);
			}

			while(params)
			{
				if((p = strchr(params, '&')))
					*(p++) = 0;
				
				name = params;
				if((value = strchr(name, '=')))
					*(value++) = 0;
				
				if( (strcmp_P(name, PSTR("led")) == 0 ) && value )
				{
					if(strcmp_P(value, PSTR("on")) == 0)
						led_on()
					else if(strcmp_P(value, PSTR("off")) == 0)
						led_off()
				}
				
				else if( (strcmp_P(name, PSTR("lang")) == 0) && value )
				{
					if(strcmp_P(value, PSTR("en")) == 0)
						lang_ru = 0;
					else if(strcmp_P(value, PSTR("ru")) == 0)
						lang_ru = 1;
				}
				
				params = p;
			}

			fill_buf_p(&buf_ptr, webif_200_header);
			fill_buf_p(&buf_ptr, PSTR("<pre>"));

			if(!lang_ru)
			{
				fill_buf_p(&buf_ptr, PSTR("<p align='right'>[<b>EN</b> | "
					"<a href='/?lang=ru'>RU</a>]</p>"));
			}
			else
			{
				fill_buf_p(&buf_ptr, PSTR("<p align='right'>[<a href='/?lang=en'>EN</a> | "
					"<b>RU</b>]</p>"));
			}
			
			if((!led_state)&&(!lang_ru))
				fill_buf_p(&buf_ptr, PSTR("Led is OFF. Turn <a href='/?led=on'>on</a>."));
			else if(led_state &&(!lang_ru))
				fill_buf_p(&buf_ptr, PSTR("Led is ON. Turn <a href='/?led=off'>off</a>."));
			else if((!led_state)&&(lang_ru))
				fill_buf_p(&buf_ptr, PSTR("Светодиод выключен. <a href='/?led=on'>Включить</a>."));
			else if(led_state &&(lang_ru))
				fill_buf_p(&buf_ptr, PSTR("Светодиод включен. <a href='/?led=off'>Выключить</a>."));
			
			fill_buf_p(&buf_ptr, PSTR("</pre>"));
		}
Beispiel #4
0
int main(void)
{ //AT+CGDCONT=1,"IP","www.kyivstar.net"

    char test[37]={'A','T','+','C','G','D','C','O','N','T','=','1',',','"','I','P' ,'"',',','"','w','w','w','.','k','y','i','v','s','t','a','r','.','n','e','t','"','\r'  };

    init();

send_comand(USART2,test);
send_comand(USART2,"\r\n");


/*
    while(1) {
if(strcmp(uart1_rx_buf,"MODEM:STARTUP")==0){
send_str2(uart1_rx_buf);
uart1_rx_bit=0;
send_str2("\n");
send_str2("1if\r\n");
memset(uart1_rx_buf, 0, sizeof(uart1_rx_buf));
break;
}

}
*/
   while(1) {
if(strcmp(uart1_rx_buf,"+PBREADY")==0){
send_comand(USART2,uart1_rx_buf);
uart1_rx_bit=0;
send_comand(USART2,"2if_+PBREADY\r\n");
memset(uart1_rx_buf, 0, sizeof(uart1_rx_buf));
break;
}

}


    send_comand(USART2,"*******************************\r\n");
    send_comand(USART2,test);

 while(1) {
send_comand(USART1,"AT+CREG?\r");
delay(10000000);
if(strcmp(uart1_rx_buf,"+CREG: 0,3OK")==0){
send_comand(USART2,uart1_rx_buf);
uart1_rx_bit=0;
send_comand(USART2,"\r\n");
memset(uart1_rx_buf, 0, sizeof(uart1_rx_buf));
}

if(strcmp(uart1_rx_buf,"+CREG: 0,1OK")==0){
send_comand(USART2,uart1_rx_buf);
uart1_rx_bit=0;
send_comand(USART2,"\r\n");
memset(uart1_rx_buf, 0, sizeof(uart1_rx_buf));
break;
}
}


    while(1) {
send_comand(USART1,"AT+XISP=0\r");
delay(10000000);
if(strcmp(uart1_rx_buf,"OK")==0){
send_comand(USART2,uart1_rx_buf);
uart1_rx_bit=0;
send_comand(USART2,"AT+XISP=0\r\n");
memset(uart1_rx_buf, 0, sizeof(uart1_rx_buf));
break;
}

}

   while(1) {
send_comand(USART1,test);
delay(10000000);
if(strcmp(uart1_rx_buf,"OK")==0){
send_comand(USART2,uart1_rx_buf);
uart1_rx_bit=0;
send_comand(USART2,"SsulkaOK\r\n");
memset(uart1_rx_buf, 0, sizeof(uart1_rx_buf));
break;
}

}
 while(1) {
send_comand(USART1,"at+xiic=1\r");
delay(10000000);
if(strcmp(uart1_rx_buf,"OK")==0){
send_comand(USART2,uart1_rx_buf);
uart1_rx_bit=0;
send_comand(USART2,"at+xiic=1\r\n");
memset(uart1_rx_buf, 0, sizeof(uart1_rx_buf));
break;
}

}
//send_str1("at+tcpsetup=0,89.22.47.180,8056\r");

send_comand(USART1,"at+tcpsetup=0,89.22.47.180,8056\r");
while(1) {
delay(10000000);
if(strcmp(uart1_rx_buf,"OK")==0){
send_comand(USART2,uart1_rx_buf);
uart1_rx_bit=0;
send_comand(USART2,"at+tcpsetup=0,89.22.47.180,8056\r\n");
memset(uart1_rx_buf, 0, sizeof(uart1_rx_buf));
}
if(strcmp(uart1_rx_buf,"OK+TCPSETUP:0,OK")==0){
send_comand(USART2,uart1_rx_buf);
uart1_rx_bit=0;
send_comand(USART2,"+TCPSETUP:0,OK\r\n");
memset(uart1_rx_buf, 0, sizeof(uart1_rx_buf));
break;
}

if(strcmp(uart1_rx_buf,"+TCPSETUP:0,OK")==0){
send_comand(USART2,uart1_rx_buf);
uart1_rx_bit=0;
send_comand(USART2,"+TCPSETUP:0,OK\r\n");
memset(uart1_rx_buf, 0, sizeof(uart1_rx_buf));
break;
}

if(strcmp(uart1_rx_buf,"+TCPSETUP:0,FAIL")==0){
send_comand(USART2,uart1_rx_buf);
uart1_rx_bit=0;
send_comand(USART2,"+TCPSETUP:0,FAIL\r\n");
memset(uart1_rx_buf, 0, sizeof(uart1_rx_buf));
break;
}
if(strcmp(uart1_rx_buf,"+TCPSETUP:Error 1")==0){
send_comand(USART2,uart1_rx_buf);
uart1_rx_bit=0;
send_comand(USART2,"+TCPSETUP:Error 1\r\n");
memset(uart1_rx_buf, 0, sizeof(uart1_rx_buf));
break;
}
}



 while(1) {
         send_comand(USART1,"AT+TCPSEND=0,253\r");
delay(10000000);
if(strcmp(uart1_rx_buf,">")==0){
send_comand(USART2,uart1_rx_buf);
uart1_rx_bit=0;
send_comand(USART2,"1if\r\n");
memset(uart1_rx_buf, 0, sizeof(uart1_rx_buf));

 while(1) {
         //send_comand(USART1,"0123456789\r");
         send_comand(USART2,"11111111111111111111111\r\n");

while(1){
        if(uart3_rx_bit>250){break;}
        if (USART3->SR & USART_SR_RXNE){
uart3_rx_buf[uart3_rx_bit]=USART3->DR;
uart3_rx_bit++;}
//send_comand(USART2,"111\r\n");
}
send_comand(USART1, uart3_rx_buf);
send_Uart(USART1," ");
send_Uart(USART1,"*");
send_Uart(USART1,"\r");
//send_comand(USART1,"\r");

delay(10000000);
if(strcmp(uart1_rx_buf,"OK+TCPSEND:0,253")==0){
send_comand(USART2,uart1_rx_buf);
uart1_rx_bit=0;
send_comand(USART2,"11111if\r\n");
memset(uart1_rx_buf, 0, sizeof(uart1_rx_buf));
break;
}
if(strcmp(uart1_rx_buf,"OK+TCPSEND:0,253+TCPCLOSE:0,Link Closed")==0){
send_comand(USART2,uart1_rx_buf);
uart1_rx_bit=0;
send_comand(USART2,"12222if\r\n");
memset(uart1_rx_buf, 0, sizeof(uart1_rx_buf));
break;
}
send_comand(USART2,uart1_rx_buf);
send_comand(USART2,"1112121212121211212if\r\n");
break;
}

break;
}

}



/*
send_comand(USART2,"11111111111111111111111\r\n");

while(1){
        if(uart3_rx_bit>250){break;}
        if (USART3->SR & USART_SR_RXNE){
uart3_rx_buf[uart3_rx_bit]=USART3->DR;
uart3_rx_bit++;}
//send_comand(USART2,"111\r\n");
}
send_comand(USART2, uart3_rx_buf);
*/
send_comand(USART2,"11111111111111111111111\r\n");
}
 void send_Uart_str(USART_TypeDef* USARTx, unsigned char *s)
{
  while (*s != 0) 
    send_Uart(USARTx, *s++);
}