Gast
#4041791
Hallo zusammen, ich habe dieses Forum bereits gründlich durchsucht, wie z.B. diesen Thread Beitrag "I2C meldet status 0x38" , bin aber leider nicht fündig geworden. Ich möchte meinen BLDC Controller (ATmega88) über TWI ein Datenbyte senden, mit dem die Drehzahl des Motors verändert werden kann. D.h. OCXA und OCXB ändern, um die PWM anzupassen. Dazu verwende ich ein Poti das mit einem weiteren ATmega88 (Master) verbunden ist und eben ein Byte (0...255) erzeugt. An dieser sein angemerkt das alles perfekt funktioniert, solange der Motor NICHT dreht. Sobald ich den Motor anstupse (derzeit ist noch keine Anlaufkommutierung implementiert) und die Kommutierung auf Basis des Analog Comparators einsetzt funktioniert die TWI/I2C Verbindung nicht mehr. Weitere Informationen: - 100 Ohm in Serie zwischen SDA/SCL der beiden ATmega88, sowie 3,7kOhm Pullup-Widerstände. - Basis ist der Controller im obigen Link dargestellt - Master f_CLK = 20MHz - Slave f_CLK = 12MHz Falls noch weitere Daten benötigt werden stehe ich natürlich zu Verfügung. Mich wundert es, dass alles gut funktioniert solange der Motor steht, aber wenn er läuft keine Daten mehr übertragen werden. Vielleicht kommen sich die Interrupts von TWI/I2C und Analog Komparator in die Quere. Vielen Dank für eure Hilfe!