Tastenentprellung mit PWM in C

Gast #1218377
Lesenswert?

Hallo Leute,

Ich muss für die Schule eine Tastenentprellung mit Zitat: Einstellung 
PWM (Berechnung der Frequenz, der PWM) machen.

Benutzt wird ein Atmega16.

Die Tastenenprellung selber ist kein großes Problem, jedoch weiß ich 
nicht wie ich das mit PWM in Verbindung bringen soll.
Welche Frequenz muss ich berechnen?
Kann ich mit PWM dann einstellen wie lang der Entprell Vorgang dauert?

Diese Einstellungen wurden vorgegeben: (für die PWM)
1
//Set_Bit Funktion ist schon vorher definiert
2

3
SET_BIT(TCCR0,CS00);  //No Prescaling - CPU Takt
4
SET_BIT(TCCR0,WGM00); //WGM 00 & WGM 01 auf 1 --> Fast PWM Mode
5
SET_BIT(TCCR0,WGM01);
6
SET_BIT(TCCR0,COM00); //COM 00 & COM 01 auf 1 --> Set OC0 on compare match when up-counting. Clear OC0 on compare match when downcounting
7
SET_BIT(TCCR0,COM01);


Vielen Dank im Voraus.
Gast #1218385
Lesenswert?

Häh?

Ich vermute mal eher, das es darum geht mit enprellten Tasten die 
PWM-Parameter zu beeinflussn. Eine Möglichkeit mittels PWM eine 
Tastenentprellung zu machen ist mir nicht bekannt.

Kannst Du vielleicht mal den Aufgabentext posten?
Gast #1218464
Lesenswert?

Leider haben wir keinen konkreten Aufgabentext bekommen... das einzige 
was der Lehrer zur Abgabe hingeschrieben hat war:

mit kurzer Doku, wie das Ding funktioniert
-> Entprellung
-> Einstellung PWM (Berechnung der Frequenz, der PWM)

Das mit der PWM habe ich leider nicht verstanden. Jedoch vermute ich, 
dass die Entprellzeit damit eingestellt wird.

Das Programm ist eigentlich nur ein Zähler. 2 Taster werden angesteuert 
(Aufwärtszählen, Abwärtszählen). 1111 ist der Maximalwert (also max 15).
Gast #1218472
Lesenswert?

Entprellung an sich ist kein Problem.
Zwei Taster entprellen auch nicht. (Gibt hier was vielgelobtes von Peter 
Dannegger).

"Einstellung PWM (Berechnung der Frequenz, der PWM)"
ist ein bischen merkwürdig.
Wenn man die Timerparameter kennt kann man die Frequenz der PWM 
ausrechnen. Aber das macht man einmal auf dem Papier und nicht mit einem 
Programm.

Es steht also zu vermuten, das im Zusammenhang mit:
>Das Programm ist eigentlich nur ein Zähler. 2 Taster werden angesteuert
>(Aufwärtszählen, Abwärtszählen). 1111 ist der Maximalwert (also max 15).
gemeint ist, das der PWM-Zyklus in 16 Teile geteilt und in dieser 
Auflösung mit den Tasten eingestellt werden soll.

>Die Tastenenprellung selber ist kein großes Problem, jedoch weiß ich
>nicht wie ich das mit PWM in Verbindung bringen soll.
Ich auch nicht.

>Welche Frequenz muss ich berechnen?
Keine Ahnung. Macht eben, wie oben beschrieben, keinen Sinn.

>Kann ich mit PWM dann einstellen wie lang der Entprell Vorgang dauert?
Habe ich noch nie gehört sowas.

Wie ich sehe bist Du selbst auch nicht in der Lage das unklare an der 
Aufgabenstellung zu erkennen. Frage am besten nochmal den Lehrer.

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