Forum: Mikrocontroller und Digitale Elektronik msp 430 easyweb3


von Gideon (Gast)


Lesenswert?

hallo,

hab folgendes Problem, seit ich das Board das letzte mal debuggt habe 
kommt die  Fehlermeldung fatal error: securety fuse blown (bin mir 
sicher das ich das Bit nie gesetzt habe).

weis Jemand weiter ?

danke

benutze Parralelen jaytec Iar easyweb3

von Jörg S. (Gast)


Lesenswert?

Mach mal das easyweb so 10min stromlos und probier es dann noch mal.

von Gideon (Gast)


Lesenswert?

ne,

das klaptt nicht auch nich mit ner Stunde warten.
ist es denn möglich, dass das securety bit durch zufall gesetzt wird.
kann ich mir zwar eigentlich nich vorstellen wg. bestimmte zeit 
bestimmte spannung und so aber vieleicht weis ja jemand etwas.

wenns denn so sein sollte welche möglichkeiten zum debuggen hab ich dann 
noch und lassen sich diese genauso oder ähnlich wie ein jaytek benutzen 
??

danke

von Msp 4. (msp430_crew)


Lesenswert?

Hatten wir auch öfter!
Einfach Stromversorgung und JTAG ab, kurz warten, wieder ranstecken und 
dann ging es wieder!

von Christian R. (supachris)


Lesenswert?

Jo, liegt in den allermeisten Fällen an einem sich aufgehangenem 
Debugger, billigen Kabeln oder sowas. Mit dem LPT-Debugger kann man die 
JTAG-Fuse meines Wissens gar nicht durchbrennen. Falls sie wirklich 
durchgebrannt ist, kann man nur den Chip wechseln, da geht sonst gar nix 
mehr. Kein JTAG, kein Spy-Bi-Wire, kein Bootloader. Dazu ist sie ja 
gemacht.

von Stefan (Gast)


Lesenswert?

>Falls sie wirklich durchgebrannt ist, kann man nur den Chip wechseln, da geht 
>sonst gar nix mehr. Kein JTAG, kein Spy-Bi-Wire, kein Bootloader. Dazu ist
>sie ja gemacht.

Bootloader geht sehr wohl noch, dafür ist der ja gemacht ;-)
Aber mit debuggen ist tatsächlich Schluß!

von Christian R. (supachris)


Lesenswert?

Nutzt der originale BSL nicht auch den TCK-Eingang, der ja beim "Secure" 
durchgeschossen wird?

von Stefan (Gast)


Lesenswert?

Nein, nur BSLRX/BSLTX.
Ansonsten wäre der Bootloader ziemlich nutzlos!

von Christian R. (supachris)


Lesenswert?

Nana, das stimmt nun aber nicht. Der Bootloader braucht insgesamt 4 
Leitungen und Masse. Man muss erst den Reset auf Low halten, 2 mal an 
der TCK Leitung klappern und dann das Reset loslassen, sonst kommt man 
nicht in den werksseitig fest einprogrammierten Bootloader. Siehe hier: 
http://focus.ti.com/lit/an/slaa089d/slaa089d.pdf

von Stefan (Gast)


Lesenswert?

>Nana, das stimmt nun aber nicht. Der Bootloader braucht insgesamt 4
>Leitungen und Masse.
Naja, ich rede von Signalleitungen, GND ist da für mich 
selbstverständlich.
Dann hättest Du nämlich auch Vcc aufführen müssen, falls das 
BSL-Interface keine eigene hat ;-)

Wenn man's auf die Spitze treibt, braucht man nur zwei(BSLRX/TX)... jaja 
und GND...und Vcc...
Den Bootloader kann dann auch per Software über den BSL-Vektor 
anspringen.
Geht man den "normalen" Weg braucht's zusätzlich RST und TEST (bzw.TCK).
Auf was ich aber raus wollte: Das ganze funktioniert auch dann, wenn die 
JTAG-Fuse durchgebrannt wurde!
Steht übrigens auch in der SLAA089.

von Gideon (Gast)


Lesenswert?

danke für die Anworten,

aber mit strom weck nehmen komm ich nich weiter.
Die Leitungen am jteg  hab ich auch grad ma durchgepiept das ist es auch 
nicht.
kann man irgentwie explizit diagnostizieren das des ding wirklich durch 
ist?
weil chip tauschen sieht mir bei den beinchen nach stress aus.

thx

von Christian R. (supachris)


Lesenswert?

Hast du mal den PC aus und wieder ein geschaltet? Bei mir war das immer 
weg, wenn ich den MSP430 stromlos gemacht hatte und den USB-Debugger 
abgezogen hab. Die Fuse kann man ausmessen, welcher Strom bei welcher 
Spannung fließen muss, steht im Datenblatt ganz hinten.
Und ja, stimmt, per BSL kommt man mit dem richtigen Passwort dann noch 
drauf. Musste selber erst mal nachlesen.

von Gideon (Gast)


Lesenswert?

ok cool werd ich mich morgen ma ran machen.
pc aus ein hab ich auch schon gemacht hat nix gebracht.

von Msp 4. (msp430_crew)


Lesenswert?

Hab das hier noch in 'nem anderen Forum gefunden, vielleicht klappts 
damit:

I think this fixed the problem - in either case, before this I got a 
debug error "Security fuse blown". After doing this, I am able to 
download and debug code.

In IAR under [Project][Options...][Debugger][FET Debugger] Check "Attach 
to running target" and make sure the Connection section specifies LPT1 
(or whatever is appropriate for your env). Then uncheck "Attach to 
running target" for normal debug and download (verify Connection is 
again LPT1 or whatever you need).

von Gideon (Gast)


Lesenswert?

ja danke,
hatte ich auch schon gelesen hat nicht funktioniert

von Gideon (Gast)


Lesenswert?

so, hab die fuse gemessen ist nach meinem Ermessen ok.
hab die ganze geschichte jetz auch schon von einem andren rechner 
ausprobirt geht auch nicht (selbe Fehlermeldung)

von Msp 4. (msp430_crew)


Lesenswert?

Wie sieht's mit der Stromversorgung aus, bricht die vielleicht zusammen 
beim programmieren?

von Gideon (Gast)


Lesenswert?

wie würde sich dass denn bemerkba machen ?
hab grad ma die spannungen an den pinnen für den jtag gemmessen die 
fallen etwas ab wenn der jtag steckt ( 3.3 auf 2.8 ) aber das scheint 
mor doch recht normal zu sein.

von Msp 4. (msp430_crew)


Lesenswert?

Na die Betriebsspannung sollte nicht zusammenbrechen beim programmieren!
Wie versorgst Du das EASYWEB?

von Gideon (Gast)


Lesenswert?

mit einem 12V 800mA Netzteil

von Christian R. (supachris)


Lesenswert?

2,8V ist schon an der Grenze. Zum Flash schreiben brauchts er mindestens 
2,7V. Normal darf da nix absinken. Ist da sicher alles richtig 
verdrahtet?

von Msp 4. (msp430_crew)


Lesenswert?

12V ist 'ne ganze Menge! Wird da der LM1117 nicht ganzschön heiß?
Das die Betriebsspannung von 3,3V auf 2,8V zusammenbricht ist aber nicht 
normal!

von Gideon (Gast)


Lesenswert?

ne schon übers netzteil.

von Msp 4. (msp430_crew)


Lesenswert?

Was genau meinst Du damit?

von Gideon (Gast)


Lesenswert?

Das Netzteil steckt im Anschluss vom easyweb.

die Spannung VDD fällt nicht ab aber die an den anderen pinnen deswegen 
dachte ich das da normal ist.

das Netzteil ist einstellbar habs jetz auf 9V macht aber auch keinen 
Unterschied

von Msp 4. (msp430_crew)


Lesenswert?

Hmm, dann kann man die Stromversorgung schonmal ausschließen!
Tritt der Fehler nur beim Debuggen auf oder auch wenn Du "nur" das 
Binary auf den µC programmierst?
Wie programmierst Du den µC?

von Gideon (Gast)


Lesenswert?

auch wenn ich das Binary schreibe.

von Gideon (Gast)


Lesenswert?

mit IAR

von Msp 4. (msp430_crew)


Lesenswert?

Kenn mich mit IAR leider nicht aus! Kann man da direkt aus der 
Entwicklungsumgebung raus den µC flashen?
Vielleicht probierst Du mal ein anderes Programmiertool, z.B. das vom 
MSPGCC!

von Christian R. (supachris)


Lesenswert?

Oder mal MSPFET probieren, und das .a43 File direkt reinladen.
MSPFET: http://kurt.on.ufanet.ru/

von Gideon (Gast)


Lesenswert?

ein *.a43 kann ich nicht finden hab dann das *.d43 genommen und es mit 
MSPFET versucht... selbe Fehlermeldung.

von Gideon (Gast)


Lesenswert?

So! nachdem alles nichts geholfen hat wurde nun der msp430f149 gegen 
einen msp430f1611 ausgetauscht. habe jetzt das Problem das ich keine 
Ethernet Verbindung hin bekomme wenn ich selber ein Releas erstelle. 
Habe mir dann ein eine fertige Binärdatei geladen und diese auf den msp 
geschrieben, hatt funktioniert(waren keine Projekt Dateien dabei). Habe 
bis jetzt mit dem Iar gearbeitet musste aber auf crossworks wechseln wg. 
30 tage Version. Auf SoftBaugh.com (daher hab ich den Build) stand auch 
das die aktuelle Version slaa137a auf der ti seite mit dem msp430f1611 
kompatibel sein soll. also hab ich versucht die für crossworks um zu 
stricken. kann damit auch Debuggen aber dennoch keine Verbindung wie 
jemand weiter?

von Jörg S. (Gast)


Lesenswert?

>kann damit auch Debuggen aber dennoch keine Verbindung
Wenn du debuggen kannst, dann mach das doch :)

- Link LED an?
- RX LED blinkt bei Ping?
- Werden Daten aus dem CS8900 geholt?
- IP Adresse OK?
- Broadcasts kommen an?
- ....

von Gideon (Gast)


Lesenswert?

- Link LED an?                        Ja
- RX LED blinkt bei Ping?             blinkt willkührlich bei ping auch 
:->
- Werden Daten aus dem CS8900 geholt? Nein
- IP Adresse OK?                      Ja
- Broadcasts kommen an?               Nein

Pingen klappt nicht link ist da. Keine socketverbindung.

ich hab irgentwie das Gefühl das die Software doch nicht auf dem 1611er 
leuft ist nähmlich die selbe die ich damals für den 149er genommen habe.
Hat vieleicht jemand einen link wo man easyweb als crossworksprojekt für 
den  1611er runterladen kann oder kann mir sagen wo die unterschiede im 
quellcode  zwichen den beiden liegen ??
danke

von Christian R. (supachris)


Lesenswert?

Also das binary vom F149 laufen natürlich auf dem f1611 nicht (richtig). 
Du musst das schon neu übersetzen. Und vorher die Header-Dateien 
anpassen. Irgenwo müsste ja die msp430x14x.h inkludiert sein, da musst 
du die msp430x16x.h reinschreiben und deinem Compiler und Linker und 
ggf. Assembler in der Projektoptionen noch den F1611 mitteilen.

von Gideon (Gast)


Lesenswert?

danke, aber hats nicht gelößt hatte den 1611er im linker und debugger 
eingestellt.
die hadderdateien hatte ich nicht geändert hab ich jetz nachgeholt tut 
sich aber immer noch nichts.

von Gideon (Gast)


Lesenswert?

gibt es denn bis auf die hadder datei einen unterschied zwichen den 
beiden im quellcode?

von Gideon (Gast)


Lesenswert?

zitat: The sample code was org'ed for a F149, but the F1611 has less 
flash, so it needs to be reorg'ed appropriately.
hab ich von softbough kopiert.
wo setzt man den an wenn man wenn man den flash anpassen will ??

von Jörg S. (Gast)


Lesenswert?

Ich versteht das noch nicht ganz, kannst du jetzt debuggen (Breakpoints 
setzen) oder nicht? Wenn ja ist doch alles in Butter, einfach schauen 
wo's im Source Code hakt... Z.B. mal in der Funktion DoNetworkStuff() 
schauen ob das RX Flag (ActRxEvent & RX_OK) vom CS8900 gesetzt wird.

Mit CrossWorks kenn ich mich leider nicht aus, ich hätte dir empfohlen 
den IAR einfach weiter zu benutzen. Die 30 Tage kannst du verlängern in 
dem du einfach das Datum beibehälst. Dann ist der Compiler zufrieden und 
funktioniert bis in alle ewigkeit.

von Gideon (Gast)


Lesenswert?

Dass ist doch mal was.
So ich reise jetzt in der zeit zurück cu.....

von Christian R. (supachris)


Lesenswert?

Man könnte natürlich auch den neuen CCE3 nehmen, der ist frei bis 
16kByte Code. Oder gleich auf den GCC umschreiben, müssen nur die ISR 
Deklarationen angepasst werden. Am besten beispielsweise so:
1
#ifdef __ICC430__
2
#pragma vector=PORT1_VECTOR                  //IAR Compiler
3
__interrupt void PORT_1_ISR (void){
4
#else
5
interrupt (PORT1_VECTOR) wakeup PORT_1_ISR(void)          //GCC Compiler
6
{
7
#endif

Dann läuft der Code auf IAR, CCE3 und GCC ohne Fehler.

von Gideon (Gast)


Lesenswert?

hab jetz wieder den iar genommen hat beim ersten versuch 
funktioniert(sogar ohne die hadder dateien auf den 1611er anzupassen. 
Allerdings muss ich früher
oder später auf crossworks zurückkommen weil mein Prof das so will )-:
aber jetzt kann ich wenigsten vergleichen und schauen wo was schief 
leuft


danke

von Christian R. (supachris)


Lesenswert?

Kann ja eigentlich nur was kompiler-spezifisches sein. Ich schätze beim 
Crossworks werden die Interrupts anders deklariert als beim IAR.

von Jörg S. (Gast)


Lesenswert?

Wenn ich mich recht erinnere benötigt das easyweb3 überhaupt keine 
Interrupts.

von gideon (Gast)


Lesenswert?

so habs jetzt jetzt hinbekommen hab das projekt noch mal schritt für 
schritt neu erstellt denk mal das ich bei den ersten malen was falsch 
gemacht hab. Die interrupts kann man genau so benutzen wie bei iar gibt 
ne bibliotek wo die drin stehen.
noch mal danke für die hilfe!!!!!

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.