Arduino
Arduino
//////////////////////////////////////////////////////////////////
void setup()
{
pinMode(13, OUTPUT); // OUTPUT=saída | IMPUT=entrada Usará a
pino 13 como saída
}
void loop()
{
digitalWrite(13, HIGH); // HIGH=ligado(5v) | LOW=desligada(0v).
O pino digital 13 estará ligado
}
//////////////////////////////////////////////////////////////////
1. Tensão(v)
2. Corrente(A)
3. Resistência(omh)
void loop()
{
digitalWrite(led, HIGH);
delay(2000);
digitalWrite(led, LOW);
delay(2000);
}
Veja o projeto:
PARA ACENDER MAIS DE UM LEDE:
void setup()
{
pinMode(led_verde, OUTPUT);
pinMode(led_amarelo, OUTPUT);
pinMode(led_vermelho, OUTPUT);
}
void loop()
{
verde(7);
amarelo(3);
vermelho(7);
}
//////////////////////////////////////////////////////////////////
PARA FAZER UM LED AUMENTAR OU DIMINUIR GRADUALMENTE:
//////////////////////////////////////////////////////////////////
#define led 3
#define maximo 16 // Como possui 8 bits, pode ser até 255
#define minimo 0 // O 0 é o mínimo
#define tmp 100 // tmp será 100 milésimos
void setup()
{
pinMode(led, OUTPUT);
}
void loop()
{
for(int i=minimo;i<maximo;i++) // Criou-se a variável i que será igual
a minimo e se i for menor que maximo, sempre aumentar_o_i(i++)
{
analogWrite(led, i); // analog para ser em modo analógico
delay(tmp);
}
for(int i=maximo;i>minimo;i--) // Criou-se a variável i que será igual
a maximo e se i for maior que minimo, sempre diminuir_o_i(i--)
{
analogWrite(led, i);
delay(tmp);
}
}
//////////////////////////////////////////////////////////////////
PUSH-BUTTON
Só terá sua eficácia se conectar o fio em forma de diagonal ou em
formato de linha horizontal, pois se conectado em formato de linha
vertical, será como se não tivesse um push-button e se.
VEJA A IMAGEM ABAIXO:
PARA ACENDER UM LEDE USANDO O PUSHBUTTON
//////////////////////////////////////////////////////////////////
#define led 4
#define btn 3 // A porta em que o nosso botão se encontra.
void setup()
{
pinMode(led, OUTPUT);
pinMode(btn, INPUT);
}
void loop()
{
if(digitalRead(btn)==HIGH) // Lerá o btn e se(if) estiver ligado(==)
{
digitalWrite(led, HIGH); // O led ligará
}
else // Caso contrário(else)
{
digitalWrite(led, LOW); // O led desligará
}
}
//////////////////////////////////////////////////////////////////
LED RGB
//////////////////////////////////////////////////////////////////
#define ledG 2
#define ledB 3
#define ledR 4
#define botao 5
#define maximo 3 // Será o máximo de cores
int btnclicado=0;
int btnliberado=0;
int ciclo=0; // Para definir o ciclo da cor
void setup()
{
pinMode(ledR, OUTPUT);
pinMode(ledG, OUTPUT);
pinMode(ledB, OUTPUT);
pinMode(botao, INPUT);
}
void loop()
{
verificaBtn();
}
//////////////////////////////////////////////////////////////////
CLASSES(class) NO C++
Ex.:
#define ledR 2
#define ledG 4
#define ledB 3
#define botao 7
#define botao 8
class Cor{
public:
int pinoR,pinoG,pinoB,ciclo,maximo;
Cor(int pr,int pg,int pb):pinoR(pr),pinoG(pg),pinoB(pb){ //
Lista de inicialização
ciclo=0;
maximo=3;
}
void trocaLed(){
if(ciclo==0){
corLed(1,0,0);
}else if(ciclo==1){
corLed(0,1,0);
}else if(ciclo==2){
corLed(0,0,1);
}
ciclo++;
if(ciclo>maximo-1){
ciclo=0;
}
}
private:
void corLed(int r,int g,int b){
digitalWrite(pinoR, r);
digitalWrite(pinoG, g);
digitalWrite(pinoB, b);
};
Btn btn2(botao2);
Cor cor(ledR,ledG,ledB);
void setup(){
digitalMode(botao, INPUT);
digitalMode(ledR, OUTPUT);
digitalMode(ledG, OUTPUT);
digitalMode(ledB, OUTPUT);
}
void loop(){
if(btn.press()){
cor.trocaLed();
}
}
// Objetos são instâncias das classes
DETECTOR DE INCÊNDIO NO TINKERCAD
Piezo
Sensor de gás
Geralmente é vendido o módulo
do sensor de gás
PORTA ANALÓGICA NO ARDUINO:
• Todas as portas analógicas do arduino são de entrada;
Variação = Volts
•
• As portas PWM tem 256 variações, e usa consome (0v a 5v);
• As portas Digital 0 ou 1, e usa (0v ou 5v);
• Analógica 0 a 1023 (0v a 5v);
• Se liga neste projeto:
•
• O “círculo” azul na placa de ensaio é um potenciômetro, o
pino do meio é o Limpador, que é conectado em uma das portas
analógicas do arduino, os pinos do meios são os terminais que
você pode conectar o GND(negativo) ou 5v(positivo), você
alterar a ordem que mostra na imagem, porém em vez de ir de
0 a 1023, ela irá de 1023 a 0;
• Código:
•
•
//////////////////////////////////////////////////////////////////
void setup()
{
pinMode(an5, INPUT);
Serial.begin(9600); // Objeto Serial método begin.
// 9600 será a velocidade que ele irá se comunicar com o monitor
serial do arduino
// Ou seja será a nossa saída
}
void loop()
{
Serial.println(analogRead(an5));
// Chamamos o objeto Serial com o método println
// println vai imprimir a leitura daporta analogica A0 no
console
delay(100);
}
//////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////
#define potenc A0
#define led 3
void setup(){
pinMode(potenc,INPUT);
pinMode(led,OUTPUT);
}
void loop(){
analogWrite(led, map(analogRead(potenc),0,1023,0,255));
delay(100); // O delay é a gosto
}
//////////////////////////////////////////////////////////////////
int valor;
void setup(){
for(int i=0;i<6;i++){ // 6 é o número de leds começando do 0
pinMode(leds[i],OUTPUT);
}
pinMode(potenc,INPUT);
void loop(){
valor=analogRead(potenc);
acender(map(valor,0,1023,0,6)); // O número máximo de saída foi 6,
pois existem 6 leds
}
// Para acender e apagar os ledes de de um modo “degradê”, é só
colocar todos os ledes na porta PWM e alterar no código “digital”
para “analog”
//////////////////////////////////////////////////////////////////
SENSOR LDR:
É uma sensor que depende de luz, pois dependendo da situação da
luz, ele pode fazer, ou não, uma determinada função. Ex. no dia a
dia: Os postes de luz que acendem quando está de noite, pois eles
têm um sensor.
Código
//////////////////////////////////////////////////////////////////
#define ldr A0
#define led 2
int vldr=0;
void setup()
{
pinMode(led, OUTPUT);
pinMode(ldr,INPUT);
Serial.begin(9600); // Chame o ele para checar a intensidade da luz
}
void loop()
{
vldr=analogRead(ldr);
if(vldr>900){ // Se o resultado não foi o esperado, veja no painel o valor
que está dando, para assim, poder regular
digitalWrite(led,LOW);
}else{
digitalWrite(led,HIGH);
}
Serial.println(vldr);
delay(100);
}
//////////////////////////////////////////////////////////////////
O projeto físico ficará assim:
VAMOS ENSINAR COM ENVIAR QUALQUER CÓDIGO (PROGRAMA) PARA O
ARDUINO.
Esta é a fórmula: