Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
microcontrollertechnik:infos_zur_verwendung_von_ram_und_rom [2024/04/16 23:55]
mexleadmin
microcontrollertechnik:infos_zur_verwendung_von_ram_und_rom [2024/04/17 02:00] (aktuell)
mexleadmin [Beispiel in Simulide]
Zeile 21: Zeile 21:
 ===== Beispiel in Simulide ===== ===== Beispiel in Simulide =====
  
-==== Konvertierung von *.wav / *.mp3 in *.dat ====+==== Konvertierung von *.wav / *.mp3 in *.dat / *.wav ====
  
 Um die Daten zu konvertieren, kann das Freeware Tool {{https://www.audacity.de/downloads/|Audacity}} genutzt werden. In diesme sind folgende Schritte notwendig: Um die Daten zu konvertieren, kann das Freeware Tool {{https://www.audacity.de/downloads/|Audacity}} genutzt werden. In diesme sind folgende Schritte notwendig:
   - im Footer von Audacity die Audioposition auf ''samples'' stellen (falls dies nicht schon automatisch eingestellt ist) \\ {{drawio>microcontrollertechnik:UmstellenDesFooters.png}}   - im Footer von Audacity die Audioposition auf ''samples'' stellen (falls dies nicht schon automatisch eingestellt ist) \\ {{drawio>microcontrollertechnik:UmstellenDesFooters.png}}
-  - Datei (wav / mp3) laden. Hier kann z.B. auf freie, selbst-erzeugte Songs von {{https://suno.com|Suno}} oder Loops aus {{https://freesound.org/|FreeSound.org}} zurückgegriffen werden+  - Datei (wav / mp3) laden.  
 +    - Hier kann z.B. auf freie, selbst-erzeugte Songs von {{https://suno.com|Suno}} oder Loops aus {{https://freesound.org/|FreeSound.org}} zurückgegriffen werden 
 +    - Audacity hat mit {{https://github.com/intel/openvino-plugins-ai-audacity/releases|OpenVINO}} auch ein eigenes AI Tool zum lokalen Erzeugen von Musik. Dies ist aber nur bei hinreichend schneller Hardware empfohlen (Ein Laptop von 2021 reicht nicht).
   - Den gewünschten Bereich markieren und eine separate Spur daraus herstellen (Auswahl mit Maus, ''<Strg>+X'', ''<Strg>+V'', Rest löschen über: markieren und ''<Entf>''   - Den gewünschten Bereich markieren und eine separate Spur daraus herstellen (Auswahl mit Maus, ''<Strg>+X'', ''<Strg>+V'', Rest löschen über: markieren und ''<Entf>''
   - Die Daten über ''Spuren'' >> ''Mix'' >> ''Stereo zu Mono heruntermischen'' auf nur eine Mono-Spur zusammenlegen   - Die Daten über ''Spuren'' >> ''Mix'' >> ''Stereo zu Mono heruntermischen'' auf nur eine Mono-Spur zusammenlegen
   - Es empfiehlt sich nun die Daten durch ein Tiefpass zu filtern, z.B. mit 4000Hz und : ''Effekt'' >> ''Low-Pass-Filter..'' >> ''Frequenz: 4000,0'' und ''Rolloff: 48 dB/Octave''. \\ Damit kann die Menge an Daten und die Wiedergabefrequenz im Anschluss reduziert werden.   - Es empfiehlt sich nun die Daten durch ein Tiefpass zu filtern, z.B. mit 4000Hz und : ''Effekt'' >> ''Low-Pass-Filter..'' >> ''Frequenz: 4000,0'' und ''Rolloff: 48 dB/Octave''. \\ Damit kann die Menge an Daten und die Wiedergabefrequenz im Anschluss reduziert werden.
-  - +  - Abspeichern der Daten: 
 +    - Der Einfachste Weg ist das Abspeichern eines Audiofiles: 
 +      - ''Datei'' >> ''Audio exportieren'' 
 +      - Format: ''WAV'', Kanäle: ''Mono'', Abtastrate: ''8000 Hz'', Encodierung: ''Unsigned 8-bit PCM'' 
 +    - Es gibt aber auch einen umständlichen Weg über den Sample-Export, der im Anschluss noch konvertiert werden muss:  
 +      - Markieren aller Daten im Track: ''<Strg>+A'' 
 +      - ''Werkzeuge'' >> ''Sample-Datenexport''  
 +      - Ausgabe beschränken auf die ersten: ''65535'' (oder Samplewert des letzten Samples), Messskala: ''linear'', Datei exportieren nach: ''Pfad + Name eingeben'', Index: ''Aus'', Headerinfo: ''Aus'' 
 +      - Konvertieren der Daten: Die Daten liegen als float $[-1.00, ... , +1.00]$ vor und müssen auf $[0, ... , 255]$ konvertiert werden. \\ Dazu kann die folgende Excel-Datei genutzt werden: {{microcontrollertechnik:conversiontool.xlsx}}   
 +  - 8-bit ''*.wav'' Dateien und ''*.data'' Dateien mit Komma-separierten Werten können beide direkt in Simulide in ein RAM Baustein laden: 
 +    - Rechtsklick auf RAM-Baustein 
 +    - Daten laden 
 + 
 +==== Dateien ==== 
 + 
 +  * Simu-Datei: {{microcontrollertechnik:audio_ram_example.sim1}} 
 +  * Beispiel-Dateien für Audio: {{microcontrollertechnik:ram_rom_data.zip}} 
 + 
 +Die Simulide Datei ermöglicht: 
 +  * ohne Mikrocontroller 
 +  * die Daten aus einem adressierbaren RAM/ROM Byte für Byte auszulesen 
 +  * aus diesen 8-Bit Daten Analogwerte zu generieren 
 +  * diese Analogwerte auf einem Scope und Lautsprecher auszugeben   
 + 
 +Ich empfehle, zur Performancesteigerung folgendes: 
 +  * Schaltungsoptionen optimieren: ''Einstellungen'' (⚙️) >> ''Schaltung'' 
 +    * Farbanimation deaktivieren 
 +    * Canvas aktualisieren nur mit 10 Bilder pro Sek. 
 +  * Nicht notwendige Ausgaben entfernen  
 +    * 7-Segmentanzeige für Adresse und Ausgabe löschen 
 +    * Oszi löschen 
 +