Untitled

                Never    
import machine
from time import sleep

# NTC termistörüne bağlı pin
ntc_pin = 4  # Bu pin numarasını kendi bağlantınıza göre ayarlayın

# LCD ekranına bağlı pinler
lcd_sda = 2  # Bu pin numarasını kendi bağlantınıza göre ayarlayın
lcd_scl = 3  # Bu pin numarasını kendi bağlantınıza göre ayarlayın

# NTC termistörünü okumak için kullanılan direnç değeri
ntc_resistor = 10_000  # Örnek değer, gerçek direnç değerini kullanın

# NTC termistörü okuma işlemleri için kullanılan ADC (Analog-Digital Converter)
adc = machine.ADC(machine.Pin(ntc_pin))

# LCD ekranını başlat
i2c = machine.I2C(0, sda=machine.Pin(lcd_sda), scl=machine.Pin(lcd_scl), freq=400000)
lcd_addr = 0x27  # LCD ekranının I2C adresi

def read_ntc_temperature():
    # NTC termistöründen okuma yap
    ntc_value = adc.read_u16()
    
    # ADC çözünürlüğüne göre normalleme yap
    ntc_voltage = ntc_value / 65535.0 * 3.3
    
    # NTC direncini hesapla
    ntc_resistance = (3.3 - ntc_voltage) * ntc_resistor / ntc_voltage
    
    # Steinhart-Hart denklemi ile sıcaklığı hesapla
    steinhart = ntc_resistance / ntc_resistor
    steinhart = steinhart ** (1 / 3.5)
    steinhart = steinhart - 1
    steinhart = steinhart / 0.0065
    temperature = steinhart + 25
    
    return temperature

while True:
    try:
        # NTC termistöründen sıcaklık oku
        temperature = read_ntc_temperature()

        # LCD ekranına sıcaklığı yazdır
        i2c.writeto(lcd_addr, b'\x00\x01')  # LCD temizle
        i2c.writeto(lcd_addr, "Sicaklik: {:.2f} C".format(temperature))

        # 2 saniye bekle
        sleep(2)

    except Exception as e:
        print("Hata:", e)
        

Raw Text