top of page

Programació prototip sostenible

  • Foto del escritor: ClickOn
    ClickOn
  • 20 ene 2020
  • 2 Min. de lectura

Actualizado: 24 ene 2020

En aquest apartat, podrem veure com s'ha programat l'Arduino per tal que funcioni. Simplement, caldrà seguir els següents passos:

1- Descarregar el programa d'Arduino.

2- Enganxar el programa comentat a continuació.

3- Passar el contingut a l'Arduino.

4- Comprovar que l'Arduino funciona correctament.


#include <Servo.h>


// Aquesta constant no varia:

const int buttonPin = 7; // El passador al qual s’uneix el polsador

const int ledPin = 13; // El pin al que està unit el LED


// Variables will change:

int buttonPushCounter = 0; // Comptador per al nombre de polsades de botons

int buttonState = 0; // Estat actual del botó

int lastButtonState = 0; // Estat anterior dels botons


float valor1; //Valor de lectura potenciòmetre

float valor2;

float valor3;

float valor4;

float valor5;

float pos1 = 0; //Posició del servo

float pos2 = 0;

float pos3 = 0;

float pos4 = 0;

float pos5 = 0;


Servo myservo1; //Crea el objete servo

Servo myservo2;


void setup() {

//Inicialitzar el passador del botó com a entrada:

pinMode(buttonPin, INPUT);

//Iniciar un LED com a OUTPUT:

pinMode(ledPin, OUTPUT);

//Iniciar comunicació de sèrie:

Serial.begin(9600);

myservo1.attach(4); //Vincula el servo al pin

myservo2.attach(3);

}



void loop() {

//llegiu el passador d’entrada del polsador:

buttonState = digitalRead(buttonPin);


//Comparar el botó de l'estat amb l'estat previ

if (buttonState != lastButtonState) {

//Si l'estat ha canviat, incrementa el comptador

if (buttonState == HIGH) {

//Si l'estat actual és ALT, el botó passa de desactivat a:

buttonPushCounter++;

Serial.println("on");

Serial.print("number of button pushes: ");

Serial.println(buttonPushCounter);

valor1=1024;

} else {

//Si l'estat actual és BAIX, el botó passa d'activat a desactivat

Serial.println("off");

valor1=0;

}

//Retardem una mica per evitar rebotar

delay(50);

}

//Desa l'estat actual com a últim estat, per a la propera vegada a través del bucle

lastButtonState = buttonState;



//Encén el LED cada quatre botons polsant, comprovant el mòdul del...

//Comptador de botons. La funció mòdul us dóna la resta de...

//Divisió de dos números

if (buttonPushCounter % 4 == 0) {

digitalWrite(ledPin, HIGH);

pos1=180;

} else {

digitalWrite(ledPin, LOW);

pos1=0;

}


//Varia la posició de 0 a 180, amb esperes de 15ms

pos1= (valor1/1024)*180;

pos2= (valor2/1024)*180;

pos3= (valor3/1024)*180;

pos4= (valor4/1024)*180;

pos5= (valor5/1024)*180;


myservo1.write(pos1);

myservo2.write(pos1);


}


 
 
 

コメント


Publicar: Blog2_Post
  • Instagram
  • Facebook
  • Twitter
bottom of page