Morgen Felix,
durch den externen Interrupt holt TL die Daten dann ab, wenn sie gerade gewandelt wurden. Die Gyro-Daten werden mit den ACC-Daten zusammen abgeholt. Im Datenblatt steht, dass die ACC-Daten höchstens mit 1kHz laufen. Wenn man öfter liest, kriegt man immer dieselben. Die Ausgaberate der Gyro-Daten kann man ja mit dem Divisor einstellen (internes MPU-Sampling ist aber immer 8kHz). Und wie gesagt, läuft das beim F4 mit max. 2kHz. Wenn Du höher gehst, zwingt das selbst den in die Knie. Da die Daten mit SPI abgeholt werden, ist die Verzögerung vom Auftreten des Interrupts bis zur Verarbeitung recht gering.
Man kann natürlich auch Polling machen. Bloß hast Du dann ja wieder einen Jitter drauf. Für I/D-Berechnung nimmt TL den internen Timer und keine Konstante. Damit stimmen die PID immer, egal welche Rate benutzt wird. Je schneller Du also verarbeiten kannst, desto 'analoger' wird der PID.
gruß
Jörg
PS: War heute das erste mal mit den MT1306 an 3S auf einem 150g (ohne Akku) Leora draussen. Der 3S840mAh 45C wiegt nochmal 82g. Laut dieser
Liste müsste der Kleine auf 4x380g-150g-82g=1288g Schub kommen. Ob das stimmt ist auch egal. Jedenfalls geht der ab wie Hölle. Super Regler! Danke Felix für die Entwicklung.