Hallo, ich steige gerade in ein Projekt ein, welches den TMS320F2812 mit Flash benutzt und versuche gerade zu verstehen wie ein Lese- und Schreibzugriff auf das Flash erfolgen soll. Zweck - Speicherung von Konfigurationsparametern. Bisher kannte ich dies so, dass hierfür ein externes EEPROM verwendet wird, welches einen Treiber, meißt I²C, benötigt. Das bedeutete dann, dass bei einem Lese- oder Schreibzugriff auf die Konfigurationsparameter eine entsprechende Funktion des Treibers augerufen wurde. Nun wird eben das interne Flash des TMS320F2812 verwendet. Bisher konnte ich durch die Handbücher herausfinden, dass ich das Flash in verschiedene Power-States setzen kann und Programm Code etwa vom Flash oder RAM ausführen kann. Jedoch habe ich noch keinen Plan, wie ein Zugriff auf das Flash zur Laufzeit funktioniert. Ich weiß nur, dass es noch einen Pipeline Mode gibt, welches Lese- und Schreibzugriffe schneller macht. Für Hinweise, Links oder womöglich Beispiel wäre ich sehr dankbar.
Einen Teil kann ich nun selbst beantworten. Ich habe nochmals in den Untiefen des Netzes weitergesucht. Für Schreibzugriffe, wie Programmieren und löschen, muss die FLASH API von Texas Instruments verwendet werden. In diesem Fall von folgender Seite herunterladbar http://focus.ti.com/docs/toolsw/folders/print/sprc125.html Jetzt sind noch zwei Fragen und weitere Frage offen. 1.) Wie erfolgen Lesezugriffe? Ist es womöglich ausreichend die Daten mit der API Funktion memcpy ins RAM kopieren? 2.) CRC Prüfung - Wenn der Programm Code im Flash liegt und die CRC geprüft werden soll, kann ganz normal mit Zeigern auf diesen Bereich zugegriffen werden? 3.) Zusatz zu 2.) CRC über Programm Code erstellen?
Hallo Andreas, Du hast ganz richtig erkannt, dass Du zum schreiben des Flash die Flash-API benutzen musst. Leider ist die Integration derselben in eigene Applikationen nicht trivial. Mit einiger Einarbeitung jedoch sicher machbar. Das Auslesen der Daten aus dem Flash ist ganz selbstverständlich über die Addresierung des entsprechenden Speicherraumes (der dann eben ins Flash zeigt) möglich. Ein Kopieren in das Ram ist nicht nötig. Allerdings erscheint mir die Ablage von Konfigurationsdaten im Flash recht aufwändig, bzw. auch nicht sehr effizient. Es gilt beim TMS320F2812 zu beachten, dass der Flash-Speicher in Segmente aufgeteilt ist. Diese Segment können immer nur im Ganzen gelöcht und neu programmiet werden. Damit gehen beim kleinsten Segment des TMS auf jeden Fall 8k-Worte drauf, auch wenn man nur 5 Worte benötigt. Wie gesagt, die Verwendung der Flash-API ist nicht ganz einfach und birgt auch einige Gefahren (versehentliches Beschreiben des Code-Security-Passworts). Wenn möglich würde ich also eher ein externes EEProm anschließen. Ist einfacher anzusteuern. Das ist dann bei kleineren Datenmengen auch deutlich schneller. Gruß, Dirk.
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.