mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Stellung OC-PIN nach abschalten der PWM


Autor: Thomas O. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

habe mal ne Frage was nach dem abschalten der PWM mit einem Pin
passiert, hat er die Stellung die er vor dem Einschalten der PWM hatte
oder ist es eher so das man sich darauf nicht verlassen kann und ihn
neu beschreiben sollte. Kurzgefasst schauts so aus

Sicherstoppen:
sbr temp, 0b00001000    ;OC0-Pin high, zieht N-FET gegen Masse
out portb, temp         ;damit Motor nicht unerwartet anläuft

PWMUebergabe:
lds temp, DVS           ;Lade PWM-Wert aus Speicherzelle im SRAM
out OCR0, temp          ;Übergebe an PWM-Einheit

PWMein:
ldi temp, (0<<FOC0) | (1<<WGM00) | (1<<COM01) | (1<<COM00) | (1<<WGM01)
| (1<<CS02) | (0<<CS01) | (0<<CS00)   ;FAST-PWM
out tccr0, temp

PWMaus:
ldi temp, (0<<FOC0) | (1<<WGM00) | (0<<COM01) | (0<<COM00) | (1<<WGM01)
| (0<<CS02) | (0<<CS01) | (0<<CS00)  ;Disconnect OC0-PIN von
PWM-Einheit, Timer stoppen
out tccr0, temp

Sicherstoppen2:   Benötigt?
sbr temp, 0b00001000    ;OC0-Pin high, zieht N-FET gegen Masse
out portb, temp         ;damit Motor nicht unerwartet anläuft

Autor: Michael Wolf (mictronics) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde den Code einbauen, um sicher zu gehen das Du nach abschalten
einen definierten Zustand am Pin hast.

/Michael

Autor: Mark Hämmerling (haemi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klar, sicher ist sicher. Aber ist es nicht so, daß durch Aktivieren der
PWM der Wert in PORTx ignoriert wird, sich also durch die PWM auch
nicht verändert? Wenn dem so wäre, würde nach Abschalten der PWM wieder
der ursprüngliche PORTx-Wert auf den Ausgangstreiber geschaltet. Schau
doch mal, ob sich während der PWM der Registerwert von PORTx ändert.
Falls ja, wüßte ich nicht, wo der AVR den ursprünglichen Wert
zwischenspeichern sollte. Ich nehme an, im PWM-Modus wird an dem PORTx
"vorbeigemuxt".

Autor: Laeubi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wird dieser eine befehl dein Programm signifikant stören?
Sicher ist sicher...

Autor: Thomas O. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja stimmt schon "sicher ist sicher", hätte mich nur mal interessiert.
Dort wo ich die Schaltung betreibe komme ich leider nur mit nem
untermotorisieren Laptop hin. Muss mal schauen, werde es umbedingt noch
testen da es mich auch interessiert ob einfach nur vorbeigemuxt wird und
der Wert erhalten bleibt.

Autor: Hauke Radtki (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also bei der simulation wird der wert in im PORTx geändert. Aber ich
glaube mich zu errinnern, dass bei meinen versuchen mit PWM der wert
immer wieder auf den ausgangswert der vorher drinne stand zuruck fiel.
Aber wenn du durch die 2 befehle in keine timing oder sonstwas
schwierigkeiten kommst dann hau das rein.

Autor: Tobias Tetzlaff (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

im datenblatt des Mega8 und 128 steht,
das der OCR Pin low ist, wenn der PWM Wert null ist.
Also bleibt der Status nicht dort stehen,wo er ist, oder geht dahin, wo
er vorher war.

Gruß Toby

Autor: Mark Hämmerling (haemi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, der OCR-Pin selbst muß diesen Pegel annehmen. Aber wenn im PWM-Modus
nur ein Mux die PWM-Logik statt den PORT-Registerwert auf den
Ausgangstreiber schaltet, dann muß sich das PORT-Register dafür nicht
ändern. Der Simulator scheint das Register selbst zu ändern. Das muß
aber nicht unbedingt der Realisierum im Chip entsprechen. Ich weiß
nicht, wie präzise der Simulator den Chip nachempfindet.

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was sagt Bild 25 auf Seite 54 des Datenblatts?

...

Achja, da du den AVR-Typ nicht genannt hast bin ich mal vom MegaAcht
ausgegangen...

Autor: Thomas O. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es handelt sich um den ATM16.

@Hannes: Kannst du das kurz zitieren damit ichs im ATM16 Datenblatt
suchen kann?

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bild 26 Seite 53...

...

Autor: AxelR. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tabelle 21 in deisem Zusammenhang nicht unberücksichtigt lassen (Seite
54)....

Autor: AxelR. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
der Zustand des Ports wird vom Bit PVOE und PVOV überschrieben.
Der eigentliche Wert deines Ports bleibt im Ausgabelatch erhalten und
steht nach abschalten der PWM wieder zur Verfügung
Seite 62 Table 32.

Esst mehr Obst - lest mehr Datenblätter

Gruß zusammen

AxelR.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.