Salu zusammen
Ich habe noch ein anderes "Problem" oder besser gesagt, ich habe einfach
keinen Plan wie ich das angehen soll.
Geht immer noch um den 3D Cube
Schlussendlich möchte ich auf dem PC ein GUI haben mit welchem ich die
Muster erzeugen kann. Programmierung des GUI ist kein Problem (eine
Kollegin von mir ist ein JAVA3D Crack :o)
So, dann trudeln die Daten irgendwie über die serielle Schnittstelle zum
MSP (als File oder wie auch immer).
Ich sehe das Problem nicht darin, dass ich die Muster "online" anzeigen
kann, aber abspeichern und bei einem Neustart des Cube (ohne PC
Anbindung)
wieder ablaufen lassen.
Fragen die sich mir stellen:
1. Wo müssen die Daten hin? --> Flash? Wie macht man das mit der Adresse
ect? Programmiere in C.
2. Wie spreche ich die Daten bei einem Start des MSP an?
3. Wie speichere ich die Muster ab, kann ich von diesen übermittelten
Daten auf Funktionen zugreiffen die sich bereits in meinem Programm (im
MSP) befinden? Also z.B. Delay Funktion
4. In welchem Format müssen die Daten an den MSP übertragen werden? Habe
ja keinen externen Compiler, oder übertrage ich da gleich die Hex Werte
mit denen ich den Cube steuere (MAX7221)
Sorry für die wahrscheinlich dummen Fragen, aber mit so etwas musste ich
mich halt bis Dato nie beschäftigen.
Für eine allfällige Hilfe wäre ich sehr dankbar
Gruss aus der Schweiz
reflection
Die Hex-Werte abzuspeichern scheint mir ein guter Ansatz. Ist im
Programmspeicher genügend Platz (ein ganzer Block frei)? Soweit ich
weiß, läßt sich der Flash nur blockweise löschen. Teile der Firmware
dürfen dabei nicht in Mitleidenschaft gezogen werden. Wenn das nicht
geht, wäre seriell angebundener EEPROM oder DataFlash eine Lösung (über
SPI oder I2C). Die Firmware im MSP muß in jedem Fall geändert werden, um
die Daten aus dem Speicher statt über die serielle Schnittstelle zu
lesen. Vielleicht konfigurierbar über Abfrage einens externen Schalters.
Wie viel Daten hast du denn zu speichern? Und welchen MSP430 genau hast
du? Wie man den Flash beschreibt, löscht usw. steht in einem C-Demo von
TI. Ist bissl mehr als einfach nur drauf schreiben. Wenn du mehr als den
INFO-Mem benötigst, musst du am besten den Compiler anweisen, dir eine
Section dafür zu reservieren, Linker-File anpassen. Dann hast du die
Sektoren dann auf jeden Fall frei.
Hallo zusammen
Also ich habe einen MSP430F149. Ouha, wiviele Daten -> keine Ahnung :o)
Denke das ist nicht sooooooo viel. Aber eben, wie kann ich dann z.B. ein
Delay einbauen, kann ich auf Funktionen die ich im MSP Programmiert habe
zugreiffen, oder kann ich "nur" Werte für den MAX7221 speichern?
Sagen wir mal um eine Zeile anzuzeigen muss ich zuerst den Chip Select
der korrekten Ebene im Cube auf Low ziehen, dann die Adresse, z.B. 0x01
und den Wert 0xAA. So dann würde in der ersten Zeile ein Bitmuster
erscheinen, aber dann muss ich ja warten bis ich das nächste Muster
anzeige, ist ja sonst viel zu schnell. Muss ich dann in den Übertragenen
Daten die Delay Funktion bereits einbauen, oder wie mache ich das?
Denke das mit dem Flash schreiben bekomm ich schon irgendwie gebacken,
aber von der Logik der abgelegten Daten habe ich keine Ahnung. Sorry ist
ein wenig schwer zu beschreiben, hoffe ihr kommt trotzdem draus!
Greets reflection
Die "Musteranzeigeroutine", oder zumindest die Funktionen davon, die
immer gleich sind - wie Ausgeben der Daten an den MAX7221 und warten -
sollten schon in der MSP-Firmware realisiert werden. Im MSP läuft dann
ein "Abspielprogramm" für die am PC vorbereiteten Daten, die an den
MAX7221 gesendet werden sollen.
Du könntest das z.B. so in linearer Darstellung machen:
Anzahl Datenwerte
Adresse
Datenwert
Delay
Adresse
Datenwert
Delay....
Dann musst du das am PC ausrechnen, und übertragen. Allerdings musst du
schon wissen, wieviele Datensätze zu einem Muster gehören, woher sollen
wir das wissen? Die Funktionen sind natürlich in der Firmware fest, du
nimmst dann lediglich die Parameter aus dem Flash und führst eine nach
der anderen aus. Ganz vorne steht ja, wieviele Muster pro Durchlauf
sind.
Hö, so einfach kann die Welt sein. Danke für die Hilfe, denke ich habe
es jetzt kapiert wie ich es machen muss. Ist ja eigentlich auch logisch!
Mit ich weiss nicht wieviel Daten, meinte ich, dass ich halt nicht genau
weiss wie ein Muster aufgebaut ist. Kann ja z.B. nur aus einem
Buchstaben bestehen, aber genau so gut kann es aus einem anzuzeigenden
String bestehen. Dann wären das natürlich viel mehr Daten.
Werde mich mal ins Flash Proggen einlesen. Habe schon den slaa von TI
durchgelesen und das scheint einigermassen klar. Also das mit Flash
freigeben ect.
Werde mich wieder melden wenn noch Fragen auftauchen sollten!
Merci schonmal für die Antworten
Gruss reflection