A useful i2c package for Pi
Project description
A useful i2c Python3 package for Pi
It is a simple I2C interface based on smbus2.
1. Installation
Via pip
pip3 install pyi2c
2. How to use I2C? (Example)
2.1 Write
from pyi2c import I2C
# Create i2c
BUS_N = 0 # 0 or 1 or 2. Change this to yours
i2c = I2C(BUS_N)
# Write
ADDR = 0x38 # Change this to yours
WRITE1 = 0x00 # Change this to yours
i2c.write(ADDR, WRITE)
# or write multi bytes, up to 64 bytes
WRITE0 = 0x01 # Change this to yours
i2c.write(ADDR, [WRITE0, WRITE1])
2.2 Read
from pyi2c import I2C
# Create i2c
BUS_N = 0 # 0 or 1 or 2. Change this to yours
i2c = I2C(BUS_N)
# Read
read_data = i2c.read(ADDR)
# or set length of reading bytes
bytes_n = 2
read_data = i2c.read(ADDR, byte_n)
2.3 Write and read
from pyi2c import I2C
# Create i2c
BUS_N = 0 # 0 or 1 or 2. Change this to yours
i2c = I2C(BUS_N)
# First write and read rapidly
read_data = i2c.writeread(ADDR, WRITE0)
# These also work
read_data = i2c.writeread(ADDR, [WRITE0, WRITE1])
read_data = i2c.writeread(ADDR, [WRITE0, WRITE1], bytes_n)
3. How to use useful functions? (Example)
3.1 getBit
from pyi2c import getBit
byte = 0x5a
print( bin(byte) )
# Will return '0b1011010'
print( getBit(byte, 0) )
# Will return 0 from #0 bit
print( getBit(byte, 1) )
# Will return 1 from #1 bit
if getBit(byte, 4) == 1:
print('hoge')
# Will return 'hoge'
4. API
4.1 I2C
write
read
writeread
4.2 Useful functions
getBit(byte, bit_n)
For developers
Build
python3 -m build
Upload
python3 -m twine upload dist/*
Reference
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pyi2c-0.0.2.tar.gz
(3.5 kB
view hashes)
Built Distribution
pyi2c-0.0.2-py3-none-any.whl
(3.7 kB
view hashes)