Forum: Mikrocontroller und Digitale Elektronik fragen zum msp430f5310


von Dete K. (dete)


Lesenswert?

hallo zusammen,

ich habe einigen Fragen zum msp430f5310.

der benötigte Kondensator Cvcore (470nF) am anschluß Vcore (pin17) liegt 
gegen masse ?

ich messe im Betrieb an Vcore nur eine Spannung von 1,6V.
ist die Core-spannung IO so?

die Vcc für den controller (3,3V) erzeuge ich am LDOo Pin



gruß dete

von Dete K. (dete)


Lesenswert?

hallo, ich wieder

mein frage mit 470nF an Vcore gegen masse hat sich geklärt, ja der C muß 
gegen Masse.

die Frage mit der spannung an vcore bleibt.

es hat sich im laufe der zeit eine neue Frage ausgetan:

an rst hab ich 47k gegen vcc, 2,2nF gegen gnd
diese kombination hat doch den Grund den Controller etwas später aus dem 
reset kommen zulassen, nach dem die Vcc richtig anliegt.

ich erzeuge die 3,3V Vcc durch den integrierten LDO (wie oben erwähnt).
in der PDF (http://focus.ti.com/lit/ug/slau208h/slau208h.pdf   Figure 
30-2. 3.3-V LDO Power Up/Down Profile Seite 687) ist ein t-enable 
zwischen LDOo und LDOi eingetragen.

muß ich diese t-enable (wofür ich auch keinen wert gefunden habe) zur 
zeitverzögerung reset addieren?

also die zeitverzögerung am resetpin um die zeit vergrößern?

von Dete K. (dete)


Lesenswert?

guten morgen,

ich will mein problem mal neu beschreiben.

an dem msp430f5310 will der Quarz nicht schwingen (Anschlüße Xin, Xout)
ich habe schon verschiedene Quarze mit verschiedenen Kondensatoren 
ausprobiert.
Desweiteren auch mehrere von dem Controllern (ich glaube nicht das die 
samples von TI kaputt sind)
auch komm ich mit dem Programmiergerät nicht auf den Controller.

Zur zeit sind auf der Leiterplatte nur der Controller und die 5V 
Versorgung bestückt.

Wie oben schon geschrieben, benutzte ich den LDO im Controller um aus 5V 
--> 3,3V zu machen und damit den Controller zu versorgen.

bestückt sind weiterhin:

- die C´s an jeder vcc (100nF)
- 220 nF am LDO Ausgang (laut Datenblatt)
- 470 nF am Vcore (laut Datenblatt)
- 47k gegen Vcc / 2,2nF gegen gnd an reset

vesrtehe ich das richtig:
laut der http://focus.ti.com/lit/ug/slau208h/slau208h.pdf wird beim 
erkennen eine spannung an LDOi der Controller in den LPMx.5 modus 
gesetzt ?
und Weiterhin laut der slau208 ist in diesem Modus "all clock sources 
are disabled"

wo liegt mein fehler?

im voraus vielen dank für euere hilfe

dete

von Tobias K. (kurzschluss81)


Lesenswert?

Hast du den Quarz auch aktiviert in deiner Software?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Nach dem Reset wird beim MSP430 der Systemtakt mit dem internen 
RC-Oszillator DCO erzeugt. Um etwas mit einem Quarz anzufangen, muss der 
entsprechende Quarzoszillator konfiguriert und kontrolliert hochgefahren 
werden, das macht die in so gut wie jedem Codebeispiel vorhandene 
Sequenz
1
// LFXT1CLK = 8 MHz (HF)
2
// ACLK = LFXT1CLK /1
3
// MCLK = LFXT1CLK /1
4
5
BCSCTL1 |= XTS;                // ACLK = LFXT1 = HF XTAL
6
7
do
8
{
9
  IFG1 &= ~OFIFG;              // Clear OSCFault flag
10
  for (i = 0xFF; i > 0; i--);  // Time for flag to set
11
}
12
while ((IFG1 & OFIFG));        // OSCFault flag still set?
13
14
BCSCTL2 |= SELM_3;             // MCLK = LFXT1 (safe)

