MPLAB Problem

Gast #1847963
Ich habe ein PICF24-projekt übernommen.
MPLAB installiert, neuster Compiler. Projekt eingefügt. Den PIC neu 
geflasht. Alles hat super funktioniert.
Ich habe ein bisschen an den Configs für den Clock rumgespielt. Und 
irgendwann hat der PIC merkwürdig rumgesponnen.
Also wieder die orginale unveränderte Firmware drauf und er spinnt 
immernoch rum.

Nun habe ich den PC, von dem ich das Projekt übernommen habe mal 
angeworfen und den PIC von da aus geflasht. Und siehe da, alles 
funktioniert. Ich habe mir das Projekt von dem PC nochmal auf meinen 
kopiert. Geht nicht.

Nun meine große Frage, woran kann es liegen, dass es von meinem PC aus 
nicht mehr geht (es ging ja am Anfang). Was kann ich übersehen haben? 
Gibt’s irgendwelche MPLAB-Einstellungen, die ich vergessen haben könnte?

Gruß
Klaus
Gast #1847972
Vielleicht stimmt Deine Fuse-Konfiguration im Code auch nicht. Schalte 
mal die Übernahme der Fuses aus dem Code ab. Vielleicht ist dies bei 
MPLAB des original Computers abgeschaltet. Und der Vorgänger hat die 
Fuses nur ein einziges Mal händisch eingestellt.
Gast #1847974
Danke für die shcnelle Antwort. Was meinst du mit "Linker-File?" Also 
der Pfad ist richtig gesetzt. Programmieren haut hin.

Ich bin noch am einarbeiten in die Materie. Ich werd mich mal über 
Fuse-Konfiguration belesen.
Gast #1847984
Ach damit sind die configuration bits gemeint. Die sind im Quellcode 
gesetzt.


// Setup configuration bits
_CONFIG1( JTAGEN_OFF & GCP_OFF & GWRP_OFF & COE_OFF & FWDTEN_OFF & 
ICS_PGx2 )
_CONFIG2( FCKSM_CSDCMD & OSCIOFNC_OFF & POSCMOD_XT & FNOSC_PRI & 
IOL1WAY_ON)

Diese hatte ich für einen Versuch geändert.

_CONFIG2( FCKSM_CSDCMD & OSCIOFNC_ON & POSCMOD_NONE & FNOSC_FRC & 
IOL1WAY_ON )

aber wie gesagt, die orginale Firmware wieder drauf zu spielen, bzw. die 
Änderung rückgängig machen, bewirkte leider nich.
Gast #1847999
Versuche die Einstellung zu finden, dass beim Programmieren nur geflasht 
wird und die Conf-Bits nicht mit geschrieben werden. Leider hab ich hier 
kein MPLab installiert, deshalb kann ich hier nicht nachsehen, wo die 
Einstellung abgeschaltet wird. Vergleiche die Einstellungen mit denen 
bei dem Original-Computer. Das Linker-File wird es nicht sein.
Gast #1848030
Ist bei
Programmer -> Setting (ICD 3 Settings) -> Manually select memories and 
ranges -> Häkchen bei "Configuration" rausgemacht. Häkchen bei "Program" 
drin gelassen.

Hatte vorher die "gute Firmware" drauf. Hat leider nix gebracht, im 
Gegenteil, am UART kam jetzt nur absoluter Mist raus. Übrigens ähnlich 
dem, was raus kam, als ich die Configuration-Bits auf den internen Clock 
umgestellt hatte. Quasi, als ich direkt an der Config rumgespielt habe.
Vielleicht besteht da ein Zusammenhang?

Die ICD3 Settings habe ich auf beiden PCs schon verglichen. Sind gleich.

Im übrigen ist die Compiler-Version 3.22 auf dem Orginal-PC. MPLAB ist 
8.40
Bei mir ist Compiler 3.24 und MPLAB 8.56

Könnte es daran liegen?
Gast #1848052
Hm... Da stimmt wohl was mit der Clock nicht. Also es scheinen schon die 
Conf-Bits (Fuses) zu sein. Kannst Du mit dem Oszi die Baudrate messen? 
Oder mal mit dem Original-Computer alles Flashen und dann mal die Fuses 
mit dem neuen System nur einlesen. Ich weiß da leider jetzt auch nicht 
weiter.


Ich kann später auf der Arbeit mal schauen, dort hab ich das MPLAB auf 
dem Computer.

Gruß,
Harald
Gast #1848069
Ich danke dir trotzdem schon vielmals für deine Bemühungen Harald.

Ich habe bereits eine PWM gemessen. Er gibt manchmal am UART den 
Startstring normal aus. PWM geht allerdings quasi nur noch im 
mehrere-sekundentakt und die nächste UART ausgabe, die eigentlich nach 
20 sekunden kommen soll, kommt minuten später. Allerdings kommt sie dann 
als lesbare Zeichen. Was ja bedeutet, dass der Clock für die 
UART-Ausgabe richtig läuft. nur für alles andere nicht. und das nur an 
meim PC.

Zum verzweifeln.

Ich werd das mit den Fuses einlesen mal angehn.
#1848183
Hi,

wie sieht des denn aus wenn du auf beiden rechnern die Version 8.40 
installierst? Und ist vielleichte ein Rechner mit XP der andere mit 
Win7? Hört sich für mich nach einem Treiberproblem an. Bei mir spinnt je 
nach Version vom Treiber das ICD2, es schaltet sich einfach aus, aus und 
wieder einstecken behebt das Problem.
Die HW und das ICD3 kann man ja ausschließen da es ja am "alten" PC bei 
dir funktioniert.

Gruß Simon
Gast #1848201
Also auf dem alten läuft WinXP und auf meim Win7. Ich hab mir grad die 
Version 8.40 und Compiler 3.22 gezogen. ich installier's mal um.

Den USB-Treiber zieht er sich ja automatisch.
Gast #1848315
ok. version 8.40 geht mit Windows7 64bit nicht.
nun hab ich Version 8.36 und compiler 3.22 drauf und es funktioniert!

Ich weiß jetzt nicht, ob's am Compiler oder an der IDE gelegen hat. So 
funktioniert's auf jeden Fall.

Danke für die Hilfe.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.