Gast
#176001
Hallo zusammen, an unser AT91RM9200-System können 1-5 TWI-Slaves angeschlossen sein, also ist es notwendig zu prüfen welche und wieviele Slaves angeschlossen sind. Meine Idee war es nun einfach ein paar (Dummy-)Daten an jeden Slave zu schicken und dann zu prüfen ob das NACK-Flag gesetzt wurde. Laut dem Errata-Sheet von ATMEL muss man dazu zuerst per Interrupt auf TXCOMP warten und kann dann NACK prüfen. Also habe ich das auch so implementiert, erhalte aber völlig sinnlose und scheinbar zufällige Werte. Oftmals wird NACK gesetzt obwohl der entsprechende Slave angeschlossen ist oder aber der umgekehrte Fall tritt ein. Ansonsten funktioniert das TWI einwandfrei.