Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
//printf("GET /update?key=KVIBGCA5EQTV9HZZ&field1=%d&field2=
%d\r\n\0",intUmidade,intTemperatura);
//printf("GET /update?key=KVIBGCA5EQTV9HZZ&field1=%d",intUmidade);
//printf("&field2=%d\r\n\0",intTemperatura);
//sprintf(Texto,"GET /update?key=KVIBGCA5EQTV9HZZ&field1=%d&field2=
%d\r\n\0",intUmidade,intTemperatura);
//puts(Texto);
//puts("GET /update?key=KVIBGCA5EQTV9HZZ&field1=7&field2=10\r\n\0");
//printf("GET /update?key=KVIBGCA5EQTV9HZZ&field1=%d&field2=
%dHTTP/1.1\r\n\0",intUmidade,intTemperatura);
//puts("GET /update?
key=KVIBGCA5EQTV9HZZ&field1="+intUmidade+"&field2="+intTemperatura+"\r\n\0");
//printf("GET /update?key=KVIBGCA5EQTV9HZZ&field1=%d&field2=
%d\r\n\0",intUmidade,IntTemperatura);
//sprintf(buffer,"&field1=%d&field2=%d\r\n\0",intUmidade,intTemperatura);
//printf("GET /update?key=1FRK9AGB96JKCWJG%s\r\n\r\n\0",buffer);
//printf("GET /update?key=1FRK9AGB96JKCWJG&field1=%d&field2=
%d\r\n",intUmidade,intTemperatura);
//printf("GET /update?key=1FRK9AGB96JKCWJG&field1=%d&field2=
%d\r\n\0",intUmidade,intTemperatura);
//printf("GET /update?key=1FRK9AGB96JKCWJG&field1=%d&field2=
%d\r\n\r\n",intUmidade,intTemperatura);
//puts("GET /update?key=1FRK9AGB96JKCWJG&field1=7\r\n\0");
//puts("GET /update?key=1FRK9AGB96JKCWJG&field1=7&field2=10\r\n\0");
//puts("GET /update?
key=1FRK9AGB96JKCWJG&field1=1&field2=2&status=greevy\r\n\0");
#include <18F4550.h>
#use
delay(clock=8000000) //
Informa ao complilador que o clock ser� de 8MHz
#fuses INTRC, PUT,
NOPROTECT // INTRC: Utiliza o
clock interno
// PUT: Faz com que o programa comece 72ms ap�s ser iniciado
19:24:40
// NOPROTECT: Permite reprogramar o PIC e enxergar o c�digo
long TempoEntreUploadThingSpeak =
0; // Vari�vel que controla o tempo
entre os envios de dados
char FlagEnviaDados = 0;
#INT_TIMER1
// Tratamento da interrup��o do Timer1
void Timer1()
{
/*==================================================== Valores do Timer para
8MHz ============================================================
Clock de 8000000/4 = 2000000; Prescaler = 4; Per�odo =
1/(2000000/4) = 1/500000 = 2us
65536*2us = 0,131072
65536 - 0,131072s
x - 0,1s
x = 50000
valor a ser inicializado no Timer 1 =
65536 - 50000 = 15536
===================================================================================
=========================================================*/
TempoEntreUploadThingSpeak+
+; // Incrementa a vari�vel do
tempo entre uploads
set_timer1(15536); //
Configura timer para 0,1s e reinicia a interrup��o
}
void
main() //
Programa principal
{
//setup_oscillator(OSC_8MHZ);
OSCCON =
0x72; // Configura o
clock para 8MHz
// Configura Timer1
setup_timer_1(T1_INTERNAL|
T1_DIV_BY_4); // Configura��o do Timer1 para
clock interno, prescaler 8
set_timer1(15536); //
Carrega o timer1 com valor para 0,1s
enable_interrupts(INT_TIMER1); //
Habilita a interup��o do timer1
puts("AT+CWMODE=1\r\n\0"); //
Configura o ESP8266 para operar em modo esta��o (cliente)
delay_ms(500); //
Delay para configurar
puts("AT+CWJAP=\"GDESTE@2.4\",\"(GcEm)2@17W1f1.\"\r\n\0"); // Nome
e senha da rede, respectivamente
delay_ms(7000); //
Delay para conectar
puts("AT+CIPMUX=1\r\n\0"); //
Configura o ESP8266 para operar com multiplas conex�es
delay_ms(500); //
Delay para configurar
while(1) //
Loop infinito
{
if ((FlagEnviaDados == 1)&&(FlagDHT11==1)) //
Verifica se pode enviar os dados
{
output_toggle(LED); // Liga o
LED
puts("AT+CIPSTART=4,\"TCP\",\"184.106.153.149\",80\r\n\0"); //
Configura o ESP8266 para operar com 4 conexoes, usando TCP,
delay_ms(5000); // Delay
para configurar
puts("AT+CIPSEND=4,46\r\n\0"); // 46 � o
tamanho do comando get (incluindo o \r\n\0)
delay_ms(500); // Delay
para configurar
// Envia a chave e os dados para o ThingSpeak
printf("GET /update?key=EZR89UBCDP1ZTAWV&field1=%d%d&field2=%d%d\r\n\0",
intUmidade, decUmidade, intTemperatura, decTemperatura);
TempoEntreUploadThingSpeak =
0; // Zera o flag para verificar a
contagem de 30s para enviar os dados
FlagEnviaDados =
0; // Zera o flag que autoriza
o envio dos dados
output_toggle(LED); // Apaga o
LED
}
}
}