Hallo, weiß jemand wie ich in das Infosegment A einen Wert schreiben kann? Folgenes Listing zeigt wie ichs machen will, sieht jemand den Fehler? Flash_ptr = (char *) 0x1080; // Initialize Flash pointer while(FCTL3 & BUSY); FCTL2 = FWKEY + FSSEL_1 + FN0; // MCLK/2 for Flash Timing Generator FCTL3 = FWKEY; // Clear Lock bit FCTL1 = FWKEY + WRT; // Set WRT bit for write operation P5OUT |=0x01; *Flash_ptr = 0x33; // Write value to flash while(FCTL3 & BUSY); P5OUT &=~0x01; FCTL1 = FWKEY; // Clear WRT bit FCTL3 = FWKEY + LOCK; // Set LOCK bit Am Port5.4 messe ich einen MCLK von 714kHz Gruß Gerhard
Was ist denn das Problem? Schon mal das TI-Beispiel angeschaut? Da steht doch alles drin.
Hallo Christian, das Problem ist, dass am Ende nichts im Flash-Speichersegment steht, alles FF. Natürlich habe ich das Beispiel von TI probiert, läuft auf meinem Eval.-Board auch nicht. Selbst der User-Guide hat mir nicht wesentlich weitergeholfen. Gruß
Das hier klappt auf dem F1611 wunderbar:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
Mein SMCLK läuft mit 4,096MHz.
Hallo Christian, vielen Dank, ich habe dein Listing angepasst und ausprobiert, aber auch damit sehe ich keine Änderung im Flashsegment. Ich bin etwas ratlos, ich gehe jetzt erstmal eine Runde laufen. Gruß
Auch wenn auf dem ersten Blick die Takt Einstellungen auch OK scheinen, würde ich mal in der Richtung rumprobieren.
Vielleicht hast du in deinem Debugger eingestellt, er soll beim Flashen den Infomem mit löschen? Der Takt ist eigentlich recht weitläufig erlaubt...
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.