Hallo zusammen,
ich habe mir folgende Funktion ausgedacht um eine Frequenz zu erzeugen:
dieser Funktion wird zum einen die Frequenz, zum anderen die dauer der Frequenz übergeben.Code:Sub Genhz(byval Freq As Integer , Byval Lenms As Integer) Dim Idelay As Integer Dim Tgone As Integer Tgone = 0 Idelay = Freq / 2 Idelay = 1 / Idelay Idelay = Idelay * 1000 While Tgone < Lenms Portd.5 = 1 Waitms Idelay Tgone = Tgone + Idelay Portd.5 = 0 Waitms Idelay Tgone = Tgone + Idelay Wend End Sub
Es erzeugt auch einen Ton, allerdings funktionieren 2 Sachen nicht:
1) Ist es immer ein sehr hoher Ton, selbst bei 200 Hz ist er noch immer sehr hoch.
2) Die Schleife wird nicht verlassen. Die Variable Tgone zählt zusammen wie lange die Schleife schon läuft anhand der gewarteten Zeit um die Wellen zu formen, jedoch macht es endlos weiter. Leider habe ich noch keine gute debugging Infrastruktur und muss dort mit Logik rangehen.
Doch ich finde keinen Fehler :/
Weiss jemand Rat?
Es grüßt,
Basteltisch







Zitieren

Lesezeichen