INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Arduino MEGA2560 Timer PWM
03.04.2016, 13:53
Beitrag #1
Arduino MEGA2560 Timer PWM
Liebe Nutzer,

ich möchte mit meinem Arduino MEGA2560 eine PWM von 1Khz ausgeben.
Dies soll über den Timer und die Register funktionieren.

Im Internet gab es schon einige gute Ansätze, aber der zündende Funke fehlt mir noch.

Seite 126-157 handeln über die verschiedenen Einstellungen/Register.

Datenblatt:
http://www.atmel.com/images/atmel-2549-8...asheet.pdf

Könnte mir das vielleicht jemand kurz und knapp erklären?
Was ist der Unterschied zwischen dem Register A und B?

Danke für Eure Hilfe.


Mit freundlichen Grüßen
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
04.04.2016, 09:30
Beitrag #2
RE: Arduino MEGA2560 Timer PWM
(03.04.2016 13:53)Einsteiger94 schrieb:  ich möchte mit meinem Arduino MEGA2560 eine PWM von 1Khz ausgeben.

Muss das denn genau 1 kHz sein?
Die Frequenz wird über entsprechende Teiler eingestellt.
Default wäre 976 Hz, also nahe an deinen 1 kHz.

Hier ein Beispiel wie du die Frequenz hoch nehmen kannst, aber damit triffst du deinen gewünschten Wert nicht. Ich bin in diesem Beispiel ganz nach oben (Lüftersteuerung).

Code:
void setup()
{
  TCCR3B = TCCR3B & 0b11111000 | 0x01;    /*sets Arduino Mega's pin 5,3,2 to frequency 31250.   Timer 3
                                            Setting             Divisor     Frequency
                                            0x01          1          62500      <-- gewählt für PWM
                                            0x02          8          7812.5
                                            0x03          64          976.5625   <--DEFAULT
                                            0x04          256          244.140625
                                            0x05          1024          61.03515625      */

Hope it helps, Ralf aka RMR Smile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
04.04.2016, 10:17
Beitrag #3
RE: Arduino MEGA2560 Timer PWM
...und nicht vergessen das manche Timer vom Bootloader bzw. für die millis() und microSecond() Funktion benutzt werden. Von daher das erst mal untersuchen. Wobei der Mega2560 3 16 Bit Timer mehr hat als der 328er Chip und von daher müßte wohl einer der Timer frei zur Verfügung stehen....austesten macht schlau...
lgbk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
04.04.2016, 10:38
Beitrag #4
RE: Arduino MEGA2560 Timer PWM
(04.04.2016 10:17)Bitklopfer schrieb:  ...und nicht vergessen das manche Timer vom Bootloader bzw. für die millis() und microSecond() Funktion benutzt werden. Von daher das erst mal untersuchen....

Stimmt. delay() liegt da auch mit drauf. Beim Mega liegt das aber auf Timer 0. Somit versaut man sich hiermit schonmal nichts.
Die 3 hatte ich damals gewählt da mir keine Funktion bzw. lib eingefallen ist, welche ich damit "ärgere". Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  MAX7219 LED Dot Matrix für Mega2560 comfan 4 439 29.07.2017 22:40
Letzter Beitrag: Bitklopfer
  Timer lernen AnjinSan 14 749 26.06.2017 13:25
Letzter Beitrag: Tommy56
  [Mega2560 und Marlin]Was soll diese Fehlermeldung? ManniP 3 371 11.05.2017 14:03
Letzter Beitrag: Tommy56
  Firmata (Daten senden an den Arduino und empfangen vom Arduino) comfan 6 929 29.04.2017 14:29
Letzter Beitrag: hotsystems
  Münzeinwurf mit Timer KBLc 11 712 26.04.2017 21:21
Letzter Beitrag: KBLc
  Brauche Zeitverzögerung delay/millis/timer? Spiecky 17 1.167 15.04.2017 09:41
Letzter Beitrag: hotsystems
  Über drei Taster zwei externe Timer steuern Sidamo 23 1.243 09.01.2017 20:12
Letzter Beitrag: Tommy56
  Countdown Timer Uwe1475 23 1.626 19.10.2016 18:33
Letzter Beitrag: Uwe1475
  Hilfe: Mega2560 - ENC 28J60 - MYSQL Gandalf 1 533 28.07.2016 16:30
Letzter Beitrag: Gandalf
  (Mega) Timer 3 A, B & C Scheams 0 536 04.06.2016 17:09
Letzter Beitrag: Scheams

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste