Hi, Habe hier gerade einen MSP430F5310 herumliegen und möchte ihn gerne sehr stromsparend betreiben: Aktueller Aufbau: MSP430 auf Platine (diskret) nur mit VCC-Puffer-Caps und VCore-Cap Programmieren via JTAG (FET430UIF) Aktuell verwende ich die internen Taktgeber (DCO auf 1MHz (FLL)) sonst keinerlei Peripherie etc. (while(1)); Probleme: - Ich kann nicht mit 1,8V Programmieren sondern nur mit 3V VCC (extern versorgt) - Ich erreiche niemals die angestrebten 3,0uA max bei 2,2V im LPM3 VLO (aktuell bin ich bei ca. 50uA) Zum Rapid Prototyping verwende ich CCS5 mit MSP430ware Was kann ich nun optimieren um näherungsweise diese Stromwerte zu bekommen?
Die unbenutzen Pins hast du so geschaltet wie im User Guide steht? Der Controller steht also nur im LPM3 und hat auch keine Interrupts an?
genau! Alles wie es im Datenblatt steht. Hab sogar eine zweite Platine erstellt/getestet um Leck/Kriechströme auszuschließen. PS: Programmieren geht endlich, habe den RST-Pullup zu groß gewählt ;) Aber mit dem Stromverbrauch komm ich noch nicht hin.
... na klar! Wär ja ein Anfängerfehler! http://processors.wiki.ti.com/index.php/Current_Consumption_Estimation_for_MSP430
Also wenn die PINs alle als Ausgänge geschaltet sind würde ich auf Peripherie/Clock tippen. 50µA über Kriechströme wäre schon arg viel. Vielleicht mal ADC an und wieder ausschalten und dann den Strom messen? Ist die 1MHz Clock wirklich aus? Also nurnoch 12kHz an? Wenn das nicht richtig konfiguriert ist kann die schon mal nebenher noch laufen.
So Update also anscheinend gabs da mal nen Bugfix: mit Codezusatz...
1 | #define SYS14_WORKAROUND // Comment this line if silicon revision has SYS14 bug fixed
|
2 | |
3 | #ifdef SYS14_WORKAROUND
|
4 | #define INIT_MEMORY_ADDR 0x0900
|
5 | unsigned int *Address = ((unsigned int*)INIT_MEMORY_ADDR); |
6 | #endif
|
7 | |
8 | .
|
9 | .
|
10 | .
|
11 | |
12 | #ifdef SYS14_WORKAROUND
|
13 | *Address = 0x9628; |
14 | *(Address+4) = 0x0800; |
15 | *Address = 0x9600; |
16 | #endif
|
... erhalte ich nun 22uA. Die gilt es nun auch zu reduzieren. Allerdings wundert mich warum eine "Sprungadresse" den Strom ansteigen lässt. Mach ich den "define" weg... geht der Stromverbrauch wieder hoch!
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.