Programem Arduino 01. Sortides Digitals

27
C Crespo. Tecno-Lògics Bellvitge PROGRAMEM SORTIDES DIGITALS https :// sites . google . com / site / arduitecno /R01

Transcript of Programem Arduino 01. Sortides Digitals

Page 3: Programem Arduino 01. Sortides Digitals
Page 4: Programem Arduino 01. Sortides Digitals

/*Control de l'encesa d'un LED*/ 

void setup()     // CONFIGUREM ELS PINS (quins, com){     pinMode(13,OUTPUT);      // declaració del pin13 com a sortida }

void loop()      // DEFINIM L'EXECUCIÓ (accions a realitzar){     digitalWrite(13,HIGH);     // envia 5V al pin13 (LED encés)    delay(1000);                    // durant 1000 milisegons    digitalWrite(13,LOW);      // envia 0V al pin13 (LED apagat)    delay(1000);                    // durant 1000 milisegons}

Page 5: Programem Arduino 01. Sortides Digitals

/*Control de l'encesa d'un LED*/ 

void setup()     // CONFIGUREM ELS PINS (quins, com){     pinMode(13,OUTPUT);      // declaració del pin13 com a sortida }

void loop()      // DEFINIM L'EXECUCIÓ (accions a realitzar){     digitalWrite(13,HIGH);     // envia 5V al pin13 (LED encés)    delay(1000);                    // durant 1000 milisegons    digitalWrite(13,LOW);      // envia 0V al pin13 (LED apagat)    delay(1000);                    // durant 1000 milisegons}

Page 6: Programem Arduino 01. Sortides Digitals

/*Control de l'encesa d'un LED*/ 

void setup()     // CONFIGUREM ELS PINS{     pinMode(13,OUTPUT);      // declaració del pin13 com a sortida }

void loop()      // DEFINIM L'EXECUCIÓ (loop: bucle infinit){     digitalWrite(13,HIGH);     // envia 5V al pin13 (LED encés)    delay(1000);                    // durant 1000 milisegons    digitalWrite(13,LOW);      // envia 0V al pin13 (LED apagat)    delay(1000);                    // durant 1000 milisegons}

Page 7: Programem Arduino 01. Sortides Digitals

/*Control de l'encesa d'un LED*/ 

void setup()     // CONFIGUREM ELS PINS{     pinMode(13,OUTPUT);      // declaració del pin13 com a sortida }

void loop()      // DEFINIM L'EXECUCIÓ (loop: bucle infinit){     digitalWrite(13,HIGH);     // envia 5V al pin13 (LED encés)    delay(1000);                    // durant 1000 milisegons    digitalWrite(13,LOW);      // envia 0V al pin13 (LED apagat)    delay(1000);                    // durant 1000 milisegons}

Page 8: Programem Arduino 01. Sortides Digitals

/*Control de l'encesa d'un LED*/ 

void setup()     // CONFIGUREM ELS PINS{     pinMode(13,OUTPUT);      // declaració del pin13 com a sortida }

void loop()      // DEFINIM L'EXECUCIÓ (loop: bucle infinit){     digitalWrite(13,HIGH);     // envia 5V al pin13 (LED encés)    delay(1000);                    // durant 1000 milisegons    digitalWrite(13,LOW);      // envia 0V al pin13 (LED apagat)    delay(1000);                    // durant 1000 milisegons}

Page 9: Programem Arduino 01. Sortides Digitals

/*Control de l'encesa d'un LED*/ 

void setup()     // CONFIGUREM ELS PINS{     pinMode(13,OUTPUT);      // declaració del pin13 com a sortida }

void loop()      // DEFINIM L'EXECUCIÓ (loop: bucle infinit){     digitalWrite(13,HIGH);     // envia 5V al pin13 (LED encés)    delay(1000);                    // durant 1000 milisegons    digitalWrite(13,LOW);      // envia 0V al pin13 (LED apagat)    delay(1000);                    // durant 1000 milisegons}

Page 11: Programem Arduino 01. Sortides Digitals
Page 12: Programem Arduino 01. Sortides Digitals

/*SOS luminós amb Arduino*/

// DEFINIM LES VARIABLES (nom i valor)int EncesaCurta=100;     // durada del punt (milisegons)int EncesaLlarga=200; // durada de la ratlla  int PausaLletra=400;int PausaMissatge=500;

int LED=10;      int n=0;           

void setup()   // CONFIGUREM ELS PINS{    pinMode(LED,OUTPUT);     }void loop()     // DEFINIM L'EXECUCIÓ dins d'un bucle infinit{    // S    for(n=0;n<3;n++)     //     { //         digitalWrite(LED,HIGH);        delay(EncesaCurta);         digitalWrite(LED,LOW);         delay(EncesaCurta); }

Page 13: Programem Arduino 01. Sortides Digitals

/*SOS luminós amb Arduino*/

// DEFINIM LES VARIABLES (nom i valor)int EncesaCurta=100;     // durada del punt (milisegons)int EncesaLlarga=200; // durada de la ratlla  int PausaLletra=400;int PausaMissatge=500;

int LED=10;      int n=0;           

