Paso 6: Listo el Software
Ahora, vamos a cargar el software
(이제 프로그램을 올려볻겠습니다)
Hay 3 código del programa intel Galileo Gen 2
(갈릴레오 2세대에서 작동 시킬 수 있는 3가지 코드가 있습니다)
La primera es inteligente
(처음은 지능형 부분입니다)
///////////////////////////////////////////////
void setup() {}
inicializar la comunicación serial a 9600 bits por segundo: Serial.begin(9600); pinMode (2, salida); pinMode (3, salida); pinMode (13, salida); }
la rutina de loop se ejecuta una y otra vez para siempre: void loop() {/ / leer la entrada en el pin analógico 0: / / configuración inteligente / / int sensorValue1 = analogRead(A0); int sensorValue2 = analogRead(A2); Serial.println(sensorValue1); Serial.println(""); Serial.println(""); Serial.println(""); Serial.println(sensorValue2);
///////////////////////// DISTANCE SENSOR //////////////////////////////////
Si (sensorValue2 < 50) {digitalWrite (2, alto); digitalWrite (13, HIGH);} else if (sensorValue2 > 50) {digitalWrite (2, bajo); digitalWrite (13, LOW);} / / luz SENSOR / / si (sensorValue1 < 20) {digitalWrite (3, alto); digitalWrite (12, HIGH);} else if (sensorValue1 > 100) {digitalWrite (3, bajo); digitalWrite (12, bajo);}}
/////////////////////////////////////////
Ahora aquí está la sección de servidor Web
(이제 웹서버 부분입니다)
///////////////////////////////////////////////////////
#include
#include
mac de bytes [] = {0x98, 0x4F, 0xEE, 0 x 01, 0x81, 0xF2}; Ip(192,168,10,20) dirección IP; puerta de entrada de bytes [] = {192, 168, 10, 1}; subred de bytes [] = {255, 255, 255, 0};
InString de cadena = String(35);
Cadena de Led;
led de int [] = {00, 2, 3, 4, 5, 6, 7, 8,9}; int numofleds = 8; String [] valor = {"a", en "on","", "on", "on", "on", "on", "on", "on"}; Server(80) de EthernetServer; Datos de la cadena; void setup() {Serial.begin(9600); Ethernet.Begin (mac, ip); Server.Begin(); configurar modo pin de (int j = 1; j < (numofleds + 1); j ++) {pinMode (salida led [j]);} Serial.println ("Serial listo"); Serial.println ("Ethernet listo"); Serial.println ("servidor listo"); }
void loop() {EthernetClient cliente = server.available(); if(client) {/ / una petición http termina con una línea en blanco boolean current_line_is_blank = true; mientras que (client.connected()) {if(client.available()) {char c = client.read(); / / si hemos llegado al final de la línea (recibió una nueva línea / / carácter) y la línea está en blanco, ha terminado la solicitud http, / / para que podamos enviarle una respuesta si (inString.length() < 35) {inString.concat(c);} si (c == '\n' & & current_line_is_blank) {/ / enviar un client.println de encabezado de respuesta http estándar ("HTTP / 1.1 200 OK "); Client.println ("tipo de contenido: texto/html"); Client.println(); Client.println("
"); Client.println("
Regulador de la automatización casera
"); para (int i = 1; i < (numofleds + 1); i ++) {Led = String("Appliance") + i; if(inString.indexOf(Led+"=on") > 0 || inString.indexOf("all=on") > 0) {Serial.println(Led+"on"); digitalWrite (led [i], HIGH); valor [i] = "off";} más if(inString.indexOf(Led+"=off") > 0 || inString.indexOf("all=off") > 0) {Serial.println(Led+"on"); digitalWrite (led [i], LOW); valor [i] = "on";} client.println ("
"+ Led +" ");} Client.println("
Todos "); Client.println("
"); rotura; } Si (c == '\n') {/ / estamos empezando un nuevo current_line_is_blank de línea = true;} else if (c! = '\r') {/ / hemos conseguido un carácter en la actual línea current_line_is_blank = false;}} } / / dar el tiempo de navegador web para recibir el delay(1) de datos; inString = ""; Client.STOP(); } }
////////////////////////////////////////////////////
Ahora es la combinación de código de dos
(두가지를 한번에 수행하는 코드 입니다)
////////////////////////////////////////////////////
#include
#include //network NB: pines 10, 11, 12 y 13 están reservados para el módulo de Ethernet. mac de bytes [] = {0x98, 0x4F, 0xEE, 0 x 01, 0x81, 0xF2}; Ip(192,168,10,20) dirección IP; puerta de entrada de bytes [] = {192, 168, 10, 1}; subred de bytes [] = {255, 255, 255, 0};
InString de cadena = String(35);
Cadena de Led;
led de int [] = {00, 2, 3, 4, 5, 6, 7, 8,9}; Pasadores LED num 0 en arry no es uso int numofleds = 8; numofleds String [] valor = {"a", en "on","", "on", "on", "on", "on", "on", "on"}; Inicio todos los led están apagados
Server(80) de EthernetServer; Datos de la cadena; void setup() {Serial.begin(9600); Ethernet.Begin (mac, ip); Server.Begin(); configurar modo pin de (int j = 1; j < (numofleds + 1); j ++) {pinMode (salida led [j]);} Serial.println ("Serial listo"); Serial.println ("Ethernet listo"); Serial.println ("servidor listo"); }
void loop() {int sensorValue1 = analogRead(A0); int sensorValue2 = analogRead(A2); if (sensorValue2 < 50) {digitalWrite (2, alto); digitalWrite (13, HIGH);} else if (sensorValue2 > 50) {digitalWrite (2, bajo); digitalWrite (13, bajo);} / / luz SENSOR / / si (sensorValue1 < 20) {digitalWrite (3, alto); digitalWrite (12, HIGH);} else if (sensorValue1 > 100) {digitalWrite (3, bajo); digitalWrite (12, bajo);} Cliente EthernetClient = server.available(); if(Client) {/ / una petición http termina con una línea en blanco boolean current_line_is_blank = true; mientras que (client.connected()) {if(client.available()) {char c = client.read(); / / si hemos llegado al final de la línea (recibió una nueva línea / / carácter) y la línea está en blanco, ha terminado la solicitud http, / / para que podamos enviarle una respuesta si (inString.length() < 35) {inString.concat(c);} si (c == '\n' & & current_line_is_blank) {/ / enviar un client.println de encabezado de respuesta http estándar ("HTTP/1.1 200 OK"); client.println ("Content-Type : texto/html "); Client.println(); Client.println("
"); Client.println("
Regulador de la automatización casera
"); para (int i = 1; i < (numofleds + 1); i ++) {Led = String("led") + i; if(inString.indexOf(Led+"=on") > 0 || inString.indexOf("all=on") > 0) {Serial.println(Led+"on"); digitalWrite (led [i], HIGH); valor [i] = "off";} más if(inString.indexOf(Led+"=off") > 0 || inString.indexOf("all=off") > 0) {Serial.println(Led+"on"); digitalWrite (led [i], LOW); valor [i] = "on";} client.println ("
"+ Led +" ");} Client.println("
Todos "); Client.println("
"); rotura; } Si (c == '\n') {/ / estamos empezando un nuevo current_line_is_blank de línea = true;} else if (c! = '\r') {/ / hemos conseguido un carácter en la actual línea current_line_is_blank = false;}} } / / dar el tiempo de navegador web para recibir el delay(1) de datos; inString = ""; Client.STOP(); } }
///////////////////////////////////////////////////////////////////////////////////////////////////////
l voy a subir este código nos
(첨부파일을 확인해주세요)
ejemplo (온도센서)
#include
DHT11 dht11(2);
void setup()
{
Serial.Begin(9600);
}
void loop()
{
int err;
temp del flotador, humi;
Si ((err=dht11.read (humedad, temperatura)) == 0)
{
Serial.Print("Temperature:");
Serial.Print(Temp);
}
otra cosa
{
}
Delay(DHT11_RETRY_DELAY);
if(Temp > 35.5)
{
pinMode (13, HIGH);
}
otra cosa
{
pinMode (13, bajo);
}
}