1.3k
This is follow on from the DS18b20 terminal example at http://www.pibits.net/learning/120.php , this time a python example
Code
[codesyntax lang=”python”]
import os import glob import time os.system('modprobe w1-gpio') #load one wire communication device kernel modules os.system('modprobe w1-therm') base_dir = '/sys/bus/w1/devices/' #point to the address device_folder = glob.glob(base_dir + '28*')[0] device_file = device_folder + '/w1_slave' def read_temp_raw(): f = open(device_file, 'r') lines = f.readlines() f.close() return lines def read_temp(): lines = read_temp_raw() while lines[0].strip()[-3:] != 'YES': time.sleep(0.2) lines = read_temp_raw() equals_pos = lines[1].find('t=') #find temperature if equals_pos != -1: temp_string = lines[1][equals_pos+2:] temp_c = float(temp_string) / 1000.0 return temp_c while True: print(read_temp()) #Print temperature time.sleep(1)
[/codesyntax]
You should see something like