19 lines
627 B
Python
19 lines
627 B
Python
"""Diagnóstico somente leitura; não configura PWM nem movimenta servos.
|
|
Uso: sudo python3 verificar-pca.py /dev/i2c-N
|
|
Confirme primeiro que N corresponde ao I2C3 do conector externo.
|
|
"""
|
|
import fcntl
|
|
import os
|
|
import sys
|
|
|
|
bus = sys.argv[1]
|
|
fd = os.open(bus, os.O_RDWR)
|
|
try:
|
|
fcntl.ioctl(fd, 0x0703, 0x40) # I2C_SLAVE: endereço padrão PCA9685
|
|
for name, register in [('MODE1', 0x00), ('MODE2', 0x01), ('PRE_SCALE', 0xFE)]:
|
|
os.write(fd, bytes([register])) # seleciona apenas o registrador
|
|
value = os.read(fd, 1)[0]
|
|
print(f'{bus} endereço 0x40 {name}=0x{value:02x}')
|
|
finally:
|
|
os.close(fd)
|