-mit dieser Library kann eine TWI-Kommunikation zwischen mehreren CPUs realisiert werden.
-Eine CPU wird als Master programmiert und diese kann mit maximal 8 Slaves per TWI kommunizieren.
-weil die Kommunikation per TWI-Bus funktioniert, wird auch der TWI-Treiber
“MK3_2560_TWI.h” benötigt
Master Funktionen :
1 2 3 4 5 6 7 | void MK3_INIT_TWI_MASTER(void); // zum init des Masters TWI_SEND_ID_t MK3_TWIM_WRITE8_SLAVE(TWI_Slave_ADR_t twi_adr, char adr, char wert); // um ein Byte zu einem Slave zu senden TWI_SEND_ID_t MK3_TWIM_READ8_SLAVE(TWI_Slave_ADR_t twi_adr, char adr); // um ein Byte von einem Slave zu lesen unsigned char MK3_TWIM_RD8_DATA(void); // zum lesen des uebertragenen Wertes TWI_SEND_ID_t MK3_TWIM_WRITE16_SLAVE(TWI_Slave_ADR_t twi_adr, char adr, unsigned int wert); // um ein Integer zu einem Slave zu senden TWI_SEND_ID_t MK3_TWIM_READ16_SLAVE(TWI_Slave_ADR_t twi_adr, char adr); // ein ein Integer von einem Slave zu lesen unsigned int MK3_TWIM_RD16_DATA(void); // zum lesen des uebertragenen Wertes |
Slave Funktionen :
1 2 3 4 5 6 | void MK3_INIT_TWI_SLAVE(TWI_Slave_ADR_t twi_adr); // zum initialis. vom TWI als Slave TWI_KOM_STATUS_t MK3_TWIS_AKTIVITY(void); // erkennt TWI aktivitaeten void MK3_TWIS_WR8_RAM(char adr, char daten); // schreibt ein byte ins RAM unsigned char MK3_TWIS_RD8_RAM(char adr); // liest ein byte aus dem RAM void MK3_TWIS_WR16_RAM(char adr, unsigned int daten); // schreibt ein INT ins RAM unsigned int MK3_TWIS_RD16_RAM(char adr); // liest ein INT aus dem RAM |
Hier die Library zum download :