Raspberry Pi MCP9808 temperatur Sensor Python Tutorial (3 / 4 steg)
Steg 3: kod
Python koden för MCP9808 kan hämtas från vår github repository-ControlEverythingCommunity
Här är länken för samma:
https://github.com/ControlEverythingCommunity/MCP9...
Databladet för MCP9808 kan hittas här:
http://WW1.microchip.com/downloads/en/DeviceDoc/25...
Vi har använt SMBus bibliotek för python kod, stegen för att installera SMBus på raspberry pi beskrivs här:
https://pypi.python.org/pypi/SMBus-cffi/0.5.1
Du kan också kopiera koden från här, det ges enligt följande:
# Distribueras med en fri vilja licens.
# Använd det något sätt du vill, vinst eller gratis, förutsatt att den passar i licenser av dess tillhörande arbeten.
# MCP9808
# Den här koden är avsedd att arbeta med MCP9808_I2CS I2C Mini modulen tillgänglig från ControlEverything.com.
# https://www.controleverything.com/content/Tempera...
importera smbus
Importera tid
# Få I2C bussen
Bus = smbus. SMBus(1)
# MCP9808 adress, 0x18(24)
# Select configuration registrera, 0x01(1)
# 0x0000(00) kontinuerlig omvandling läge, uppstart standard
config = [0x00, 0x00]
Bus.write_i2c_block_data (0x18, 0x01, config)
# MCP9808 adress, 0x18(24)
# Välj resolution rgister, 0x08(8)
# 0x03(03) Resolution = +0.0625 / C
Bus.write_byte_data (0x18, 0x08, 0x03)
Time.Sleep(0.5) # MCP9808 adress, 0x18(24)
# Läs data tillbaka från 0x05(5), 2 byte
# Temp MSB, TEMP-LSB
data = bus.read_i2c_block_data (0x18, 0x05, 2)
# Konvertera data till 13-bitar
CTemp = ((data [0] & 0x1F) * 256) + data [1]
om ctemp > 4095:
CTemp-= 8192
CTemp = ctemp * 0,0625
ftemp = ctemp * 1,8 + 32
# Utdata till skärm
skriva ut "temperaturen i Celsius är: %.2f C" % ctemp
skriva ut "temperaturen i Fahrenheit är: %.2f F" % ftemp