hier beispielshaft für einen 8-MHz-Quarz an XT1 eines 'F1611.

Sieh Dir die Codebeispiele an, die TI für die von Dir verwendete 
MSP430-Familie herausgibt, da gibt es auch welche, die die 
Initialisierung der Takterzeugung beschreiben.

von Dete K. (dete)


Lesenswert?

ich komme ja leider nicht per programmer auf den controller drauf.

ich benutze die IAR workbench. nach einem download /debug erscheint die 
meldung

.... device unknown

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Dete Kosschlovsski schrieb:
> ich komme ja leider nicht per programmer auf den controller drauf.

Das hat dann aber nichts mit dem Quarz zu tun, der ist dafür nicht 
erforderlich.

Dete Kosschlovsski schrieb:
> ich benutze die IAR workbench. nach einem download /debug erscheint die
> meldung
>
> .... device unknown

Vielleicht hat "die IAR workbench" ja recht und kennt den Controller 
nicht?

Der 'F5310 ist ja recht neu, vielleicht ist Deine nicht genannte Version 
der Entwicklungsumgebung schlicht und einfach zu alt?

von Dete K. (dete)


Lesenswert?

richtig, der quarz hat mit der programierung erstmal nichts zutun.
bei allen anderen projekten bei ich einen controler der msp familie 
eingesetzt habe, schwingte der quarz sobald ich die Vcc angelegt habe. 
Unabhängig davon, ob ich den controler zuvor programmiert hatte.

daraus nahm ich an, dass etwas mit meiner jetzigen schaltung nicht 
stimmt.

ich benutze die IAR Version V5.10.6.30180, Kickstart edition for MSP430

auch ist unter general options --> device der msp430f5310 auswählbar

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Gut, dann ist das geklärt. Wie groß ist der Kondensator am Reset-Pin? 
Der darf bei MSP430-Varianten, die das Spy-Bi-Wire-Protokoll 
unterstützen, auch dann nicht größer als 2 nF sein, wenn das 
Vierdraht-JTAG genutzt wird.

von Dete K. (dete)


Lesenswert?

da hab ich 2,2 nF drinne gegen gnd
und 47k gegen vcc

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Hmm. Wie sieht der restliche Schaltungsaufbau aus, welches 
Debuginterface nutzt Du, woher hast Du die Schaltung resp. -Idee?

von Dete K. (dete)


Lesenswert?

einen restlichen schaltungsaufbau gibt es noch nicht.
ich meine, auf der leiterplatte ist bisher nur der controller + die 
stromversorgung (5v) bestückt.
Später werden die IOs alle als Ausgänge konfiguriert. Zur zeit aber 
durch die nicht-bestückung noch offen.

als Debuginterface nutze ich JTAG, angeschloßen wie in:
http://www.olimex.com/dev/images/msp430-jtag.gif

das klappte so immer problemlos.

die schaltung habe ich so nirgens übernommen.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Dete Kosschlovsski schrieb:
> auf der leiterplatte ist bisher nur der controller + die
> stromversorgung (5v) bestückt.

Wie hoch ist die Spannung?!

von Dete K. (dete)


Lesenswert?

in der bereits bestückten stromversorgung erzeuge ich 5V.
diese spannung liegt am Controler pin 53 (LDOi) an und am pin 54(LdOo) 
bekomme ich 3,3V
damit versorge ich die AVcc´2 und die DVcc´s am controler
das habe ich aus der slau208 seite 688 so übernommen.

die spannungen messen ich so auch.
an Vcore (pin 17) messe ich nur 1,6 volt.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Gut, das geht dann.

An VCore hast Du auch den im Datenblatt auf S. 40 empfohlenen 
Kondensator angeschlossen?

Die Höhe der Spannung hängt von der Programmierung ab, näheres dazu 
sollte im Family Users's Guide im Abschnitt "Power Management Module and 
Supply Voltage Supervisor" zu finden sein, hier besonders auf PMMCOREVx 
achten.

von Dete K. (dete)


Lesenswert?

> An VCore hast Du auch den im Datenblatt auf S. 40 empfohlenen
> Kondensator angeschlossen?

ja, das ist ein 470nF gegen gnd angeschloßen
und an LDOo ein 220nF gegen gnd.

> Die Höhe der Spannung hängt von der Programmierung ab, näheres dazu
> sollte im Family Users's Guide im Abschnitt "Power Management Module and
> Supply Voltage Supervisor" zu finden sein, hier besonders auf PMMCOREVx
> achten.

richtig, da kann man die Core Spannung einstellen, das klappt aber nur 
wenn ich auf den controller drauf komme.

von Dete K. (dete)


Lesenswert?

hallo zusammen,

ich muß leider weiter nerven,

ich habe jetzt mittlerweile 3 identische Leiterplatte (überlieferung von 
pcb pool) mit 3 mal der selben bestückung (siehe oben)

alles ist identisch,

Spannungen, Stromaufnahme, verhalten beim versuch zu programmmieren, 
kein schwingen am quarz.

weitere Vermutungen:

beim versuch auf den controller zu zugreifen bekommen ich in der iar 
workbench die Fehlermeldung ...unknown device
trotzdessen das der controller der iar WB bekannt sein muß, da ich ihn 
unter options auswählen kann

laut der SLAU208 wird der Controller bei der Versorgung durch den LDO 
(zwar kurzzeitig) in den LPM x.5 gesetzt. in dem auch laut SLAU208 
...all clock sources are disabled werden
ebenfalls würde der LMP4 modus passen:
LPM4:
CPU/MCLK = off
FLL = off
ACLK = off
Vcore = on
ich finde (außer einer in software) keine hardware lösung (von außen) um 
in den aktive modus zu wechseln

bei weitere Recherche im Netz stieß ich auf die Möglichkeit einer 
kaputten JTAG-Fuse,
bei der man wohl auch nicht mehr per jtag auf den Controller zugreifen 
könne. sondern nur noch per SBW oder BSL


könnt ihr mir dazu hilfe geben


gruß dete

von Dete K. (dete)


Lesenswert?

