Olá pessoal,
Estou usando este pic para comunicar com monitor de bateria que utiliza o padrão SMBUS. Isso é praticamente a especificação do I2C com algumas restrições de velocidade. No datasheet do monitor de bateria está especificado que a frequência mínima do clock é de 10KHz e a máxima é de 100KHz.
Eu estava utilizando o PIC com cristal externo e a frequência do I2C estava em 50KHz (tudo funciona perfeito), mas por questões de consumo quero utiizar o clock interno do PIC em 1MHz, aí a frequência do I2C fica em 10KHz e não funciona (toda hora dá erro de comunicação).
Revirando o datasheet não encontrei nada de seleção de clock para I2C.
Apenas o SSPCON que tem controle do clock mas é para o modo SPI.
Alguém sabe se existe uma configuração para tal configuração do clock da I2C.
Uso o compilador PICC, e aquela diretiva FAST/SLOW não tem efeito nenhum.
#use i2c(MASTER, SLOW, SDA=PIN_B1, SCL=PIN_B4)
Desde já agradeço
Henrique