- 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
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    35
    Beiträge
    3.501
    Blog-Einträge
    9
    Über 9,6Mhz kannst du nicht kommen bzw. wenn du den Controller schneller betreibst kann es passieren das der Controller nicht richtig arbeitet.
    Schaut ruhig mal auf meiner Homepage vorbei :
    http://kampis-elektroecke.de

    Oder folge mir auf Google+:
    Daniel Kampert

    Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.

    Gruß
    Daniel

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    30.07.2012
    Beiträge
    19
    ... das bezieht sich aber nur auf intern generierten Takt, oder? Denn lt. Datenblatt schafft der 13er 20MHz ...

  3. #3
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    35
    Beiträge
    3.501
    Blog-Einträge
    9
    Genau.
    Intern kann er nur 9,6MHz erzeugen. Die 20MHz musst du extern erzeugen und du kannst sie auch nur dann verwenden wenn du den Controller mit mind. 4,5V betreibst.
    Schaut ruhig mal auf meiner Homepage vorbei :
    http://kampis-elektroecke.de

    Oder folge mir auf Google+:
    Daniel Kampert

    Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.

    Gruß
    Daniel

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    30.07.2012
    Beiträge
    19
    ... ok, danke euch erstmal für die Hinweise.

    Ich habe jetzt mal geschaut, was wo bei rauskommt:
    Vorteiler immer aus. Bei 9,6 MHz komme ich auf umzu 17,5 kHz, bei 4,8 MHz umzu 9,2 kHz. Da sollte sich mit ein paar C's am Übertrager irgendwo eine Resonanz auf der Grundwelle oder einer der Oberwellen finden lassen.
    Ich werde den ganzen Trum mal zusammenstecken und schauen, ob ich da was wuppen kann ... Ich werde berichten ... Hat zwar nicht direkt was mit Robotik zu tun, wohl aber mit RC ...

  5. #5
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    35
    Beiträge
    3.501
    Blog-Einträge
    9
    Zitat Zitat von M_I_B Beitrag anzeigen
    ... ok, danke euch erstmal für die Hinweise.

    Ich habe jetzt mal geschaut, was wo bei rauskommt:
    Vorteiler immer aus. Bei 9,6 MHz komme ich auf umzu 17,5 kHz, bei 4,8 MHz umzu 9,2 kHz. Da sollte sich mit ein paar C's am Übertrager irgendwo eine Resonanz auf der Grundwelle oder einer der Oberwellen finden lassen.
    Ich werde den ganzen Trum mal zusammenstecken und schauen, ob ich da was wuppen kann ... Ich werde berichten ... Hat zwar nicht direkt was mit Robotik zu tun, wohl aber mit RC ...
    Wer sagt den das es immer direkt was mit Robotik zu tun haben muss
    Schaut ruhig mal auf meiner Homepage vorbei :
    http://kampis-elektroecke.de

    Oder folge mir auf Google+:
    Daniel Kampert

    Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.

    Gruß
    Daniel

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    30.07.2012
    Beiträge
    19

    Rotes Gesicht

    ... niemand sacht das, aber ich bin schon so lange in Foren unterwegs (da gab es das WWW noch gar nicht), das ich da vorsichtig geworden bin

    Sodele... Software ist fertig und tut, was sie soll. Anbei der Quellcode zur allgemeinen Verwendung, falls es wer braucht.

    PB0 befeuert direkt einen kleinen FET (3A- Typ aus der Grabbelkiste), der wiederum einen 1:10 Übertrager mit umzu 6V befeuert, der wiederum auf der Sekundärseite eine EL- Folie zum leuchten bringt.
    Der Teil ist erst im Kopf fertig und wird wohl morgen zusammen gesteckt.

    PB1 kümmert sich um Änderungen bei Druck auf das Wählrad, PB2 und PB3 um Statusänderungen beim Drehen des Rades... Welches Rad fragt ihr? Wählrad RC Sender Spektrum DX- Serie... Und nu ist wohl auch klar, das ich nicht nur schnöde das Display beleuchten möchte, sondern das auch schön haben will

    Code:
    $regfile = "attiny13.dat"
    $crystal = 4800000
    
    '$prog &HFF , &H72 , &HFF , &H00                                                 ' 9,6 MHz, Vorteiler aus
    $prog &HFF , &H75 , &HFF , &H00                                                 ' 4,8 MHz, Vorteiler aus
    
    Config Timer0 = Pwm , Compare A Pwm = Clear Down , Prescale = 1                 'PWM im Schnellgang
    
    Dim Z As Byte , T As Bit , L As Byte                                            ' Z= Zähler P-Breite, T= dunkel/hell, PWM Startwert
    Dim M As Bit , N As Bit , W As Byte , D As Byte                                 ' Merker für Rollen Eingänge, Geschwindigkeit Dimmer, AN- Zeit
    L = 8 : W = 10 : D = 10                                                         ' Vorbelegen
    
    Config Pinb.0 = Output                                                          ' PWM Ausgabe
    Config Pinb.1 = Input                                                           ' INT0 Eingang (Klicktaste)
    Config Pinb.2 = Input                                                           ' Eingang Rollen links
    Config Pinb.3 = Input                                                           ' Eingang rollen rechts
    Portb.1 = 1                                                                     ' Pullup einschalten
    Portb.2 = 1                                                                     ' Pullup einschalten
    Portb.3 = 1                                                                     ' Pullup einschalten
    
    On Int0 Isr_display                                                             ' Sprungziel bei Auslöung
    Config Int0 = Change                                                            ' Jeden Pegelwechsel nutzen
    Enable Int0                                                                     ' INT0 einschalten
    
    Gosub Isr_display                                                               ' Erstmal beim EInschalten Licht machen
    
    Do                                                                              ' Start Hauptschleife
       While T = 1                                                                  ' Licht ist an, also Ausdimmen
          Decr Z
          Pwm0a = Z
          If Z = L Then T = 0                                                       ' Ende, wenn Startwert erreicht
          Waitms W                                                                  ' Geschindigkeit des Dimmens
       Wend
    
       If Pinb.2 = M Then                                                           ' Start Abfrage der Rollen- Eingänge
          M = 1 : Gosub Isr_display                                                 ' und Sprung, wenn sich was geändert hat
       End If
       If Pinb.2 = M Then
          M = 0 : Gosub Isr_display
       End If
       If Pinb.3 = N Then
          N = 1 : Gosub Isr_display
       End If
       If Pinb.3 = N Then
          N = 0 : Gosub Isr_display
       End If                                                                       ' Fertig mit der Auswertung
    Loop
    
    
    Isr_display:                                                                    ' INT- und Sprungziel
       Disable Int0                                                                 ' Erstmal für Ruhe sorgen
       While T = 0
          Incr Z
          Pwm0a = Z
          If Z = 128 Then T = 1                                                     ' Bis 50% Puls/Pause hochzählen
          Waitms W
       Wend
    
       Wait D                                                                       ' Display für D Sekunden an lassen
    
       Enable Int0                                                                  ' Ab jetzt wieder horchen
    Return                                                                          ' und zurück zum Hauptprogramm
    
    
    End

  7. #7
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    15.01.2007
    Ort
    Göttingen
    Beiträge
    706
    Schön dass es klappt!
    Aber es wäre gar nicht nötig gewesen die Resonanzfrequenz des Übertragers anzupassen - denn man kann die PWM-Frequenz auch nahezu stufenlos variieren. Das geht im sogenannten "CTC"-Modus. CTC heißt "Clear Timer on Compare". Der Timer zählt in diesem Modus von 0 aufwärts, und wenn er den Wert des OCR-Registers erreicht, toggelt er einen Ausgang und wird sofort auf 0 gesetzt, um wieder von vorne zu beginnen. Heißt also, dass der Ausgang umso öfter getoggelt wird, je niedriger der Wert im OCR-Register ist - und den kann man ja in 256 Schritten variieren. In den Datenblättern sind sehr schöne, aufschlussreiche Grafiken hierzu abgebildet. Auch wenn´s jetzt auch schon mit der "festen" Frequenz funktioniert - aber vielleicht brauchst Du ja irgendwann noch mal eine variable Frequenz

Ähnliche Themen

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

Stichworte

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress