Hallo Leute, ich bin gerade am verzweifeln. Mein Problem: Ich habe das Demoboard des Tricore TC1797 (Triboard). Hierfür kann man ja bei Tasking v3.3 ein leeres Projekt mit Start und Linker-Dateien erstellen. Dann kann man sich ein einfaches Projekt (bspw. LED anschalten) via DAvE basteln und diesen Code in Tasking einfügen. Jetzt noch kurz eine Endlosschleife in die main-Funktion und via run oder debug auf den Controller geflasht. Passt alles wunderbar. LED leuchtet. Aber sobald man den hardware reset durchführt wird das Programm nicht mehr ausgeführt. Wahrscheinlich weil bei run ein bestimmter Start mit ausgeführt wird und dieser dann nach dem Hardwarereset nicht automatisch geschieht. Gibt es eine Anleitung, wie man ein einfaches Projekt macht, welches auch nach dem Reset noch funktioniert? Ich habe auch schon versucht, die wichtigen Infos die DAvE vorschlägt aber nicht selbst machen kann: Begin of Important Settings for the Start-Up File All following settings must be set in the start-up file. You can use DAvE's project file (*.dpt) to include this register values into your compiler EDE. System Peripheral Bus Control Unit (SBCU): SBCU starvation protection is enabled the debug trace is enabled. Error information is captured in register SBCU_EADD, SBCU_EDAT and SBCU_ECON sample period of request for starvation protection: 64 SBCU bus time-out value: 65536 cycles this register must be set in the start-up file SBCU_CON = 0x4009FFFF; LMB External Bus Unit (EBU): - enable the EBU module clock this register must be set in the start-up file EBU_CLC = 0x00010000; External Arbitration: - EBU is disabled this register must be set in the start-up file EBU_MODCON = 0x00000040; End of Important Settings for the Start-Up File in die cstart.c über die Reiter einzufügen. Leider finde ich dort keinen Eintrag EBU_MODCON und mit den Einstellungen, die ich vornehmen konnte funktioniert es auf alle Fälle nicht :-( Weiß jemand Rat? Danke im Voraus
Hallo, mir ist gerade aufgefallen, dass durch die Angabe des Boards (TriBoard1797) das lsl-File in der Art verändert wird, dass ein sogenannter xram_8_a Ramspeicher eingeführt wird. Wenn ich das richtig sehe ist dies der Externe Ramspeicher, welcher sich auf dem Board befindet. Wenn ich diesen als "reserved" markiere wird er nicht benutzt und stattdessen der interne Ram verwendet. Dann funktioniert ein Reset auch und die Firmware wird danach erneut gestartet. Wahrscheinlich wird also der xram über run oder debug initialisiert, über meine Firmware alleine aber nicht. Weiß vielleicht jemand von euch, wie man den externen Ram via DAvE oder evtl. auch manuell über Code initialisieren/ansprechen kann? Das wäre mir eine große Hilfe
> via run oder debug auf den Controller geflasht
Sicher? Hatte damals nicht Tasking benutzt aber "run" und "debug" hört
sich nun nicht wirklich nicht nach flashen an. Bei den meisten
Entwicklungsumgebungen die ich kenne lädt das lediglich das Programm per
Debugger ins RAM
PS: Afaik flasht man den TC1797 mit dem MemTool von Infineon ... http://www.infineon.com/cms/services/dgdl?folderId=db3a304314dca38901151e7143530fce&fileId=db3a30432239cccd0122743e54c9460a
Also ich habe es gerade nochmals getestet. Mit dem MemTool habe ich den Chip gelöscht (erase 2 MByte OnChip Program FLASH). Danach habe ich auf den HW-Reset gedrückt wodurch auf meinem Board die Firmware nicht mehr gestartet wird. Es leuchten keine LEDs und auch sonst ist keine Funktionalität (ASC und CAN) sind deaktiviert. Danach habe ich via Tasking software auf "run" application.board geklickt wodurch die Firmware wieder auf den Controller gebracht wurde. Diese läuft jetzt ebenfalls nach einem Hardwarereset und auch nachdem ich die Stromversorgung gekappt und wieder angesteckt habe (RAM müsste meines Wissens dadurch ja gelöscht werden). Das heisst, dass via run die Firmware auch geflasht wird. Leider ist aber mein Problem etwas anderes. Ich möchte ja eigentlich gerne den externen Ram auf dem Triboard verwenden. Dieser wird aber anscheinend noch nicht durch die DAvE Standardeinstellungen aktiviert/initialisiert. Tasking stellt aber durch seine Standard-LSL ein, dass er verwendet werden soll. Und dann funktioniert die Firmware nur wenn sie per run oder debug auf den Controller gebracht wird und danach nicht mehr nach einem Hardware- oder Power-On-Reset
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.