Hi,
wenn sonst keiner vortritt ...
schau ma mal,
meine Beispiele sind nur für jeweils für ein Byte zu übertragen, wenns mehrere werden sollen, muss man entweder Strings oder ByteArrays verwenden, die in einer Schleife druchlaufen werden.
zum Programm (Master):
diese folge ist wohl nicht so vorteilhaft,
Code:
A = Getadc(0)
B = Getadc(1)
A = C
B = D
wenn Du Interger bzw. Word variablen in Bytes zerlegen willst, entweder mit Low() und High(), oder besser noch mit Dim Overlay arbeiten.
Mit der Sub Twi_send_byte wird nur ein Byte gesendet, Du übergibst zwar ein 2., damit wird aber nix gemacht.
Um mehr Bytes zu übertragen, kann nach/in der If-Abfrage "' Slave hat sich gemeldet" mit einer Schleife erledigt werden.
Beim Slave musst Du $baud verwenden, damit unten der Print-Befehl funktioniert.
Wenn der Slave die Werte richtig interpretieren soll, musst Du Dir ein kleines Protokoll überlegen, damit das mit den Integerwerten klappt, also, damit die 2 Byte die vom Master ankommen wieder zu einem Integerwert zusammengebaut werden können.
Wieviel Werte sollen insgesamt übertragen werden, wird der High oder der Low-Wert als erstes übertragen, usw. !?
Der Code vom Slave kann so auch nur ein Byte empfangen, bzw. nur unabhängige. Wenn mehr Bytes zusammengehören muss in der inneren If-Abfrage wieder eine Schleife, die mitzählt und die Bytes zusammenfasst (in Array oder String), oder was damit sonst passieren soll.
Lesezeichen