Hallo Ich versuche mich grade an einem AT91sam7x und würde gerne den pwm controller zum laufen bringen. bisher tut sich da aber nichts. Nun is es ja so, dass der PWM controller über den "advanced peripheral bus" kontrolliert wird. Hier eine Frage: wenn in ein register im ARM einen wert schreibe (z.B: das pwm duty cycle register), wird dieser in den speicher des controller geschrieben, an dessen adresse sich das register befindet. Aber wie kommen die daten nun über den APB zum pwm controller? geschieht dies automatisch, oder muss ich den transfer noch manuell starten? Danke!
ARMer wrote: > Hier eine Frage: wenn in ein register im ARM einen wert schreibe (z.B: > das pwm duty cycle register), wird dieser in den speicher des controller > geschrieben, an dessen adresse sich das register befindet. > Aber wie kommen die daten nun über den APB zum pwm controller? geschieht > dies automatisch, oder muss ich den transfer noch manuell starten? Aus Sicht des Prozessors unterscheidet sich Dein Peripherieregister nicht von irgendeiner anderen Speicherstelle (memory mapped). Die Bus Matrix erkennt anhand der Adresse welches Gerät angesprochen wird. Das ist nicht anders als der Zugriff auf irgendeine Adresse im RAM. Mit dem Speicherzugriff ist der Transfer abgeschlossen. Die Daten müssen nicht erst von irgendeinem Speicher in das eigentliche Peripheriegerät übertragen werden. Es kann aber sein, dass Du das Peripheriegerät erst "einschalten" musst. Gruß Marcus http://www.doulos.com/arm/
Danke für die Information - hat mir sehr geholfen. hast du evtl noch eine Tip für mich auf Lager für den PWM controller? ich hab den peripherie clock für den PWMC eingeschalten, die Register des PWMC gesetzt (hoffentlich richtig:)), aber am ausgang kommt nichts raus. der verwendete controller ist ein AT91SAM7X256 Danke für die Hilfe!
naja im PIO controller hab ich die "kontrolle" des pins dem PWMC übergeben. muss ich im PIO den pin zusätzlich noch als ausgang definieren?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.