Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C Quellcode formatieren: <code>Quellcode</code> BASIC Quellcode formatieren: <basic>Quellcode</basic> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! -> I > > > > > > > Der Grund weswegen ich denke, dass es Probleme macht ist, dass ein Interrupt immer das Hauptprgramm anhält und > > > > somit würde es Probleme machen während ein Signal erzeugt wird ein anderes zu erzeugen und zeitgleich auch noch > > > > die Abfrage der Potis machen mit denen ich die Signalzeiten berechnen will. Oder habe ich einen kompletten > > > > Denkfehler mit den Interupts? > > > > > > Hallo Daniel, > > > > > > lass mal die Interrupte völlig beiseite. Du brauchst > > > sie nähmlich gar nicht. Für die Erzeugung von Signalen > > > sind die Timer zuständig. Diese haben entsprechende > > > Ausgänge an denen das Signal abgegriffen werden kann. > > > Das Hauptproblem ist die oben erwähnte Phasenverschiebung > > > zweier Timer zueinander. Am besten du beschreibst uns > > > mal hier für was du die Signale brauchst. Vielleicht > > > gib es da noch eine andere Lösung. > > > > > > Gruß Torsten > > > > Hallo Torsten, Hallo Daniel > > Daniel hat ja am Anfang beschrieben, was er für Signale braucht: > > 2x 10ms-500ms in 1ms Schritten. Wenn er das nur über Timer machen will, braucht er dafür auf jeden > > Fall 16-Bit Timer. Mit dem 8-Bit Timer lassen sich so langsame Signale nicht direkt erzeugen. > > Der eingesetzte Mega32 hat aber nur einen 16 Bit Timer. Grundsätzlich lassen sich damit zwar > > 2 PWM Signale bei identischer Frequenz für beide Signale erzeugen. Die Phasenverschiebung ist dann > > aber nicht frei wählbar. > > Ich denke, er wird ohne Interrupts nicht auskommen. Es muss aber nicht unbedingt ein fester 1ms > > IRQ sein, der den Interpreter doch stark belastet. > > Ich könnte mir vostellen, zu berechnen, wann der nächste Flankenwechsel ansteht, und dann mit > > Timer 1 zu diesem Zeitpunkt einen IRQ zu erzeugen. In der IRQ Routine wird dann die Flanke (oder > > beide, wenn 2 gleichzeitig erforderlich sind) erzeugt, und berechnet wann die nächste Flanke > > ansteht und der Timer wieder entsprechend gesetzt. > > Nachteil: Da ein fester Grundtakt fehlt, schwankt die Frequenz ein wenig. Das ist aber bei seiner > > jetztigen Lösung nach seiner Aussage auch so, und nicht kritisch. > > Alles andere (Potis lesen, Werte anzeigen) wird in der Hauptschleife gemacht. > > Gruß, Franz-Peter > > > Danke Peter und Thorsten für die Antworten. > > Schwankungen bei der Frequenz sind schon Problematisch habe ich jetzt aber hinbekommen indem ich den > Potiwert mit einem Schalter eingefrohren habe. Die Probleme scheinen von der I²C Abfrage zu kommen. > aktuell läuft es jetzt ziemlich stabil mit dem nachteil, dass ich nur in 10ms schritten einstellen kann. > Werde jetzt jedoch die ersten versuche mit diesem System so fahren um zu sehen ob es vielleicht doch ausreichend > sein wird.