Vous êtes sur la page 1sur 3

Atividades com o Arduíno

Pinos do Arduíno MEGA

Entrada/saída
Canais da serial TX/RX e I2C digital

Saída PWM

Alimentação
com fonte
externa Pinos SPI Entrada analógica

1. Aciona Led Interno (pino 13)


int ledPin = 13;

void setup() {
pinMode(ledPin, OUTPUT);
}

void loop() {
digitalWrite(ledPin, HIGH);
delay(500);
digitalWrite(ledPin, LOW);
delay(500);
}

Obs.: Faça alterações no tempo de atraso (delay)

2. Rotaciona 8 Leds Externos


const int LEDCount = 8;
int LEDPins[] = { 2, 3, 4, 5, 6, 7, 8, 9 };

void setup() {
for (int thisLED = 0; thisLED < LEDCount; thisLED++) {
pinMode(LEDPins[thisLED], OUTPUT);
}
}

void loop() {

for (int thisLED = 0; thisLED < LEDCount; thisLED++) {


digitalWrite(LEDPins[thisLED], HIGH);
delay(1000);
digitalWrite(LEDPins[thisLED], LOW);
}
}

Obs.: Faça alterações no programa para:


(a) Rotacionar os Leds para a esquerda;
(b) Rotacionar os Leds para esquerda direita;
(c) Acender, um a um, todos os Leds e, em seguida, apagar no sentido inverso;
(d) Acender, um a um, todos os Leds e, em seguida, apagar todos ao mesmo tempo.
3. Sensor Ultrassônico
Monitore, com o osciloscópio, os sinais de Trigger e Echo do sensor ultrasônico.

Esquemático

Pino 9: trigger
Pino 8: Echo

long distancia;
long tiempo;

void setup(){
Serial.begin(9600);
pinMode(9, OUTPUT); /* pino 9 como saída para o trigger do sensor */
pinMode(8, INPUT); /*pino 8 como entrada: tempo de retorno do ultrassom */
}

void loop(){
digitalWrite(9,LOW); /* Pulso baixo para estabilização do sensor */
delayMicroseconds(5);
digitalWrite(9, HIGH); /* envio do pulso ultrassônico */
delayMicroseconds(10);

tiempo=pulseIn(8, HIGH); /* mede o tempo entre o envio e a volta do pulso */


distancia= int(0.017*tiempo); /*fórmula para calcular la distancia obteniendo un valor entero*/

/* Monitoramento do sinal através do monitor serial */

Serial.print("Distancia: ");
Serial.print(distancia);
Serial.print(" ");
Serial.println(" cm");
delay(1000);
}
Obs.: Mostre no monitor os valores de distância detectados;
Faça alterações no programa para ligar o Led do pino 13 para distâncias menores que 20
cm e mantê-lo apagado para distâncias maiores;
Faça alterações no programa para ligar o Led do pino 13 para distâncias menores que 20
cm e mantê-lo apagado para distâncias maiores; e fazer o Led piscar com tempo de 500 ms
para distâncias menores que 10 cm.
4. Servo
Monitores os sinais do potenciômetro e de controle, usando um osciloscópio.

#include <Servo.h>

Servo ServoMotor;

//Pino do potenciômetro
int pino_pot = A5;

//Pino de controle do motor


int pino_motor = 6;
int valor;

void setup()
{
Serial.begin(9600);
ServoMotor.attach(pino_motor);
Serial.println("Aguardando 5 segundos....");
delay(5000);
}

void loop()
{
//Le o valor do potenciometro
valor = analogRead(pino_pot);

//Converte o valor para uma faixa entre 0 e 179


valor = map(valor, 0, 1023, 0, 179);

//Mostra o valor no serial monitor


Serial.print("Potenciometro: ");
Serial.println(valor);

//Envia o valor para o motor


ServoMotor.write(valor);
}

Vous aimerez peut-être aussi