hat keiner ne idee?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Vergleiche Deinen Aufbau mit dem auf Seite 79 in slau278f.pdf 
(http://www.ti.com/litv/pdf/slau278f) beschriebenen Target-Board 
"MSP-TS430RGC64B".

Das ist das "MSP430F53xx 64-Pin Target board"

http://focus.ti.com/docs/toolsw/folders/print/msp-ts430rgc64b.html

von Dete K. (dete)


Lesenswert?

ja, das ist so
das was ich habe entspricht dem wie es dort abgebildet ist

frage:

das thermal pad auf masse dient nur als kontakt zu einer größen 
kühlungfläche zur besseren wärmeableitung, oder hat das pad auch einen 
elektrischen zweck?

ich habe die fläche auf meiner leiterplatte, kann aber nicht messen ob 
das thermal pad elektrischen Kontakt zu dieser fläche hat (bei 
aufgelöteten IC)

wenn an pin 13 (Xout) kein Kondensator und kein quarz angeschlossen ist, 
welches potential mus es haben?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Wenn Du alles so gemacht hast, wie TI, also

Pin 9 (Vref+) über Kondensator an Masse
Pin 10 (AVcc) über Kondensator an Masse und an Vcc
Pin 14 (AVss) an Masse
Pin 15 (DVCC1) an Vcc
Pin 16 (DVSS1) an Masse
Pin 17 (Vcore) über Kondensator an Masse
Pin 39 (DVSS2) an Masse
Pin 40 (DVCC2) an Vcc

Pin 59 (SBWTCK) an JTAG Pin 8
Pin 60 (TDO) an JTAG Pin 1
Pin 61 (TDI) an JTAG Pin 3
Pin 62 (TMS) an JTAG Pin 5
Pin 63 (TCK) an JTAG Pin 7
Pin 64 (RST) an JTAG Pin 11 sowie RC-Netzwerk für POR

(59-64 für JTAG-Konfiguration angegeben)

dann sollte die Chose funktionieren.

Versuch mal, statt des internen LDO für die Versorgungsspannung eine 
externe 3V-Quelle zu verwenden.

von Dete K. (dete)


Lesenswert?

> Pin 9 (Vref+) über Kondensator an Masse

den kondensator hatte ich nicht, hab ihn aber mal reingelötet, die 
Spannung an ihm steigt unwahrscheinlich langsam an und ist nach einigen 
minuten noch bei etwa 1,5V - 1,7V

> Pin 10 (AVcc) über Kondensator an Masse und an Vcc

AVcc1 liegt an Pin 11

ich habe es mal mit externen 3,3V probiert. Dazu muß ich sagen das ich 
die 3,3V nur an den 220nF kondensator (am LDOo Pin) löten kann, und die 
5V vom LDOi trennen kann.
die Leitung vom LDOo zu den einzelnen Vcc´s liegen unterhalb des 
Controllers.
Somit kann ich zwar extern mit 3,3V die Vcc´s versorgen aber am LDOo 
liegen sie eben auch an.

aber am quarz tut sich nichts

-------------
desweiteren ist mir eben die readme.txt des OLIMEX programmers den ich 
benutze in die hände gefallen.
bis zur aktuellen Version 1.04 wird laut dieser readme der msp430f5310 
nicht unterstüzt.
was zumindest eine Erklärung für das Problem mit der IAR Workbench ... 
unknown device sein könnte

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Dete Kosschlovsski schrieb:
> AVcc1 liegt an Pin 11

Ja, Typo meinerseits.

> Somit kann ich zwar extern mit 3,3V die Vcc´s versorgen aber am LDOo
> liegen sie eben auch an.

Dann solltest Du das sein lassen. Der LDO mag sicherlich keine 
Fremdspannung an seinem Ausgang.

> desweiteren ...

Schön, daß Du das jetzt auch schon ansprichst. Dann dürftest Du den 
schuldigen verhaftet haben.

von Dete K. (dete)


Lesenswert?

>> desweiteren ...
>
> Schön, daß Du das jetzt auch schon ansprichst. Dann dürftest Du den
> schuldigen verhaftet haben.

das könnte die ursache für das ...unknown device problem sein.
das problem ist aber nicht der schuldige das der quarz nicht schwingt

naja ich besorg erst mal nen anderen programmer und meld mich dann 
wieder

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Dete Kosschlovsski schrieb:
> das problem ist aber nicht der schuldige das der quarz nicht schwingt

Der Quarz schwingt erst dann, wenn Dein Programm dem Oszillator 
mitteilt, daß er schwingen soll. Da Du Dein Programm aber nicht in den 
Controller hineinbekommt, kann es das nicht tun, und also schwingt der 
Quarz nicht.

Wie ich bereits schrieb, wird nach einem POR der Takt mit dem DCO 
erzeugt.

von Dete K. (dete)


Lesenswert?

hallo zusammen,

also,
wie ich vermutete, der Olimex Programmer unterstützt (noch) nicht den 
msp430f5310.
ich habe den MSP430-FETUIF von TI besorgt und siehe da ich komme 
problemlos auf den Controller drauf.

nochmal vielen Dank für eure Hilfe und eure unterstützung.

eine Frage hab ich aber noch bzw. folgenden Problem taucht nun auf:

der Controller verrichtet seinen Dienst nur wenn der Programmer 
dranhängt und ich mich in der IAR WB im Debugmodus befinde. Ansonsten 
nicht.

desweiteren schwingt der Quarz immer noch nicht auch wenn ich ihn 
softwareseitig einschalte.

codebeispiel von TI: MSP430F530x_ta2_14.c

das Beispiel hat nur zu Folge das, Xout immerhin schonmal von low auf 
high gesetzt wird.


gruß dete

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
Noch kein Account? Hier anmelden.