30.12.2008, 11:03 AM
Nix ISR, DMA und Tüddelüt.
Der analoge "Joystick"-Eingang selektiert die Funktion. Wenn sich die Funktion ändert, so errechnet der Controller in aller Ruhe eine RAM-Tabelle für die Samples einer kompletten Schwingung.
Sobald die Tabelle berechnet wurde, arbeitet eine loop, in der sich der Controller ein Byte aus der Tabelle grabscht und das untere nibble 1:1 auf die 4 Portpins ausgibt, während das obere nibble den tristate der 4 PIOs steuert. 20 Takte sollten reichen. Aber selbst wenn wir 200 Takte verbrauchen würden, so würden wir die Forderung des Leitbeitrags immer noch erreichen.
Die 4 Portpins arbeiten auf ein Widerstandsnetzwerk mit kleinem Siebkondensator und analogem Spannungsteiler. 3 Kurven gleichzeitig geht, wenn man 3 Controller am gleichen Takteingang (0-20MHz) einsetzt - aber wer braucht das?
Der analoge "Joystick"-Eingang selektiert die Funktion. Wenn sich die Funktion ändert, so errechnet der Controller in aller Ruhe eine RAM-Tabelle für die Samples einer kompletten Schwingung.
Sobald die Tabelle berechnet wurde, arbeitet eine loop, in der sich der Controller ein Byte aus der Tabelle grabscht und das untere nibble 1:1 auf die 4 Portpins ausgibt, während das obere nibble den tristate der 4 PIOs steuert. 20 Takte sollten reichen. Aber selbst wenn wir 200 Takte verbrauchen würden, so würden wir die Forderung des Leitbeitrags immer noch erreichen.
Die 4 Portpins arbeiten auf ein Widerstandsnetzwerk mit kleinem Siebkondensator und analogem Spannungsteiler. 3 Kurven gleichzeitig geht, wenn man 3 Controller am gleichen Takteingang (0-20MHz) einsetzt - aber wer braucht das?