Salve,
dovrei instaurare, via I2C, con uno Slave, delle istruzioni con:
Wire.read()
Wire.write(value)
qualcuno mi da una mano a scrivere il codice?
grazie
questi i parametri
Salve,
dovrei instaurare, via I2C, con uno Slave, delle istruzioni con:
Wire.read()
Wire.write(value)
qualcuno mi da una mano a scrivere il codice?
grazie
questi i parametri
Certamente, ma ... hai presente il REGOLAMENTO al punto 16.1?
Tenete sempre presente che qui sul forum nessuno scrive software per conto terzi o realizza schemi su ordinazione, ma si aiuta chi viene qui a correggere/ottimizzare il software che lui scrive o gli schemi che lui realizza .
Quindi ... tu scrivi il codice e noi ti aiutiamo a correggere gli errori ... ![]()
Guglielmo
ok, scusami.
sono un principiante dunque alle "prime armi" nell'uso di Arduino.
Come dicevo dovrei inviare dei comandi a un microcontrollore e testare la movimentazione di una meccanica CD.
Il chip da controllare in questione è un SAA7327 "Digital servo processor and Compact Disc decoder with integrated DAC for video CD" della Philips.
I dati sono stati ricavati collegando un Alalizzatore Logico ai seguenti pin:
PIN39 - CH1 - SDA
PIN40 - CH3 - SCL
PIN41 - CH5 - RAB
PIN42 - CH7 - SILD
il risultato è questo
Ora, dai dati ricavati dagli esempi sopra vorrei provare ad inviare manualmete i comandi di controllo del microprocessore tramite Arduino via SDA - SCL.
Dunque dovrei scrivere il codice appunto con
Wire.read()
Wire.write(value)
potrei immaginare il codice compilato in questo modo...
#include <Wire.h>
void setup() {
Wire.begin(); // attiva il bus I2C; il dispositivo è predisposto come master
Serial.begin(9600);
}
void loop() {
Wire.requestFrom(x, x);
while (Wire.available()){
char c = Wire.read();
Serial.print(c);
}
Serial.println();
Wire.beginTransmission();
Wire.write("xxx");
Wire.endTransmission();
delay(500);
}
Si, la logica della libreria Wire è quella, nell'IDE trovi anche alcuni esempi già scritti.
Ricorda solo una cosa ... il bus I2C è open-drain quindi occorono le resistenze di pull-up da qualche parte ![]()
Guglielmo
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.