Sensor Ultrassônico com LED de 7 pontos
Publicado por victor (última atualização em 03/12/2018)
[ Hits: 3.289 ]
Homepage: kkk
Programa que, utilizando o sensor ultrassônico, percebe quando algum objeto está próximo em 3 diferentes distâncias, acende três específicos leds; e também, em 8 diferentes distâncias, escreve números referentes à distância no momento utilizando o led de 7 pontos.
#include<Ultrassonic.h> Ultrassonic ultrassonic(8,9); long microsec = 0 float distanciaCM = 0 void setup() { Serial.begin(9600); //Definindo os pontos do led de 7 pntos pinMode(0,OUTPUT); pinMode(1,OUTPUT); pinMode(2,OUTPUT); pinMode(3,OUTPUT); pinMode(4,OUTPUT); pinMode(5,OUTPUT); pinMode(6,OUTPUT); pinMode(7,OUTPUT); //Definindo os leds comuns pinMode(13,OUTPUT); pinMode(12,OUTPUT); pinMode(11,OUTPUT); pinMode(10,OUTPUT); pinMode(9,OUTPUT); } void loop() { microsec = ultrassonic.timing(); distanciaCM = ultrassonic.convert(microsec, Ultrassonic::CM); ledDistancia(); Serial.print(distanciaCM); seria.println("cm"); delay(1000); } void ledDistancia() { digitalWrite(13,LOW); digitalWrite(12,LOW); digitalWrite(11,LOW); if(distanciaCM >= 40) { //Quando a distancia for maior que 40, acender led da porta 13 digitalWrite(13,HIGH); } if(distanciaCM < 40 and distanciaCM >=30) { //Quando a distancia estiver entre 40 e 30, acender o led da porta 12 digitalWrite(12,HIGH); } if(distanciaCM <30 and distanciaCM >=0) { //Quando a distancia estiver entre 30 e 0, acender o led da porta 11 digitalWrite(11,HIGH); } //Agora vamos para o led de 7 pntos if(distanciaCM < 10) { //Quando a distancia for menor que 10, escrever 0 digitalWrite(a,HIGH); digitalWrite(b,HIGH); digitalWrite(c,HIGH); digitalWrite(d,HIGH); digitalWrite(e,HIGH); digitalWrite(f,HIGH); digitalWrite(g,LOW); digitalWrite(h,LOW); //H é um ponto } if(distanciaCM > 10 and distanciaCM <= 20) { //Quando a distancia estiver entre 10 e 20, escrever 1 digitalWrite(a,LOW); digitalWrite(b,HIGH); digitalWrite(c,HIGH); digitalWrite(d,LOW); digitalWrite(e,LOW); digitalWrite(f,LOW); digitalWrite(g,LOW); digitalWrite(h,LOW); } if (distanciaCM > 20 and distanciaCM <=30) { //Quando a distancia estiver entre 20 e 30, escrever 2 digitalWrite(a,HIGH); digitalWrite(b,HIGH); digitalWrite(c,LOW); digitalWrite(d,HIGH); digitalWrite(e,HIGH); digitalWrite(f,LOW); digitalWrite(g,HIGH); digitalWrite(h,LOW); } if (distanciaCM > 30 and distanciaCM <= 40) { //Quando a distancia estiver entre 30 e 40, escrever 3 digitalWrite(a,HIGH); digitalWrite(b,HIGH); digitalWrite(c,HIGH); digitalWrite(d,HIGH); digitalWrite(e,LOW); digitalWrite(f,LOW); digitalWrite(g,HIGH); digitalWrite(h,LOW); } if (distanciaCM > 40 and distanciaCM <= 50) { //Quando a distancia estiver entre 40 e 50, escrever 4 digitalWrite(a,LOW); digitalWrite(b,HIGH); digitalWrite(c,HIGH); digitalWrite(d,LOW); digitalWrite(e,LOW); digitalWrite(f,HIGH); digitalWrite(g,HIGH); digitalWrite(h,LOW); } if (distanciaCM >= 50) { //Quando a distancia for maior que 50, acender o ponto h digitalWrite(a,LOW); digitalWrite(b,LOW); digitalWrite(c,LOW); digitalWrite(d,LOW); digitalWrite(e,LOW); digitalWrite(f,LOW); digitalWrite(g,LOW); digitalWrite(h,HIGH); } }
Substituindo o comando delay() por uma pausa real
Substituindo o comando delay() por uma pausa real
Obtendo o valor máximo e mínimo de um array em Arduino
Cálculo de número de anos baseado em data
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
estou com chromebook legalzinho. (2)
Estou com sede em aprender sobre o nosso querido Linux. (1)
big linux sem audio como resolver (2)
Como faz para dar um update-grub por shell script [RESOLVIDO] (3)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta