www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Sound Befehl für mehrere Piepser gleichzeitig


Autor: andi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Ich habe mich seit gestern Abend mit dem Befehl Sound in Bascom 
beschäftigt, und dieser funktioniert auch wunderbar für einen Piepser.

Interessant wäre jedoch, ob dies für 2 oder mehr Piepser auch möglich 
wäre, um kleine Melodien auf diesen abzuspielen.

Habe mir dies auch überlegt und habe einen kleinen Testcode dazu 
geschrieben, jedoch geben die Piepser nur ein Pfeiffen bzw. kurzes 
Knacken anstatt eines Tones wie mit der sound Funktion aus.

Hier ein Auszug des Codes:

Summer1 Alias Portd.7
Summer2 Alias Porta.2

Dim Freq1 As Integer
Dim Freq2 As Integer
Freq1 = 500
REM verschiedene Werte von 10 - 15000 getestet
Freq2 = 1500
REM verschiedene Werte von 10 - 15000 getestet

Dim I As Long
Dim Var1 As Integer
Dim Var2 As Integer
Var1 = 1
Var2 = 1

Do

For I = 1 To 2147483646 Step 1

If Var1 = Freq1 Then
     If Summer1 = 1 Then
         Summer1 = 0
     End If
     If Summer1 = 0 Then
         Summer1 = 1
     End If
     Var1 = 1
End If

If Var2 = Freq2 Then
     If Summer2 = 1 Then
         Summer2 = 0
     End If
     If Summer2 = 0 Then
         Summer2 = 1
     End If
     Var2 = 1
End If

Var1 = Var1 + 1
Var2 = Var2 + 1

Next I

Loop


Das ganze sollte ein Rechtecksignal auf zwei Augänge geben, jedoch mit 
verschiedenen Frequenzen.
Wie oben gesagt funktioniert das alles aber nicht richtig.

Kann mir bitte jemand sagen wo der Fehler liegt?
Ich komme einfach nicht drauf.

mit freundlichen Grüßen

Fuchs Andreas

Autor: andi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für andere die dieses Thema verfolgt haben:

Die Lösung ist ganz einfach, habe es einfach mit zwei 
aufeinanderfolgenden Sound Befehlen gelöst, die nur sehr kurz ausgeführt 
werden, klingt dann als würden sie beide gleichszeitig angesteuert 
werden. Leider ist das Ganze sehr ungenau im Zeitablauf.

Beispiel:

Sound Summer1 , 1 , 1500
Sound Summer2 , 2 , 500

Funktioniert einwandfrei, wahrscheinlich auch für 3 oder mehr Piepsern.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.