- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 7 von 7

Thema: Problem mit ATMega168A und PWM

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.715
    Blog-Einträge
    133
    Zitat Zitat von TechMo Beitrag anzeigen
    Also habe beides ausprobiert, leider ohne Erfolg.
    Hi,
    hab Dein Problem zum Anlaß genommen meinen am Samstag frisch gelieferten Mega88A auszuprobieren. Der ist bis auf den Speicher gleich dem Mega168A.

    Meine beiden Vorschläge von oben funktionieren. Mit 8MHz internem Takt gibt es ein Rechteck mit 32kHz am OC0A (PD6).

    Allerdings hab ich festgestellt, daß auch Dein OC1B (PB2) kein Rechteck ausgibt. Um den gleich dem OC0A zu kriegen, würde ich aus dem Timer0-Teil nur das WGM02 Bit löschen und dann

    im Timer1-Teil mit WGM10 und WGM12 den mode 5 einstellen (fast PWM 8 bit). Dann noch das OCR1BL Register mit 127 (0b01111111) setzten. OCR1C wird nicht gebraucht.

    etwas so:
    Code:
         ldi temp,0b00100001
         sts TCCR1A,temp
         ldi temp,0b00001001
         sts TCCR1B,temp
    ;ocr1b = 127
         ldi temp,0b00000000   ;zur Sicherheit ?
         sts OCR1BH,temp       ;zur Sicherheit wg 16Bit Register ?
         ldi temp,0b01111111
         sts OCR1BL,temp
    Gruß
    Searcher
    Geändert von Searcher (17.09.2012 um 22:19 Uhr)
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    28.08.2012
    Beiträge
    18
    So habe nochmal die Schlatung überprüft und es ist alles soweit richtig verbunden.

    Leider wird aber auch wenn ich den Teil für OC1B auskommentiere, an diesem Ausgang eine Spannung von etwa 1,1V abgegeben.Bei OC0A geht weiterhin gar nichts. Egal mit welcher Variante. Aus irgendeinem Grund leuchtet allerdings die LED, die ja eigt auf 1 geschaltet ist und damit nicht leuchten sollte.

    Ich bin stark verzweifelt.
    Wenn irgendjemand noch eine Idee hat woran es liegen könnte, wäre ich furchtbar dankbar.

    MfG

    TechMo

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    06.08.2008
    Ort
    Graz
    Beiträge
    521
    Hi, hab zwar keine Lösung, hatte aber genau das gleiche Problem mit dem Atmega168PA. PWM hat absolut nicht funktioniert, der gleiche Code in einem anderen Atmega Typ aber schon. (gleicher Timer, gleicher Code). Vielleicht gibts eine Besonderheit beim Atmega168??

    Mir ist bei Deinem Code aber nicht ganz klar welche Timer Du verwendest, OC0A und OC1B sind einmal Timer0 und Timer1...

    LG!
    alles über meinen Rasenmäherroboter (wer Tippfehler findet darf sie gedanklich ausbessern, nur für besonders kreative Fehler behalte ich mir ein Copyright vor.)

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    28.08.2012
    Beiträge
    18
    Ja genau, ich nutze Timer 0 (kommentierter Code) und Timer 1 (unkommentierter Code darunter). Werde aber heute mal ausprobieren beides an den selben Timer anzuschließen und nur den Compare Wert für die beiden Ausgänge zu verändern um verschiedene Ausgangswerte zu erhalten. Ich denke es muss iein Bit geben, dass ich übersehen habe zu setzen, da ja volle Geschwindigkeit ohne Probleme funktioniert. Nur das PWM funktioniert an dem Timer0 Ausgang überhaupt nicht.

Ähnliche Themen

  1. ATMega32 UART problem --> Problem gelöst
    Von ChristophB im Forum C - Programmierung (GCC u.a.)
    Antworten: 3
    Letzter Beitrag: 12.03.2010, 18:45
  2. Problem mit Atmega644P Erkennung (Bascom-Versions-Problem)
    Von Rohbotiker im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 11.08.2008, 18:52

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test