PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Aufteilung des Flashspeichers von AVR32UC3B



bmtil
11.10.2012, 12:27
Hallo,
ich bin gerade dabei ein Programm fuer meinen AVR32UC3B Mikrocontroller zu schreiben und habe ein Problem.
Der Controller besitzt einen großen Flash-Speicher mit 512kbyte Platz.
Für mein Programm muss ich diesen Speicher in 3 gleich große Bereiche aufteilen, damit die Unterprogramme auf verschiedene Bereiche zugreifen können.
Das Programm laüft in folgenden Schritten ab:
1. Es wird gewartet bis der erste Datenvektor im ersten Speicherbereich angekommen ist (erste Interruptroutine), davor steht im ersten und im dritten Speicherbereich ein 0-Datenvektor
2. Der 0-Datenvektor wird mit dem ersten Datenvektor ueberschrieben, und der erste Datenvektor wird zusaetzlich in den dritten Speicherbereich kopiert
3. Wenn der erste Datenvektor angekommen ist, wird dieser erste Datenvektor kodiert (Differenz erster Datenvektor-0-Datenvektor aus dem dritten Speicherbereich) und in den zweiten Speicherbereich geschrieben
4. Wenn die Kodierung abgeschlossen ist, wird eine Sendefunktion aufgerufen, diese sendet den kodierten Datenvektor weiter (zweite Interruptroutine), der erste und der zweite Speicherbereich werden geleert
5. Wiederhole den Vorgang 1-5 (nur eben bei der Kodierung dann zweiter Datenvektor-erster Datenvektor).


Es geht im Endeffekt immer darum die Kodierung zwischen den ersten und den dritten Speicherbereich durchzuführen, wenn diese fertig ist, dann wird in den dritten Speicherbereich das gechrieben, was davor in dem ersten Speicherbereich stand.

Ich weiss momentan nicht, wie ich diese drei Speicherbereiche definieren und darauf zugreifen kann, bzw. ob das so ueberhaupt geht.
Ich bin sehr dankbar dafuer, wenn mir jemand auf die Spruenge helfen koennte.
Viele Grueße, bmtil