i²C com problemas

Estou tendo problemas com o barramento i²c do Arduino.

Meu código é este:

#include <Wire.h>

void setup() {
Wire.begin();
}

void loop()
{
Wire.beginTransmission(97); // Inicio da Transmição I2C + Endereço do dispositivo
Wire.write(200);
Wire.write(1);
Wire.endTransmission(); // fim da transmissão
delay(1000);
}

O dispositivo que o arduino deveria se comunicar não responde. Fiz o debug I²C pelo Protreus é notei que somente o "Wire.BeginTransmission" tem o seu valor registrado, embora o valor apareça 194 ao invés de 97. Os valores dentro do "Wire.write" não são registrados.
Queria saber o motivo do valor 97 está sendo mostrado 194 e porque os outros valores não estão sendo enviados.

Testei com outra linguagem de programação, Great Cow Basic, e os valores são enviados corretamente tanto no Proteus quanto no Hardware.

97<<1 = 194. Isso é normal devido ao bit de read/write.

Qual é o dispositivo que estás a tentar aceder e qual é o endereço dele?

Então o endereço dele é 194 é um seletor de canais de TV com ci TDA6503ATS
Além do endereço tenho que enviar dois bytes com a frequência, um byte de controle e um byte para selecionar a banda.

No caso 193 é o valor de leitura e 194 é o valor de escrita.

Tens a certeza com a morada? Isto é, colocaste os pinos com a tensão correcta para teres essa morada?
Podes sempre experimentar este sketch para confirmares a morada.

https://playground.arduino.cc/Main/I2cScanner/

Colocaste resistências de pull up nas linhas SDA e SCL?