Atmega 328P synchrone Timer, Totzeit Vollbrücke

OP #3399824
Guten Tag in die Runde.
Ich erzeuge mir über zwei 8-Bit Timer vier PWM-Signale, die eine 
Vollbrücke ansteuern sollen. Hierfür verwende ich zwei "antiparallele" 
Look-up-Tabellen mit den Comparewerten.
Aktuell "synchroniesiere" ich die beiden Timer über die Voreinstellung 
des einen Timers auf einen Zahlenwert. Ich habe es noch nicht getestet, 
aber ich denke der Zahlenwert muss bei jeder Taktfrequenzänderung 
angepasst werden. Im Forum habe ich einen anderen Beitrag gefunden, 
indem bei der Erzeugung einer Totzeit zwischen den jeweiligen 
Schaltsignalen die Anpassung der Comparewerte angeraten wird.

Gibt es hier softwareseitig eine "elegantere" Lösung, um Timer- und 
Totzeitproblem zu lösen?

Anbei die Schaltsignale am uC:
Kanal1 schaltet HSS links
Kanal2 schaltet LSS rechts
Kanal3 schaltet LSS links
Kanal4 schaltet HSS rechts

Habe ich überhaupt Probleme mit der Totzeit? Ich verwende logic-level P 
und N-Kanal MOSFETs mit einer maximalen delay+rise time von 100ns.
#3399872
>  TCNT0=6;       // Timerwert setzen zum synchronen zählen
>  TCNT1=0;

Warum setzt du einen Wert auf 0 und den anderen Wert auf 6? Ist schon 
klar warum. Aber wenn du synchrone Timer brauchst, dann synchronisiere 
sie mit dem, was der Controller dazu anbietet:
1
GTCCR |= (1 << TSM) | (1 << PSRSYNC);
2
TCNT0 = 0;
3
TCNT1 = 0;
4
GTCCR &= ~(1 << TSM);

mfg.
Gast #3399902
Hi

Warum nimmst du nicht einen passenden Controller. ATTiny261..861 haben 
einen eingebauten Deadtime Generator und invertierte Timerausgänge. 
Genau für deine Anwendung gemacht.

MfG Spess

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 12 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.