- Labornetzteil AliExpress         
Ergebnis 1 bis 10 von 22

Thema: Tiny13(A), PWM, $crystal: Komisches Verhalten

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    30.07.2012
    Beiträge
    19
    ... ich hätte da noch eine Frage *duck...*

    Wie kann ich während der Laufzeit den als PWM laufenden Timer anhalten resp. das AUsgangssignal auf LOW setzen (und später wieder einschalten)??

    Ich habe es jetzt versucht mit Disable Timer0, pinb.0=0, portb.0=0. Nichts funktioniert


    Hat sich erledigt: Einfach Pwm0a = 0 und anschliessend ein Config Powermode = Powerdown funktioniert perfekt
    Geändert von M_I_B (17.09.2012 um 21:31 Uhr)

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    15.01.2007
    Ort
    Göttingen
    Beiträge
    706
    Wie kann ich während der Laufzeit den als PWM laufenden Timer anhalten resp. das AUsgangssignal auf LOW setzen (und später wieder einschalten)??
    Auch wenn´s mit PWM0A = 0 klappt, gibt´s noch zwei einfachere Methoden (die dem Verständnis im allgemeinen und speziellen auch förderlich sein könnten):

    "disable timer0" wird oft anfangs fälschlicherweise so verstanden, dass man damit den Timer anhält. Dem ist aber nicht so, sondern mit diesem Befehl wird lediglich der Interrupt deaktiviert, der beim Überlaufen des Timers ausgelöst würde (entsprechend aktiviert man diesen Interrupt mit "enable timer0")

    Der Befehl den Du suchst lautet ganz einfach "stop timer0" bzw. "start timer0", wenn er weiterlaufen soll.

    Nur diese Frage habe ich nicht ganz verstanden:
    Aber wie verändere ich das jetzt?
    WAS willst Du denn verändern??

    Und den PWM-Pin kannst Du über das Data-Direction-Register als Eingang konfigurieren. Dann führt er weder High noch Low, sondern ist einfach nur ein hochohmiger Eingang:
    DDRB.0=0

    Mit DDRB.0=1 wird er dann wieder zum Ausgang!
    Geändert von Sauerbruch (17.09.2012 um 22:32 Uhr)

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    30.07.2012
    Beiträge
    19
    Nur diese Frage habe ich nicht ganz verstanden:
    Also... (luft hol'):

    Du hattest mir ja den Trick und Code mit dem CTC- Mode verraten. Wie du siehst, steht das auch auskommentiert in meinem Quelltext. Sobald ich das aber aktiviere, erhalte ich zwar ein symetrisches Rechteck, aber das ändert sich dann in der Frequenz und nicht mehr in der Pulsbreite.

    Am Geschicktesten wäre m.E. eine kleine Unterroutine, die sich selbst auf die optimale Frequenz einstellt. Also Messung der Ausgangsspannung des Konverters via ADC, langsames Durchfahren des Frequenzbandes und ermitteln der optimalen Schaltfrequenz bei verschiedenen Tastverhältnissen (z.B. im 10% Raster). Das wäre deshalb sinnig, da zum einen eine zugeschnittene EL- Folie die Resonanzfrequenz verändert und zu alle dem auch noch ihre Kapazität mit der Helligkeit ändert, mal ganz abgesehen von Alterungserscheinungen solcher Folien. Mit so einer Routine könnte man nach dem Einbau z.B. bei jedem Systemstart die Werte neu ermitteln und hätte damit auch gleich eine "... bin gleich soweit..." Meldung.

    Aber erst mal wäre mir damit gedient, wenn ich erstmal in die Lage komme, die Frequenz zu fixieren/einzustellen. Wenn ich dann im Nachgang durch Rumfrickeln und deiner/eurer Hilfe auch noch verstehe, was du mir da an Code an die Hand gegeben hast, dann hätte ich schon einen weiten Sprung nach vorn gemacht...

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    15.01.2007
    Ort
    Göttingen
    Beiträge
    706
    Na ja, vielleicht kriegt der Controller beim letzten Befehl dieser Sequenz ja auch einfach nur Angst...
    Code:
    While T = 2
      nop
    Wend
    Goto Hell
    (was natürlich nur´n Spaß... )

    Ich habe zwar keinen blassen Schimmer was eine EL-Folie ist und was sie benötigt - aber zum Thema PWM kann man sicher folgendes sagen:
    Entweder kannst Du die Frequenz (nahezu) stufenlos einstellen; dies geschieht im CTC-Modus, der aber ein festes Impuls-Pausenverhältnis von 1:1 liefert. Oder aber Du generierst im "normalen" PWM-Modus ein Signal, dessen Impuls-Pausenverhältnis sehr fein justierbar ist - dann kannst Du aber nur ganz bestimmte, definierte Frequenzen erzeugen (in Abhängigkeit des Prozessortaktes, des Prescalers sowie der Bitbreite des verwendeten Timers.

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    30.07.2012
    Beiträge
    19
    ... macht nix Ich habe schon so einiges an Silizium in die Hölle geschickt; da kann der Tiny schon gerne mal bibbern vor Angst

    Ok, also geht entweder nur Frequenz oder nur PWM... Das erklärt einiges und ist ziemlich doof; wäre ja zu schön gewesen *grummel*

    Kann denn ggf. ein Tiny 44, 45, 2313 o.ä. beides gleichzeitig, also Frequenz und PWM steuerbar?

Ähnliche Themen

  1. RP6-Wetterstation komisches Verhalten
    Von Virus im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 5
    Letzter Beitrag: 03.01.2010, 12:35
  2. komisches Verhalten einer Schaltung
    Von Arduino99 im Forum Elektronik
    Antworten: 14
    Letzter Beitrag: 24.12.2009, 16:13
  3. Antworten: 18
    Letzter Beitrag: 06.06.2007, 09:22
  4. Komisches AVR Verhalten...
    Von EDatabaseError im Forum AVR Hardwarethemen
    Antworten: 2
    Letzter Beitrag: 21.02.2007, 20:44
  5. Komisches verhalten meiner CC1
    Von d4rkwolf im Forum Elektronik
    Antworten: 7
    Letzter Beitrag: 01.03.2005, 21:58

Stichworte

Berechtigungen

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

12V Akku bauen