Hallo Leute, ich stehe vor folgendem Problem. Obwohl ich beim Phytec XC167 das startup file entsprechend für das integrierte TwinCAN Modul abgeändert habe, tut sich nichts. Folgende Änderungen habe ich durchgeführt: CANDIS=0 -> TwinCAN enabled $(CONFIG_CS7=1) -> LxBus enabled -> Adressraum abgepasst Auch Hinweise aus dem errata sheet habe ich beachtet. Was ändert sich denn überhaupt nennenswertes über das TCONCS Timing Register? Wäre für Hilfe wirklich dankbar! rk Hier der wichtigste Auszug aus dem startup file. Das komplette File findet ihr im Anhang. ; ========== CONFIGURE EXTERNAL BUS BEHAVIOUR FOR CS7 AREA =========== ; ; --- Set CONFIG_CS7 = 1 to initialize the ADDRSEL7/FCONCS7/TCONCS7 registers ; --- Note: The CS7# chip default at reset allows to access the on-chip Twin-CAN $SET (CONFIG_CS7 = 1) ; ; Definitions for Address Select register ADDRSEL7 ; ================================================ ; _ADDR7 EQU 0x200000 ; Set CS7# Start Address (default 200000H) ; _SIZE7 EQU 4*KB ; Set CS7# Size (default 1024*KB = 1*MB) ; possible values for _SIZE7 are: ; 4*KB (gives RGSZ1 = 0) ; 8*KB (gives RGSZ1 = 1) ; 16*KB (gives RGSZ1 = 2) ; 32*KB (gives RGSZ1 = 3) ; 64*KB (gives RGSZ1 = 4) ; 128*KB (gives RGSZ1 = 5) ; 256*KB (gives RGSZ1 = 6) ; 512*KB (gives RGSZ1 = 7) ; 1024*KB or 1*MB (gives RGSZ1 = 8) ; 2048*KB or 2*MB (gives RGSZ1 = 9) ; 4096*KB or 4*MB (gives RGSZ1 = 10) ; 8192*KB or 8*MB (gives RGSZ1 = 11) ; (RGSZ1 = 12 .. 15 reserved) ; ; Definitions for Function Configuration Register FCONCS7 ; ======================================================= ; ; ENCS7: Enable Chip Select (FCONCS7.0) _ENCS7 EQU 1 ; 0 = Chip Select 0 disabled ; 1 = Chip Select 0 enabled ; ; RDYEN7: Ready Enable (FCONCS7.1) _RDYEN7 EQU 1 ; 0 = Access time controlled by TCONCS7.PHE7 ; 1 = Access time cont. by TCONCS7.PHE7 and READY signal ; ; RDYMOD7: Ready Mode (FCONCS7.2) _RDYMOD7 EQU 1 ; 0 = Asynchronous READY ; 1 = Synchronous READY ; ; BTYP7: Bus Type Selection (FCONCS7.4 .. FCONCS7.5) _BTYP7 EQU 2 ; 0 = 8 bit Demultiplexed bus ; 1 = 8 bit Multiplexed bus ; 2 = 16 bit Demultiplexed bus ; 3 = 16 bit Multiplexed bus ; ; ; TCONCS7: Definitions for the Timing Configuration register ; ========================================================== ; ; PHA7: Phase A clock cycle (TCONCS7.0 .. TCONCS7.1) _PHA7 EQU 0 ; 0 = 0 clock cycles ; : = : ; 3 = 3 clock cycles ; ; PHB7: Phase B clock cycle (TCONCS7.2) _PHB7 EQU 0 ; 0 = 1 clock cycle ; 1 = 2 clock cycles ; ; PHC7: Phase C clock cycle (TCONCS7.3 .. TCONCS7.4) _PHC7 EQU 0 ; 0 = 0 clock cycles ; : = : ; 3 = 3 clock cycles ; ; PHD7: Phase D clock cycle (TCONCS7.5) _PHD7 EQU 0 ; 0 = 0 clock cycles ; 1 = 1 clock cycle ; ; PHE7: Phase E clock cycle (TCONCS7.6 .. TCONCS7.10) _PHE7 EQU 0 ; 0 = 1 clock cycle ; : = : ; 31 = 32 clock cycles ; ; RDPHF7: Phase F read clock cycle (TCONCS7.11 .. TCONCS7.12) _RDPHF7 EQU 0 ; 0 = 0 clock cycles ; : = : ; 3 = 3 clock cycles ; ; WRPHF7: Phase F write clock cycle (TCONCS7.13 .. TCONCS7.14) _WRPHF7 EQU 0 ; 0 = 0 clock cycles ; : = : ; 3 = 3 clock cycles ; ;----------------------------------------------------------------------- -------
Wäre schön, wenn du noch ein kurzes "und so habe ich das Problem gelöst" schreibst. Auch wenn mein XC16x zur Zeit einstaubt (weil der XC22xx einfach bequemer ist), würden andere bestimmt auch gerne teilhaben. Danke TManiac
Hallo, ok, hier eine kleine Zusammenfassung: Datei start_v2.66: CANDIS = 0 -> TwinCAN enabled Die Einstellungen für den LxBus wie oben gepostet verwenden. Wichtig: Startadresse muss auf 0x200000 zeigen und CONFIG_CS7 = 1. FCONS7 und TCONS7 wie oben übernehmen. Wichtig: Bei Verwendung des Phycore-XC167 sind die Aus-/ und Eingänge des TwinCAN Moduls standardmäßig auf Port 4. Diese müssen softwareseitig auf Port 9 gelegt werden (über Register DP9, die beiden Port 9 ALTSEL-Register und CAN_PISEL). Dann sollte es klappen! Grüße Robin
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.