collapse

* Posts Recentes

The All-New Arduino IDE 2.0: Introduction and Test por dropes
[Ontem às 18:41]


Equivalente Mosfet 65s1k5ce por filjoa
[Ontem às 17:29]


Impostos: segurem-se, vem bernarda por Hugu
[Ontem às 11:16]


Borracha para pára-brisas ~72cm? por Hugu
[10 de Abril de 2021, 15:39]


White smoke - LG Hi-Fi por almamater
[07 de Abril de 2021, 23:02]


Problema com Tablet por Fifas
[06 de Abril de 2021, 15:45]


1950's Televisions por SerraCabo
[05 de Abril de 2021, 14:20]


TV Barata sem imagem por jm_araujo
[24 de Março de 2021, 17:30]


Um projeto fantástico - Reconhecimento de voz num Arduino por blabla
[22 de Março de 2021, 11:45]


Raspberry Pi enters microcontroller game with $4 PICO por blabla
[18 de Março de 2021, 20:01]

Autor Tópico: I2C a 400KHz  (Lida 2505 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline SerraCabo

  • Mini Robot
  • *
  • Mensagens: 925
    • Serra Cabo
I2C a 400KHz
« em: 17 de Fevereiro de 2021, 01:49 »
Olá.

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

A forma mais simples parece ser invocando, algures

Código: [Seleccione]
Wire.setClock(400000);
mas .. nicles-batatóides.

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

Abraço
SC

Offline SerraCabo

  • Mini Robot
  • *
  • Mensagens: 925
    • Serra Cabo
Re: I2C a 400KHz
« Responder #1 em: 17 de Fevereiro de 2021, 16:32 »
Encontrei a solução.

Durante a inicialização

Código: [Seleccione]
lcd.init();
a biblioteca do LCD faz

Código: [Seleccione]
Wire.begin();
deixando o sistema a 100KHz (provavelmente a velocidade por defeito). Logo após a inicialização, temos que reconfigurar a velocidade

Código: [Seleccione]
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.