Hallo zusammen, in einem Projekt benutzen wir den pic32mx440. in Zwei Steuerungen läuft die gleiche Firmware (sysclk=80MHz) und mit dem gleichen externen Signal verbunden (INT0) und in der ISR wird ein Pulse ausgegeben. Der externe Interrupt kommt an den beiden Kontroller gleichzeitig, leider gibt es bei den Pulsen einen Jitter von etwa 250ns. Hat jemand Ahnung an was das liegen kann?
noch was: der INT0 Interrupt hat die höchste Priorität.
> Hat jemand Ahnung an was das liegen kann?
Weil die Interrupt Routine nicht "sofort" ausgeführt wird, sondern erst
einen oder mehrere Takte später. Im Datenblatt des Controller sollt drin
stehen, wieviele Takte es maximal sind.
Stefan us schrieb: > Weil die Interrupt Routine nicht "sofort" ausgeführt wird, sondern erst > einen oder mehrere Takte später. Im Datenblatt des Controller sollt drin > stehen, wieviele Takte es maximal sind das sind bis 5 sysclk (also 5x12,50=62,5ns) und worst case 125ns
Ich kenn zwar die innere architektur vom pic nicht aber - werden die beiden uCs von unterschiedlichen quarzen betrieben? - wie ist die ausgabe des pulses realisiert? hat die cpu direkten zugriff auf den ausgang oder sitzen da noch verzögerungen von einem bus bzw. eine eigene taktung der gpios dazwischen? - was genau meinst du mit jitter... die pulse sind unterschiedlich breit oder meinst du damit dass die pulse von den controllern nicht gleichzeitig kommen?
Ch. Kim schrieb: > Ich kenn zwar die innere architektur vom pic nicht aberp > > - werden die beiden uCs von unterschiedlichen quarzen betrieben? Ja, es zwei unterschiedliche Steuerungen > - wie ist die ausgabe des pulses realisiert? hat die cpu direkten > zugriff auf den ausgang oder sitzen da noch verzögerungen von einem bus > bzw. eine eigene taktung der gpios dazwischen? Mit LATASET = 1 wir der Ausgang gesetzt, also der Port direkt gesetzt.. > - was genau meinst du mit jitter... die pulse sind unterschiedlich breit > oder meinst du damit dass die pulse von den controllern nicht > gleichzeitig kommen? Nur die steigende Flanke der pulse zählt, und sie jittert. Der pbclk läuft mit 40mhz (sysclk=80mhz), hat das mit dem jitter zu tun?
Wie wird den SYSCLK erzeugt?? FRC mit PLL, Quarz mit PLL oder gemiensamer Quarzoscillator?
Chris B. schrieb: > Wie wird den SYSCLK erzeugt?? FRC mit PLL, Quarz mit PLL oder > gemiensamer Quarzoscillator? Je Steuerung mit einem externen Quarz + die interne PLL
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.