• Welcome to LusoRobótica - Robótica em Português.
 

I2C a 400KHz

Started by SerraCabo, 17 de February de 2021, 01:49

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

SerraCabo

Olá.

Já alguém conseguiu pôr uma linha I2C a trabalhar a 400KHz?

A forma mais simples parece ser invocando, algures

Wire.setClock(400000);

mas .. nicles-batatóides.

O controlador é o ATmega 2560 a 16MHz (Arduino Mega).

Abraço
SC

SerraCabo

Encontrei a solução.

Durante a inicialização

lcd.init();

a biblioteca do LCD faz

Wire.begin();

deixando o sistema a 100KHz (provavelmente a velocidade por defeito). Logo após a inicialização, temos que reconfigurar a velocidade

Wire.setClock(400000);

O resultado aumenta 4x a frequência do clock mas não tona mais curto o espaço entre pacotes (?). De qualquer forma, a velocidade aumenta para ligeiramente mais que o dobro.