void setup()   // CONFIGUREM ELS PINS{    pinMode(LED,OUTPUT);     }void loop()     // DEFINIM L'EXECUCIÓ dins d'un bucle infinit{    // S    for(n=0;n<3;n++)     //     { //         digitalWrite(LED,HIGH);        delay(EncesaCurta);         digitalWrite(LED,LOW);         delay(EncesaCurta); }

Page 14: Programem Arduino 01. Sortides Digitals

/*SOS luminós amb Arduino*/

// DEFINIM LES VARIABLES (nom i valor)int EncesaCurta=100;     // durada del punt (milisegons)int EncesaLlarga=200; // durada de la ratlla  int PausaLletra=400;int PausaMissatge=500;

int LED=10;      int n=0;           

void setup()   // CONFIGUREM ELS PINS{    pinMode(LED,OUTPUT);     }void loop()     // DEFINIM L'EXECUCIÓ dins d'un bucle infinit{    // S    for(n=0;n<3;n++)     //     { //         digitalWrite(LED,HIGH);        delay(EncesaCurta);         digitalWrite(LED,LOW);         delay(EncesaCurta); }

 

// definició del pin com a variable// variable necessària per a fer la iteració (repetició d'accions)

Page 15: Programem Arduino 01. Sortides Digitals

/*SOS luminós amb Arduino*/

// DEFINIM LES VARIABLES (nom i valor)int EncesaCurta=100;     // durada del punt (milisegons)int EncesaLlarga=200; // durada de la ratlla  int PausaLletra=400;int PausaMissatge=500;

int LED=10;      int n=0;           

void setup()   // CONFIGUREM ELS PINS{    pinMode(LED,OUTPUT);     }void loop()     // DEFINIM L'EXECUCIÓ dins d'un bucle infinit{    // S    for(n=0;n<3;n++)     //     { //         digitalWrite(LED,HIGH);        delay(EncesaCurta);         digitalWrite(LED,LOW);         delay(EncesaCurta); }

 

