Bascom8051+Sound+Timer

OP #1104740
Hallo Leute, ich habe ein Problem und bitte um Eure Hilfe. Ich habe mit 
einem 89c5131 eine Schaltung aufgebaut, bei der ich verschiedene Töne 
ausgeben will. Da der "Sound" Befehl in Bascom keine befriedigenden 
Ergebnisse liefert, es lässt sich offensichtlich nur ein Ton einstellen, 
wollte ich die gewünschten Töne per Timer erzeugen. Die Tonerzeugung per 
Timer klappt auch aber es geht weder ein 2.Timer noch ein Wait Befehl. 
Im Anhang ist meine kleine Testroutine.
Vielleicht hat einer von Euch eine Lösung parat!!!
Danke für Eure Hilfe
Gruss Uli
'Sound test

$large

$regfile = "89C5131.dat"
$crystal = 24000000


Declare Sub Initialisieren
Declare Sub Ton_test

Dim I As Integer , Ii As Integer , Warte As Integer

Config Timer0 = Timer , Gate = Internal , Mode = 2
Config Timer1 = Timer , Gate = Internal , Mode = 2

On Timer0 Timer_0_int
Load Timer0 , 100
Enable Timer0


On Timer1 Timer_1_int
Load Timer1 , 100
Enable Timer1

Enable Interrupts



Config Lcd = 20 * 4
Speaker Alias P0.0

D_up Alias P3.1
D_down Alias P3.0
F_up Alias P3.3
F_down Alias P3.2


Call Initialisieren
'main Loop


Lowerline
Lcd "     Main Loop !    "
Cursor Off
Ii = 8
Start Timer0
Do
 Locate 4 , 1
 Lcd "                "
  For Ii = 8 To 16
   Locate 4 , 1
   Lcd Ii

   Warte = 1
   Start Timer1
   Do
   Loop Until Warte >= 20000
   Stop Timer1
  Next Ii
Loop

Sub Initialisieren
Cls
I = 0
Ii = 1
Warte = 1

End Sub

Timer_0_int:
I = I + 1
If I = Ii Then
I = 0
Speaker = Not Speaker
End If
Return

Timer_1_int:
Warte = Warte + 1
Return

End

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.