
MenuChip is 18F45K80. I changed pull-up values to 5.1K, not much difference in shape of signals, but at least now it works.
So in case of I2CWRITE, pins should be configured as input?
In your "working" example 2 you're actively driving the pins high and low.
I2C is an open-drain/collector bus where the high level speed is determined in part by the pullup values.
To reduce the...
what pic chip ?
how is pc9685 wired up [sketch]
i2c pins should not be set as outputs
Hello.
Trying to interact with PCA9685. No luck so far. Here's the code:
#config
CONFIG RETEN = OFF
CONFIG INTOSCSEL = HIGH
CONFIG SOSCSEL = DIG
CONFIG XINST = OFF ;Enabled
in reality accuracy is not always critically important, 1% or larger errors still work well in 90% of cases for tty serial transmission.
8bit generator results can be equally accurate anyway.
if...
Thanks a lot Richard.
All your settings work like a charm :wink:
Still a question: why would one choose the 8 bit baudrate generator - seems less accurate, no?
its probably better to say
there are two baudrate clock source dividers brgh=0 ; fosc/64 and brgh=1 ; fosc/16 and
and you have the choice of 8 or 16 bit baud rate generators, so 4 options...

Re: I2CWRITE/I2CREAD access hardware in the different way? (PCA9685 issues)
You should probably leave them as inputs.
tumbleweed - 20th December 2025, 17:39The I2C commands will change them from inputs to outputs as required to simulate an open-collector signal (high=input, low=output 0).
It would...