Stap 6: De Software klaar
Nu, laten we uploaden software
(이제 프로그램을 올려볻겠습니다)
Er zijn 3 programmacode voor intel galileo Gen 2
(갈릴레오 2세대에서 작동 시킬 BETEKENT 있는 3가지 코드가 있습니다)
De eerste is intelligente sectie
(처음은 지능형 부분입니다)
///////////////////////////////////////////////
VOID Setup {}
initialiseren van seriële communicatie met 9600 bits per seconde: Serial.begin(9600); pinMode (2, OUTPUT); pinMode (3, OUTPUT); pinMode (13, OUTPUT); }
de routine van de lus loopt over en weer forever: void loop {/ / Lees de input op analoge pin 0: / / / Intelligent SETUP / / / int sensorValue1 = analogRead(A0); int sensorValue2 = analogRead(A2); Serial.println(sensorValue1); Serial.println(""); Serial.println(""); Serial.println(""); Serial.println(sensorValue2);
///////////////////////// DISTANCE SENSOR //////////////////////////////////
Als (sensorValue2 < 50) {digitalWrite (2, HIGH); digitalWrite (13, hoge);} anders als (sensorValue2 > 50) {digitalWrite (2, laag); digitalWrite (13, laag);} / / / licht SENSOR / / / als (sensorValue1 < 20) {digitalWrite (3, hoge); digitalWrite (12, hoge);} anders als (sensorValue1 > 100) {digitalWrite (3, laag); digitalWrite (12, laag);}}
/////////////////////////////////////////
Nu hier Web Server sectie is
(이제 웹서버 부분입니다)
///////////////////////////////////////////////////////
#include
#include
byte mac [] = {0x98, 0x4F, 0xEE, 0x01, 0x81, 0xF2}; IP-adres ip(192,168,10,20); byte gateway [] = {192, 168, 10, 1}; byte subnet [] = {255, 255, 255, 0};
InString koord = String(35);
Tekenreeks geleid;
int geleid [] = {00, 2, 3, 4, 5, 6, 7, 8,9}; int numofleds = 8; String waarde [] = {"op", "on", "on", "on", "on", "on", "on", "on", "on"}; EthernetServer server(80); Tekenreeksgegevens; void setup {Serial.begin(9600); Ethernet.begin (mac, ip); server.begin(); pin modus voor instellen (int j = 1; j < (numofleds + 1); j ++) {pinMode (led [j], OUTPUT);} Serial.println ("seriële READY"); Serial.println ("Ethernet READY"); Serial.println ("Server READY"); }
void loop {EthernetClient client = server.available(); if(client) {/ / een http-verzoek eindigt met een lege regel Boole current_line_is_blank = waar, terwijl (client.connected()) {if(client.available()) {char c = client.read(); / / als we aan het einde van de lijn hebben gekregen (ontvangen een newline / / karakter) en de regel is leeg, de http-aanvraag is beëindigd, / / zodat we een antwoord sturen kan als (inString.length() < 35) {inString.concat(c);} als (c == '\n' & & current_line_is_blank) {/ / versturen van een standaard http respons header client.println ("HTTP / 1.1 200 OK "); client.println ("Content-Type: text/html"); client.println(); client.println("
"); client.println("
Home Automation-controller
"); voor (int i = 1; ik < (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], hoog); waarde [i] = "off";} anders if(inString.indexOf(Led+"=off") > 0 || inString.indexOf("all=off") > 0) {Serial.println(Led+"on"); digitalWrite (led [i], laag); waarde [i] = "on";} client.println ("
"+ Led +" ");} client.println("
Alle "); client.println("
"); breken; } Als (c == '\n') {/ / we beginnen een nieuwe lijn current_line_is_blank = true;} anders als (c! = '\r') {/ / we hebben gekregen een teken op de huidige regel current_line_is_blank = false;}} } / / de web browser tijd geven om te ontvangen van de gegevens-delay(1); inString = ""; client.stop(); } }
////////////////////////////////////////////////////
Nu is combinatie van twee coderegels
(두가지를 한번에 수행하는 코드 입니다)
////////////////////////////////////////////////////
#include
#include //network NB: pinnen 10, 11, 12 en 13 zijn gereserveerd voor de Ethernet-module. byte mac [] = {0x98, 0x4F, 0xEE, 0x01, 0x81, 0xF2}; IP-adres ip(192,168,10,20); byte gateway [] = {192, 168, 10, 1}; byte subnet [] = {255, 255, 255, 0};
InString koord = String(35);
Tekenreeks geleid;
int geleid [] = {00, 2, 3, 4, 5, 6, 7, 8,9}; Geleide pennen num 0 in arry is niet gebruikte int numofleds = 8; numofleds String waarde [] = {"op", "on", "on", "on", "on", "on", "on", "on", "on"}; opstarten alle geleid uitgeschakeld zijn
EthernetServer server(80); Tekenreeksgegevens; void setup {Serial.begin(9600); Ethernet.begin (mac, ip); server.begin(); pin modus voor instellen (int j = 1; j < (numofleds + 1); j ++) {pinMode (led [j], OUTPUT);} Serial.println ("seriële READY"); Serial.println ("Ethernet READY"); Serial.println ("Server READY"); }
void loop {int sensorValue1 = analogRead(A0); int sensorValue2 = analogRead(A2); als (sensorValue2 < 50) {digitalWrite (2, HIGH); digitalWrite (13, hoge);} anders als (sensorValue2 > 50) {digitalWrite (2, laag); digitalWrite (13, laag);} / / / licht SENSOR / / / als (sensorValue1 < 20) {digitalWrite (3, hoge); digitalWrite (12, hoge);} anders als (sensorValue1 > 100) {digitalWrite (3, laag); digitalWrite (12, laag);} EthernetClient client = server.available(); if(client) {/ / een http-verzoek eindigt met een lege regel Boole current_line_is_blank = waar, terwijl (client.connected()) {if(client.available()) {char c = client.read(); / / als we aan het einde van de lijn hebben gekregen (ontvangen een newline / / karakter) en de regel is leeg, de http-aanvraag is beëindigd, / / zodat we een antwoord sturen kan als (inString.length() < 35) {inString.concat(c);} als (c == '\n' & & current_line_is_blank) {/ / versturen van een standaard http respons header client.println ("HTTP/1.1 200 OK"); client.println ("Content-Type : tekst/html "); client.println(); client.println("
"); client.println("
Home Automation-controller
"); voor (int i = 1; ik < (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], hoog); waarde [i] = "off";} anders if(inString.indexOf(Led+"=off") > 0 || inString.indexOf("all=off") > 0) {Serial.println(Led+"on"); digitalWrite (led [i], laag); waarde [i] = "on";} client.println ("
"+ Led +" ");} client.println("
Alle "); client.println("
"); breken; } Als (c == '\n') {/ / we beginnen een nieuwe lijn current_line_is_blank = true;} anders als (c! = '\r') {/ / we hebben gekregen een teken op de huidige regel current_line_is_blank = false;}} } / / de web browser tijd geven om te ontvangen van de gegevens-delay(1); inString = ""; client.stop(); } }
///////////////////////////////////////////////////////////////////////////////////////////////////////
l Ga voor het uploaden van deze code voor ons
(첨부파일을 확인해주세요)
voorbeeld (온도센서)
#include
DHT11 dht11(2);
VOID Setup
{
Serial.begin(9600);
}
void loop
{
int dwalen;
float temp, humi;
Als ((err=dht11.read (humi, temp)) == 0)
{
Serial.Print("Temperature:");
Serial.Print(temp);
}
anders
{
}
delay(DHT11_RETRY_DELAY);
if(temp > 35.5)
{
pinMode (13, hoge);
}
anders
{
pinMode (13, laag);
}
}