MelodieGenerator

Gast #3482733
Lesenswert?

Hallo,

ich muss ein MelodieGenerator in C Programmieren für den atmega 88.
Ich habe den Timer 1 getoggelt so das ich einen Ton rausbekomme.
Mein Problem ist, ich weiss nicht wie ich jetzt verschiedene Töne 
rausbekomme.
Ich kann es ohne toggeln machen mit einer schleife und interrupt aber 
die Frequenzen sind dann ungenau.
Also brauch ich die Einstellung von Timer1 um verschiedene Töne zu 
bekommen.

Meine Einstellung:

void Timer_Init1(void)
{
  TCCR1A |= (1<<COM1B0);    // COM1B0 zum toggeln
  TCCR1B |= (1<<CS10);    //ohne Vorverteiler
  OCR1A = 10;      //Frequenz des Tones
  OCR1B = 10;//4608
}

Bei OCR1A sollte ich dann eigentlich die höhe des Tones einstellen 
können, es funktioniert aber nicht, wo liegt mein Fehler?

Meine zweite Frage:
Wenn ich das dann einstellen kann, wie überschreibe ich den OCR1A damit 
ich ein Lied abspielen kann.

Mit einem Array und einer Schleife aber da hatte ich auch einen Fehler.

Wäre dankbar für Hilfe :)
Gast #3482763
Lesenswert?

Lee schrieb:
> Hii Jörg,
>
> vielen Dank.
>
> Könntest du noch vlt den Code Posten.
> Wäre echt nett.

Hallo! Ich soll eine Aufgabe bearbeiten, die mir offensichtlich von 
jemandem gestellt wurde. Da ich keine Lust habe mich einzuarbeiten, 
frage ich nun in einem Forum nach Hilfe. Dort wurde mir zwar ein Link 
gezeigt, allerdings war es keine Facebook Seite und überhaupt war dort 
mehr Text als Bilder. Offensichtlich habe ich die Seite also sofort 
wieder zugemacht, und frage jetzt, ob mir jemand nicht vielleicht noch 
beim Copy-Pasten helfen kann, weil mir das auch zu viel Arbeit ist.

Protipp: Der Code ist auf der Seite von Elm-Chan verlinkt.

Wieso machst du überhaupt etwas technisches wenn du davon offensichtlich 
keine Ahnung hast und auch 0 Lust dich zu informieren?
Moderator (Firma: Titel) Persönliche Seite #3483459
Lesenswert?

Lee schrieb:
> ich muss ein MelodieGenerator in C Programmieren für den atmega 88.
Das ist wirklich mal eine schöne einfache und skalierbare Hausaufgabe. 
Fang einfach mal an, 1 Ton zu erzeugen, und dann probierst du eine 
Tonfolge zu machen und fragst, wenn es konkrete Probleme gibt.

Lee schrieb:
> es funktioniert aber nicht,
WAS funktioniert nicht?
WAS hast du erwartet und WAS hast du bekommen?
WAS könnte der Grund für die Differenz sein?
Wenn du dir diese Gedanken machst und uns mitteilst, dann kann dir eine 
helfen. Es wird sich aber keiner dafür hergeben, dir deine 
Hausaufgaben zu machen. Das ist dir hoffentlich klar, oder?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren