Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
En este tutuorial les voy a mostrar como conectar um sensor de temperatura e presión BMP180 com display de cristal. Este display en uma pantalla hecha de liquido que muestra información that see the orden of hacer. O sensor de temperatura e pressão muestra la temperatura en la que nos encontramos y en la presión que estamos.
Vamos a ver como hacer la conexión y un código para poder hacer that la temperatura that the sensor detecta y la presión, muestren en el crystal display.
Etapa 1: Etapa 1: Materiais
Os materiais que são necessários para conectar um display e um sensor de temperatura para hacer que la temperatura se refleje no display filho:
Arduino Uno
Protoboard
16 cabos
Potenciômetro
Tela de cristal (QY-1602A)
Conector USB al Arduino
Sensor de temperatura e pressão.
1 Resistencia
Soldador
Estaño
Passo 2: Passo 2: Soldar El LCD Con Los Conectores De Metal. Y El Sensor a Los Cables
O LCD (display de cristal) exibe com conectores conectores aparte para poder conectar este display ao protoboard e mandar uma orden al arduino.
Para esto, cogemos el estaño y el soldador, insertamos los conectores a los huecos del display y se empieza a derretir el estaño al rededor de todos los conectores hasta que queden bien soldados, asegurándonos de que no se vaya a soltar. Cuando veamos una bolita de "metal" al rededor de todos los conectores podemos estar seguros de esto.
Después soldamos el sensor a los cabos para que se puedan conectar al arduino.
Etapa 3: Passo 3: Hacer El Montaje
Sensor:
lado izquierdo- A4.
Mitad izquierda- A5
Mitad derecha- GND
Derecho-5V
Exibição:
Pin12
Pin11
Pin5
Pin4
Pin3
Pin2
Etapa 4: Paso 4: Bibliotecas
Para poder lograr o código necesitamos baja algunas librerías that son:
SFE BMP180.h
Wire.h
LiquidCrystal.h
Incluirlas en el código:
#include #include #include // Você precisará criar um objeto SFE_BMP180, aqui chamado de "pressão": SFE_BMP180 pressure; LiquidCrystal lcd (12, 11, 5, 4, 3, 2); linha de base dupla; // pressão de linha de base
Etapa 5: Paso 5: Código
#include #include #include // Você precisará criar um objeto SFE_BMP180, aqui chamado de "pressão":
Pressão SFE_BMP180;
LiquidCrystal lcd (12, 11, 5, 4, 3, 2);
linha de base dupla; // pressão de linha de base
void setup () {
Serial.begin (9600);
Serial.println ("REBOOT");
lcd.begin (16, 2);
// Inicialize o sensor (é importante obter os valores de calibração armazenados no dispositivo).
if (pressure.begin ())
lcd.println ("sucesso de inicialização de BMP180");
outro {
Serial.println ("Falha de inicialização BMP180 (desconectado?) N / n");
enquanto (1); // Faça uma pausa para sempre. }
// Obtenha a pressão de linha de base:
linha de base = getPressure ();
lcd.setCursor (0, 1);
Serial.print ("pressão de linha de base:");
Serial.print (linha de base);
Serial.println ("mb"); }
laço vazio () {duplo a, P;
// Obtenha uma nova leitura de pressão:
P = obter pressão ();
// Mostra a diferença de altitude relativa entre
// a nova leitura e a leitura de linha de base:
a = pressure.altitude (P, linha de base);
lcd.print ("altitude relativa:"); if (a> = 0,0) lcd.print ("");
// adiciona um espaço para números positivos
lcd.print (a, 1);
lcd.print ("metros");
if (a> = 0,0) Serial.print ("");
// adiciona um espaço para números positivos lcd.print (a * 3.28084, 0);
lcd.println ("pés");
atraso (500); }
double getPressure () {
status char; duplo T, P, p0, a;
// Você deve primeiro obter uma medição de temperatura para realizar uma leitura de pressão.
// Iniciar uma medição de temperatura:
// Se a solicitação for bem-sucedida, o número de ms a esperar é retornado.
// Se a solicitação não for bem-sucedida, 0 será retornado.
status = pressure.startTemperature ();
if (status! = 0) {
// Aguarde a conclusão da medição:
atraso (status);
// Recupere a medição de temperatura concluída:
// Observe que a medição é armazenada na variável T.
// Use '& T' para fornecer o endereço de T para a função.
// A função retorna 1 se for bem-sucedida, 0 se falhar.
status = pressure.getTemperature (T);
if (status! = 0) {
// Iniciar uma medição de pressão:
// O parâmetro é a configuração de sobreamostragem, de 0 a 3 (resolução mais alta, espera mais longa).
// Se a solicitação for bem-sucedida, o número de ms a esperar é retornado.
// Se a solicitação não for bem-sucedida, 0 será retornado.
status = pressure.startPressure (3);
if (status! = 0) {
// Aguarde a conclusão da medição:
atraso (status);
// Recupere a medição de pressão concluída:
// Observe que a medição é armazenada na variável P.
// Use '& P' para fornecer o endereço de P.
// Observe também que a função requer a medição de temperatura anterior (T).
// (Se a temperatura estiver estável, você pode fazer uma medição de temperatura para várias medições de pressão.) // A função retorna 1 se for bem-sucedida, 0 se falhar.
status = pressure.getPressure (P, T);
if (status! = 0) {
retorno (P);
} else lcd.println ("erro ao recuperar medição de pressão / n");
} else lcd.println ("erro ao iniciar medição de pressão / n");
} else lcd.println ("erro ao recuperar medição de temperatura / n");
} else lcd.println ("erro ao iniciar medição de temperatura / n");
}
Etapa 6: Paso 6: Explicación De Código
Primero, incluimos las librerías que vamos a descargar.
Segundo, nombramos todos los pinheiros a los que se conecta ao LCD (display de cristal).
Tercero, ponemos la presión de base.
Cuarto, se pone el void setup en la que estabe la velocidad de la obediencia de esta orden en el display de cristal.
Quinto, se pone el void loop el cual estabelece que es lo que el código manda a hacer. Neste caso, é mandar uma ordem do arduino al computador para que a temperatura e a pressão que muestra o sensor BMP180 e que se veja na tela cresta.
Etapa 7: Paso 7: verificar
Ya conectado ao arduino no computador para aseguras de tener e ao arduino conectado ao teclado como um comando. Después subes el código y revisa el monitor serial para ver si la temperatura y la presión salen en este. Después ya te asseguras de que te aparezca la misma información en el display de cristal.