Raspberry Pi I2C (Python) (6 / 7 steg)
Steg 6: SRF08 sortiment Sensor
Tråd det på exakt samma sätt som tidigare, med makt, SDA och SCL ansluten till Pi. Jag tyckte att denna sensor inte skulle arbeta bort 3.3V, men igen, jag har inget ansvar för dig att sätta 5V genom din Pi stift. Du kan även lämna modulen kompass i också, eftersom I2C kan hantera flera enheter på en linje. Kopplingsschema kan ses här: http://www.robot-electronics.co.uk/htm/srf08tech.shtml.
Kör i2cdetect -y 0
0 1 2 3 4 5 6 7 8 9 en b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: 60 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: 70 -- -- -- -- -- -- --
Observera att jag har lämnat den kompass modul är ansluten.
Sedan behöver du en python-fil. Det är mer komplicerad, eftersom du måste skriva ett kommando till sensorn att få den att börja behandlingen.
importera smbus #SRF08 KRÄVER 5V def write(value): def lightlevel(): def range(): samtidigt sant:
Importera tid
Bus = smbus. SMBus(0)
Adress = 0x70
Bus.write_byte_data (adress, 0, värde)
återvända -1
ljus = bus.read_byte_data (adress, 1)
returnera ljus
range1 = bus.read_byte_data (adress, 2)
range2 = bus.read_byte_data (adress, 3)
range3 = (range1 << 8) + range2
avkastning range3
write(0x51)
Time.Sleep(0.7)
lightlvl = lightlevel()
RNG = range()
skriva ut lightlvl
skriva ut rng
Detta kommer att skriva ut ljus på inbyggda ljussensorn och det nuvarande utbudet, i cm.