Raspberry Pi vatten larmsystem (4 / 10 steg)
Steg 4: Konfigurera din Pi för I2C
Installationen använder Adafruit RGB positiva 16 x 2 LCD + knappsatsen Kit för Raspberry Pi som tillåter en röd eller grön bakgrundsbelysning som visuellt visar status för vatten sensorn. Alteratively, monokrom syster kit kan användas, men utan coulor visualisering.
Tecken LCD-skärmen använder endast två I2C stiften på Pi! Därför har I2C inrättas på Pi. Eftersom Raspbian används som OS, redigera/etc/modules med
nano/etc/modules
och Lägg till följande två rader
I2C-bcm2708
I2C-dev
till slutet av filen. Spara och starta om för att aktivera hårdvara I2C-drivrutinen.
omstart
Innan du kan komma igång med I2C på Pi, måste du köra genom ett par snabba steg från konsolen. Ange följande kommandon för att lägga till SMBus stöd (som inkluderar I2C) till Python:
lämplig-få installera python-smbus
lämplig-få installera i2c-tools
i2c-tools är inte absolut nödvändigt, men det är ett användbart paket eftersom du kan använda det till avsöka för någon I2C krets- eller SMBus-enheter anslutna till din styrelse. Om du vet något är ansluten, men du vet inte 7-bitars I2C-adressen är, har detta bibliotek ett bra litet verktyg som hjälper dig att hitta den:
i2cdetect -y 0 (om du använder en version 1 Raspberry Pi)
i2cdetect -y 1 (om du använder en version 2 Raspberry Pi)
Detta kommer att söka /dev/i2c-0 eller /dev/i2c-1 för alla adress, och om en Adafruit LCD-plattan är ansluten, det bör dyka upp på 0x20 (se fig. 6).
LCD-Pi plattan Python koden för Pi är tillgängliga här på Github. Det enklaste sättet att få koden till din Pi är att ansluta en Ethernet-kabel, och klona den direkt med "git", som installeras som standard på de flesta distributioner. Helt enkelt köra följande kommandon från en lämplig plats (ex. "/ home/pi"):
lämplig-få installera git
CD/home/pi
git klon https://github.com/adafruit/Adafruit-Raspberry-Pi-Python-Code.git
Det skapar en mapp "Adafruit-hallon-Pi-Python-koden" med några sub mapp som "Adafruit_CharLCDPlate". Kopiera den ursprungliga filer (inte genvägar)
Adafruit_I2C.py,
Adafruit_MCP230xx.py och
Adafruit_CharLCDPlate.py
från lämpliga mappar till den nya mappen "water_alarm_system". De kommer att användas av huvudprogrammet "water_alarm_system.py" och måste vara i samma mapp.