Hallo, ich programmiere den MSP 430F1232. Jetzt will ich Analogwerte einlesen, und dann mit dem DTC in eine Speicherstelle schreiben. Dazu muss ich die Anfangsadresse definieren. Diese muss ich in das Start Address Register for Data Transfer schreiben. Wenn ich da eine konstante Speicherstelle reinlade klappt es. z.b. ADC10SA = 0x0200 Es soll aber so sein, dass ADC10SA = Adresse der Speicherstelle "Analogwert1" Kann mir jemand helfen
müssen wir die programmiersprache erraten, die du verwendest, oder sagst du sie uns noch?
Marc wrote:
> Kann mir jemand helfen
Wenn man nur wüßte, wobei.
Compilierts nicht (Fehlermeldung)?
Ausführungsproblem?
Was solls machen, was passiert stattdessen?
Compilierbarer Code?
Peter
Hallo, es kommt immer beim compilieren ein Fehler: a value of type "volatile unsigned int *" cannot be assigned to an entity of type "unsigned int" bei ADC10SA = &Analogwert1; kommt der obere Fehler
Marc wrote: > Hallo, > > es kommt immer beim compilieren ein Fehler: > > a value of type "volatile unsigned int *" cannot be assigned to an > entity of type "unsigned int" > > bei > ADC10SA = &Analogwert1; > > kommt der obere Fehler Mein Gott, wie soll man jemandem helfen, wenn er seinen Quelltext nicht herzeigt? Dann musst du halt entweder ADC10SA als volatile unsigned int * deklarieren (und nicht als unsigned int), oder einen cast schreiben:
1 | ADC10SA = (unsigned int)&Analogwert1; |
(Es gibt übrigens viele Bücher, aus denen man Grundlagen von C erfährt.)
> Dann musst du halt entweder ADC10SA als > volatile unsigned int * deklarieren Das scheidet aus, das ist in einer zum Build-System gehörenden Headerdatei definiert. Ein Typecast ist hier das Mittel der Wahl.
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.