Início›Projetos›Estação Meteorológica
⬤ Projeto Integrado

🌤️ Estação Meteorológica

⏱️ 45 min🔌 LM35 · Humidade · TEMT6000 · Display 1602
ℹ️
Monitoriza temperatura (LM35 em P0), humidade do solo (P1), luz (TEMT6000 em P2) e apresenta no display 1602. Alerta na matriz quando algum valor excede os limiares.

Conteúdo

Hardware necessário

Liga o LM35 em P0, sensor de humidade em P1, TEMT6000 em P2. Display 1602 nos pinos I²C (P19/P20).

estacao_hardware.blocks
// Pinagem da Estação Meteorológica
// LM35       → P0 (analógico)
// Humidade   → P1 (analógico)
// TEMT6000   → P2 (analógico)
// LCD 1602   → P19(SCL) / P20(SDA)

Código completo

Loop principal que lê os 3 sensores e actualiza o display.

estacao_completo.blocks
lcd.LCDinit(39)
basic.forever(function() {
    // LM35 → temperatura
    let mv = pins.analogReadPin(AnalogPin.P0) * 3300 / 1023
    let t = Math.round(mv / 10)
    // Humidade do solo
    let h = Math.map(pins.analogReadPin(AnalogPin.P1), 0, 1023, 100, 0)
    // Luminosidade TEMT6000
    let lux = Math.map(pins.analogReadPin(AnalogPin.P2), 0, 1023, 0, 100)
    // Mostrar no LCD (linha 0: temp + hum, linha 1: luz + alerta)
    lcd.showString("T:"+t+"C H:"+h+"%  ", 0, 0)
    lcd.showString("Lux:"+lux+"%      ", 0, 1)
    // Alertas na matriz
    if (t > 30) basic.showIcon(IconNames.Sad)
    else basic.clearScreen()
    basic.pause(1500)
})

🏆 Desafios

PR.FT4_10 · Kit A 37 · Início