Re: MOV-Befehl auf Adresse Kategorie: Progr. Assembler, TaskingTools, OS (von André H. - 29.01.2005 21:29) | ||
Als Antwort auf MOV-Befehl auf Adresse von Thomas - 27.01.2005 6:05 | ||
| ||
Hallo Thomas, Kommandos an den Flash müssen prinzipiell an Segment 0 erfolgen. Lediglich das eigentliche Löschkomando 0x3030 mu� an das zu löschende Segment gesendet werden. Dein Compiler meckert, da Du sicher im Segemtet-Mode arbeitest. In diesem Fall mu�t Du mit EXTS das Segment bestimmen. Beachte aber bitte, da� alle Schreib und Löschroutinen icht im Flash ausgeführt werden dürfen. Diese müssen immer vorher in den internen RAM gealden und dort ausgeführt werden ! MfG André H. > Und noch ein kleines Problemchen... > > Beim Zugriff auf den Flash-Speicher, wird beispielsweise folgender Code benötigt um ein Segment zu > löschen: > > MOV R3,#0AAAAH > MOV 0AAAAH,R3 > MOV R3,#5555H > MOV 5554H,R3 > MOV R3,#8080H > MOV 0AAAAH,R3 > MOV R3,#0AAAAH > MOV 0AAAAH,R3 > MOV R3,#5555H > MOV 5554H,R3 > MOV R3,#3030H > EXTS R6,#1 > MOV 0,R3 > > Wobei R6 hier das zu Löschende Segment enhällt. Der A166 Assembler meckert hier: > MOV 0AAAAH,R3 > E 272: DPP-prefix expected > ... > Wenn ich nun ein EXTS vor die entsprechenden Befehle setze, gibt der Assembler keinen Fehler mehr aus, > jedoch scheint das Löschen nicht korrekt zu funktionieren. Bei der Kontrolle hängt sich die C-Control > dann wieder in einer Endlos-Schleife auf. > Ich bin mir aber auch nicht sicher, welches Segment ich hier angeben soll. Ebenfalls das zu löschende? > Oder gibt es noch einen anderen Weg diese Meldung zu umgehen. Der gleiche Quellcode in Reads166 > bringt keinen Fehler, Ich möchte aber trotzdem den A166 verwenden, da ich mich mit einigen anderen > Sachen dort nicht so genau auskenne... > > Vielen Dank einmal wieder für eure Hilfe > > Gru� > > Thomas > Antworten bitte nur ins Forum! Fragen per EMail auf Forum-Postings werden nicht beantwortet! Das macht meine Heizung gerade | ||
Antwort schreiben Antworten: |