// definició del pin com a variable// variable necessària per a fer la iteració (repetició d'accions)

 {  // declaració del pin definit com a sortida digital

Page 16: Programem Arduino 01. Sortides Digitals

void loop()     // DEFINIM L'EXECUCIÓ dins d'un bucle infinit{    for(n=0;n<3;n++)         {         digitalWrite(LED,HIGH);        delay(EncesaCurta);         digitalWrite(LED,LOW);         delay(EncesaCurta);     }    delay(PausaLletra);         for(n=0;n<3;n++)    {         digitalWrite(LED,HIGH);        delay(EncesaLlarga);        digitalWrite(LED,LOW);        delay(EncesaLlarga);    }    delay(PausaLletra);    for(n=0;n<3;n++)    {        digitalWrite(LED, HIGH);        delay(EncesaCurta);        digitalWrite(LED,LOW);         delay(EncesaCurta);    }    delay(PausaMissatge); }

// repetició 3 cops de les instruccions associades (entre {}) ...// ... des que n=0 fins que n<3, sumant 1 a cada iteració (++)

S: 3 punts

O: 3 ratlles

S: 3 punts

Page 17: Programem Arduino 01. Sortides Digitals

void loop()     // DEFINIM L'EXECUCIÓ dins d'un bucle infinit{    for(n=0;n<3;n++)         {         digitalWrite(LED,HIGH);        delay(EncesaCurta);         digitalWrite(LED,LOW);         delay(EncesaCurta);     }    delay(PausaLletra);         for(n=0;n<3;n++)    {         digitalWrite(LED,HIGH);        delay(EncesaLlarga);        digitalWrite(LED,LOW);        delay(EncesaLlarga);    }    delay(PausaLletra);    for(n=0;n<3;n++)    {        digitalWrite(LED, HIGH);        delay(EncesaCurta);        digitalWrite(LED,LOW);         delay(EncesaCurta);    }    delay(PausaMissatge); }

S: 3 punts

O: 3 ratlles

S: 3 punts

Page 18: Programem Arduino 01. Sortides Digitals

void loop()     // DEFINIM L'EXECUCIÓ dins d'un bucle infinit{    for(n=0;n<3;n++)         {         digitalWrite(LED,HIGH);        delay(EncesaCurta);         digitalWrite(LED,LOW);         delay(EncesaCurta);     }    delay(PausaLletra); // temps d’espera entre lletres         for(n=0;n<3;n++)    {         digitalWrite(LED,HIGH);        delay(EncesaLlarga);        digitalWrite(LED,LOW);        delay(EncesaLlarga);    }     delay(PausaLletra); // temps d’espera entre lletres     for(n=0;n<3;n++)    {        digitalWrite(LED, HIGH);        delay(EncesaCurta);        digitalWrite(LED,LOW);         delay(EncesaCurta);    }    delay(PausaMissatge); // temps d’espera més llarg }

Page 20: Programem Arduino 01. Sortides Digitals
Page 21: Programem Arduino 01. Sortides Digitals

/*SOS sonor amb Arduino*/

// DEFINIM LES VARIABLES (nom i valor)int EncesaCurta=100;     int EncesaLlarga=200; int PausaLletra=400;int PausaMissatge=500;int pinSo=11;    int n=0;                

void setup() {   // CONFIGUREM ELS PINS (quins, com)    pinMode(pinSo,OUTPUT);     }

void Punt() {     // DEFINIM LES ACCIONS DEL PUNT    digitalWrite(pinSo,HIGH);    delay(EncesaCurta);    digitalWrite(pinSo,LOW);    delay(EncesaCurta);}

void Ratlla() {   // DEFINIM LES ACCIONS DE LA RATLLA    digitalWrite(pinSo,HIGH);    delay(EncesaLlarga);    digitalWrite(pinSo,LOW);    delay(EncesaLlarga);}

void loop() {     // DEFINIM L'EXECUCIÓ    for(n=0;n<3;n++)     //     {        Punt(); }

Page 22: Programem Arduino 01. Sortides Digitals

/*SOS sonor amb Arduino*/

// DEFINIM LES VARIABLES (nom i valor)int EncesaCurta=100;     int EncesaLlarga=200; int PausaLletra=400;int PausaMissatge=500;int pinSo=11;    int n=0;                

void setup() {   // CONFIGUREM ELS PINS (quins, com)    pinMode(pinSo,OUTPUT);     }

void Punt() {     // DEFINIM LES ACCIONS DEL PUNT    digitalWrite(pinSo,HIGH);    delay(EncesaCurta);    digitalWrite(pinSo,LOW);    delay(EncesaCurta);}

void Ratlla() {   // DEFINIM LES ACCIONS DE LA RATLLA    digitalWrite(pinSo,HIGH);    delay(EncesaLlarga);    digitalWrite(pinSo,LOW);    delay(EncesaLlarga);}

void loop() {     // DEFINIM L'EXECUCIÓ    for(n=0;n<3;n++)     // S: repetició 3 cops del     {        Punt(); }

Page 23: Programem Arduino 01. Sortides Digitals

/*SOS sonor amb Arduino*/

// DEFINIM LES VARIABLES (nom i valor)int EncesaCurta=100;     int EncesaLlarga=200; int PausaLletra=400;int PausaMissatge=500;int pinSo=11;    int n=0;                

void setup() {   // CONFIGUREM ELS PINS (quins, com)    pinMode(pinSo,OUTPUT);     }

void Punt() {     // DEFINIM LES ACCIONS DEL PUNT    digitalWrite(pinSo,HIGH);    delay(EncesaCurta);    digitalWrite(pinSo,LOW);    delay(EncesaCurta);}

void Ratlla() {   // DEFINIM LES ACCIONS DE LA RATLLA    digitalWrite(pinSo,HIGH);    delay(EncesaLlarga);    digitalWrite(pinSo,LOW);    delay(EncesaLlarga);}

void loop() {     // DEFINIM L'EXECUCIÓ    for(n=0;n<3;n++)         {        Punt(); }

Page 24: Programem Arduino 01. Sortides Digitals

void loop() // DEFINIM L'EXECUCIÓ {         for(n=0;n<3;n++) // S: repetició 3 cops del procediment Punt         {        Punt();     }    delay(PausaLletra);     for(n=0;n<3;n++)      // O: repetició 3 cops del procediment Ratlla    {         Ratlla();    }    delay(PausaLletra);      for(n=0;n<3;n++)     // S: repetició 3 cops del procediment Punt    {        Punt();    }    delay(PausaMissatge); }

Page 25: Programem Arduino 01. Sortides Digitals

void loop() // DEFINIM L'EXECUCIÓ {         for(n=0;n<3;n++) // S: repetició 3 cops del procediment Punt         {        Punt();     }    delay(PausaLletra);     for(n=0;n<3;n++)      // O: repetició 3 cops del procediment Ratlla    {         Ratlla();    }    delay(PausaLletra);      for(n=0;n<3;n++)     // S: repetició 3 cops del procediment Punt    {        Punt();    }    delay(PausaMissatge); }

Page 26: Programem Arduino 01. Sortides Digitals

void setup() { }Configuració dels pins a utilitzar

void loop() { }Definició de les accions dins d’un bucle infinit

pinMode( , );Declaració de pin digital

digitalWrite( , );Estat de la sortida

delay( );Espera

ESTRUCTURA

CONFIGURACIÓ

CONTROL for( ; ; ) { }

FUNCIONS

REPASEM

Page 27: Programem Arduino 01. Sortides Digitals

void setup() { }Configuració dels pins a utilitzar

void loop() { }Definició de les accions dins d’un bucle infinit

pinMode(pin,mode);Declaració de pin digital

digitalWrite(pin,estat);Estat de la sortida

delay(temps en milisegons);Espera

ESTRUCTURA

CONFIGURACIÓ

FUNCIONS

OUTPUT (sortida)

INPUT (entrada)

HIGH (alt: 5V)

LOW (baix: 0V)

http://arduino.cc/es/Reference/HomePage

CONTROL for(n=0;n<x;n++) { } repetició x cops de les instruccions entre { }n definit com a variable (valor inicial: 0)

des que n=0 fins que n=xsumant 1 a cada iteració (0, 1, 2, ... X-1)