Forum: Mikrocontroller und Digitale Elektronik TWI Probleme bei mega 8/16


von Marcel.s (Gast)


Angehängte Dateien:

Lesenswert?

Hallo, für ein Projekt an der Arbeit, habe ich den Auftrag bekommen, 
Daten von einem Atmega 16L zu einem Atmega 8 zusenden. Dies soll über 
einen I²C(TWI) Bus geschehen.

Des weiteren habe ich die Libaries und beispielprogs von Peter un 
Manfred dazu geladen und diese ausprobiert(Anhang).

Momentan verwende ich jedoch auf meinen atmegas das Testprogram von 
Manfred.

Mit dem Osziloskop konnte ich feststellen, das momentan schon ein 
Datentransfer durchgeführt wird.

Jedoch ist mein Problem, das ich keine ahnung habe was er 
sendet/empfängt und wo ich meine Daten im Beispielprogramm hinschreiben 
kann, damit er sie sendet.
Die Daten sollen nur vom Master zum Slavegesendet werden

mfg Marcel

von Marcel.s (Gast)


Angehängte Dateien:

Lesenswert?

hier noch das Slave Programm

von Otto (Gast)


Lesenswert?

Hallo marcel,

das steht doch im Kommentar: es werden 8 Byte gesendet:

** Write byte(s) to the slave.
** It is implicitely assumed, that the slave will
** accepts 8 bytes
*/
      if (!TWIM_Start (SlaveAddress, TWIM_WRITE))
      {
      TWIM_Stop ();
      printf ("Could not start TWI Bus for WRITE\n");
        }
    else
      {
      for (i=0;i<8;i++)
        {
            TWIM_Write (j++);
        printf ("Byte %d sent: %d\n", i, j);
        }
      TWIM_Stop ();
      Delay_ms (1000);
      }


und das ist der Inhalt der Variablen "j".

Anstelle dieser musst Du Deine Daten senden.

Otto

von marcel.s (Gast)


Lesenswert?

ok danke, werd ich dann gleich mal testen

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.