Benutzer-Werkzeuge

Webseiten-Werkzeuge


ss15:tonerzeugung

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
ss15:tonerzeugung [2015/10/01 22:39]
m.schramm [2.1 Variante A]
ss15:tonerzeugung [2016/05/10 14:46] (aktuell)
Zeile 9: Zeile 9:
 def code(l): def code(l):
  '''​erzeugt aus der Bit-Liste l Töne und Taktsignal'''​  '''​erzeugt aus der Bit-Liste l Töne und Taktsignal'''​
- f_0 = 12900 # Frequenz zur codierung der 0+ f_0 = 13000 # Frequenz zur codierung der 0
  f_1 = 12800 # Frequenz zur codierung der 1  f_1 = 12800 # Frequenz zur codierung der 1
  f_takt = 12600 # Taktfrequenz  f_takt = 12600 # Taktfrequenz
  dauer_bit = 0.05 # Dauer des Signals für 1 Bit in Sekunden  dauer_bit = 0.05 # Dauer des Signals für 1 Bit in Sekunden
  t = [] # List zur Speicherung des Taktsignals  t = [] # List zur Speicherung des Taktsignals
 +
  for i in range(0, len(l)): # Erzeugung des Taktsignals mit der Länge von l  for i in range(0, len(l)): # Erzeugung des Taktsignals mit der Länge von l
  t.append(i%2)  t.append(i%2)
Zeile 28: Zeile 29:
 </​code>​ </​code>​
 ==== 2.2 Variante B ==== ==== 2.2 Variante B ====
 +Die Variante B funktioniert ähnlich wie Variante A, allerdings wird hier von Anfang an die vier auftretenden Fälle unterschieden und ausgehend davon die Töne erzeugt.
 Wir wissen, dass jeder Datentyp ein Vielfaches von 4 als Bit-Anzahl besitzt und damit eine gerade Anzahl hat. So endet bei einem ständigen Wechsel zwischen An/Aus die Takt-Frequenz immer gleich. Wenn wir nun neben der 0 und 1 Codierung eine Takt-Frequenz als zusätzliche Info miteinbringen wollen, so kommen wir auf 4 verschiedene Kombinationen an Tönen. Die erhaltene Bit-Liste aus der Datei wird deshalb umgeschrieben. Durch die Hinzugabe der Takt-Frequenz geht die 0 und 1 Codierung auch nicht verloren, da die Frequenzen keine Auswirkungen aufeinander haben. Sehr wichtig ist, dass auf jeder geraden Stelle der Liste die Takt-Frequenz gespielt wird, damit es auch damit endet. Dies ist für die Taktrückgewinnung relevant! Wir wissen, dass jeder Datentyp ein Vielfaches von 4 als Bit-Anzahl besitzt und damit eine gerade Anzahl hat. So endet bei einem ständigen Wechsel zwischen An/Aus die Takt-Frequenz immer gleich. Wenn wir nun neben der 0 und 1 Codierung eine Takt-Frequenz als zusätzliche Info miteinbringen wollen, so kommen wir auf 4 verschiedene Kombinationen an Tönen. Die erhaltene Bit-Liste aus der Datei wird deshalb umgeschrieben. Durch die Hinzugabe der Takt-Frequenz geht die 0 und 1 Codierung auch nicht verloren, da die Frequenzen keine Auswirkungen aufeinander haben. Sehr wichtig ist, dass auf jeder geraden Stelle der Liste die Takt-Frequenz gespielt wird, damit es auch damit endet. Dies ist für die Taktrückgewinnung relevant!
  
Zeile 55: Zeile 57:
  playsnd(signal,​RATE)  playsnd(signal,​RATE)
 </​code>​ </​code>​
 +{{:​ss15:​code.png?​direct&​700 |erzeugtes Signal zur Bit-Liste [0,​1,​1,​0,​0,​1,​0,​0,​0,​1,​0,​1,​0,​0,​1,​1]}}
ss15/tonerzeugung.1443731973.txt.gz · Zuletzt geändert: 2016/05/10 14:46 (Externe Bearbeitung)