psclab38 hat geschrieben:
So, heute nochmal drüber nachgegrübelt und die Änderungen eingebaut. Jetzt gibt es auch im Linear-Sweep-Modus Marker (der Code ist aber noch nicht eingecheckt).
Coole Sache!
Dabei sind aber zwei Fragen aufgetaucht:
a) Beim absoluten Octave-Marker-Modus bezieht sich der Code auf eine "Frequenz" 6.875Hz. Ich hab keine Ahnung mehr, wie ich darauf komme.
Aber ich: Kammerton A = 440 Hz / 64, also 6 Oktaven unterhalb von A. Somit beziehst Du Dich auf A, was gar nicht so verkehrt ist. Hat zwar keinen echt technischen Hintergrund, ist aber nachvollziehbar.
Könnte aber auch ein Fehler sein, denn der Kommentar sagt, daß sich die Marker auf 2^x Hz befinden (was sie aber nicht tun). Ich kann das jetzt ändern, aber bei der Gelegenheit die Frage an die "Musiker" unter uns: wäre es nicht sinnvoller, die absoluten Octave-Marker auf 2^x*(eine Grundfrequenz) zu legen? Wenn ja, welche?
Nun, wenn Du _wirklich_ einen Parameter (z. B. "SWP MARKER BASE") im Menü dafür verwenden willst, dann wäre es sinnvoll, dass der die Bezugsfrequenz für oktavischen und dekadischen Sweep gleichzeitig vorgibt - ohne Unterschied. Aber ich könnte auch mit festen Werten (440 Hz, 1000 Hz bzw. Vielfache/Teile davon) leben.
b) Im relativen Marker-Modus beziehen sich die Marker auf die Centerfrequenz. Das ist für den Log-Modus perfekt, aber im Linearmodus Quatsch. Soll ich mich für die Marker im Linear-Sweep nicht besser auf die Startfrequenz beziehen?
Äh - ja. Ich freue mich schon auf die Formulierung des Kapitels im Handbuch

(Das habe ich bis jetzt bewusst ausgelassen).
Der zusätzliche Code frißt derzeit etwas mehr als 600 Byte, das ist aber noch vertretbar. Was meint Ihr?
Das ist OK, ich habe derzeit noch 992 Bytes frei, und die Implementierung des PWMLo/Hi braucht nicht mehr viel. Wenn es dennoch nicht reichen sollte, müssen wir eben hier und da noch ein bisschen "Luft rauslassen". Als letzte Waffe können wir noch den Kommandozeilenaufruf von gcc ziehen (steht in der main.c ganz oben als Kommentar), um alles mit einem Mal zu compilieren (2786 Bytes frei).
Die Ursache für das Problem mit dem Terzmodus habe ich auch lokalisiert. Leider hatte ich damals mit der Implementierung (schnell-schnell

) nicht bedacht, daß es nicht nur die normale Frequenzeinstellung gibt, sondern eben auch 3 für den Sweep-Modus (Start, Stop, Center). Es gibt aber nur eine (1) Variable (uint8_t gc_TerzNum) für den Terz-Index. Eine einfache Lösung wäre, entsprechend die Indizes für die restlichen drei Frequenzen nachzurüsten (ist jeweils nur ein Byte), und eine entsprechende Fallunterscheidung zu machen. Noch Ideen?
Das halte ich für eine sinnvolle, weil einfach umzusetzende Lösung. Wie Captain Picard sagen würde: Machen Sie's so!
dg1vs hat geschrieben:+ Kapitel 5 angelegt
+ Kleine Korrekturen
+ Review-Kommentare im tex-File als Kommentar (diffen oder nach DKS suchen)
Danke! Ich habe die Änderungen gemerged und wieder eingecheckt (die Änderungen sind aber nur minimal). Hast Du eigentlich eine Umgebung, um TeX compilieren zu können? Für Eclipse gibt es das Texlipse-Plugin. Allerdings brauchst Du dafür noch den ganzen großen TeX-Haufen, welcher die wirkliche Arbeit macht (für Windows z. B.
MiKTeX). Ich habe mir für MacOS mal ein komplettes Paket mit allem Drum und Dran installiert, das waren respektable 3 GB (es geht aber auch kleiner).
Viele Grüße
Thoralt
There are 10 kinds of people in this world: Those who understand binary and those who don't.