mikrocontroller.net

Forum: Analoge Elektronik und Schaltungstechnik PIC 18F2550 Bootloader mit externer Spannung


Autor: Hawk __ (hawk)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich bin neu hier im Forum und hoffe auf ein bisschen hilfe.
Ich habe folgendes Problem:
Habe einen PIC18F2550 und will den über USB programmieren.
Den Bootloader übernahm ich von Sprut, habe diesen auf einen ext 20Mhz
Quarz angepasst. Das programmieren (auch mit Bootloader) funktioniert 
somit einwandfrei!
ABER...
...Ich will den PIC vollkommen von der Vbus entkoppeln, d.h. ich will
"EINFACH" eine Ext spg. (5V) anlegen und den PIC dann ohne Vbus
beschreiben. Doch sobald ich die Vbus von meiner allgemeinen V+ nehm
erkennt Windows nur noch ein defektes Device!?

Jetzt hab ich schon alles mögliche gelesen und versucht, aber ich komme
nicht weiter.

Habe folgenden Zeilen wieder ins C_Projekt eingebunden:
#define USE_SELF_POWER_SENSE_IO
//#define USE_USB_BUS_SENSE_IO

vorher:
//#define USE_SELF_POWER_SENSE_IO
//#define USE_USB_BUS_SENSE_IO

Dann an Pin 3 ( RA1 ) die Vbus über nen Widerstand angelegt!?
Das steht eigentlich so alles im oben genannten C Quellcode drin...?

Hat irgendjemand noch ne idee?
Achja anbei mal der Schaltplan...

Autor: willivonbienemaya (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Laut dem Schaltplan hast du VBus nicht an RA1 angelegt.

Was stimmt also?

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im Original Bootloader Code von Mchip
habe ich das hier gefunden.

/*
 * Both I/O sense pins below are not used in this application.
 * This helps to decrease the size of the firmware code.
 */
//#define USE_SELF_POWER_SENSE_IO
//#define USE_USB_BUS_SENSE_IO

Werden also beide nicht benutzt.
Der Bootloader wird bei Mchip (so wie ich es auch mache)
mit einem Taster gestartet der bei einem Reset
gedrückt gehalten werden muss.

Wie zum Teufel sieht der Code von Sprut denn aus ?

Autor: Hawk __ (hawk)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
@holger

anbei der Bootloader von Sprut.
Ist doch der gleiche, nur dass er dass mit den LED´s entfernt hat.

und wie du schon richtig interpretiert hast:
 * Both I/O sense pins below are not used in this application.
 * This helps to decrease the size of the firmware code.

Das machen sie nur um code zu sparen dar der Bootblock nur bis 07FF 
geht!
Ich brauch aber die self_power.

@ willivonbienemaya

Vbus hatte ich schon überall probiert anzuschließen deswegen hab ich ihn 
im Schaltplan offen gelassen. Prinzipiell gehört er über 5k nach RA1.


Autor: Hawk __ (hawk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kaum zu glauben dass es hier niemanden im Forum gibt der dass schon mal 
aufgebaut hat, oder ähnliche Probleme hatte.

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na endlich. Also der Bootloader wird gestartet wenn RE3==0.

Wie stellst du dir DEINE USB Connection vor ?

1. Dein Gerät läuft Selfpowered, dann kommt der PC und stöpselt
sich an den USB Port ? Haben DEINE Routinen eigene USB
Routinen ? Wenn nicht findet Win auch kein USB Device.

2. Dein Gerät läuft und du stöpselst den PC an.
Dann drückst du den Bootloader Knopf. Der Bootloader
startet !???? Geht aber leider nicht.

Erzähl doch mal wie die Vorgehensweise sein soll !!

Autor: Hawk __ (hawk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK. Also von vorne:

1. Pic wird beim einschalten und gleichzeitiges anlegen der Masse an RE3 
also gesetzten Jumper 3 (JP3) in den Bootloader gesetzt. Vdd und Vss wie 
gesagt extern!

2.Jetzt kann der PC über USB verbindung mit dem PIC herstellen.

3.==> Gerät wird erkannt... ( WUNSCH!!! )

Wie gesagt sobald die Vbus am V+ meiner Platine liegt geht alles...
aber ich will dass ganze ohne Vbus!

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok die nächsten Fragen:

Wie sieht dein Start aus ?
Jumper an RE3 wird gesetzt.
PC ist angeschlossen und läuft.
PIC bekommt Power ?

Autor: Hawk __ (hawk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das hab ich doch schon gepostet!

1. JP3 stecken! ==> RE3 == 0

2. Versorgungsspg wird angelegt.

3. Jetzt geht der PIC in den Bootloader.

4. PC läuft. USB wird verbunden.

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Entschuldige das ich dich etwas nerve.
Evtl. ist die Reihenfolge wichtig.

Mein Tip: Mache RE3 wieder zum Reset Pin.
Nimm einen anderen Pin um den Bootloader zu aktivieren.

Bei meinen Bus powered Schaltungen komme ich so in den
Bootloader:

PC läuft. Schaltung ist angeschlossen. Wird sofort
mit Spannung versorgt. Der Bootloader wird nicht gestartet
weil ich die Taste nicht gedrückt habe. Also Reset drücken
und festhalten. Bootloader Taste drücken und festhalten.
Reset loslassen. Bootloader Taste loslassen. PC verbindet.

So klappt das bei mir immer, und dann sollte es egal sein
woher der PIC Saft bekommt.

Autor: Hawk __ (hawk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dass ist das gleiche wie ich es auch schon probiert habe.
Dass ist keine Lösung.
Was ich nicht verstehe, dass es hier tausende Leute gibt, und keiner 
einen PIC 18F2550 mit USB UND Externer Spg programmiert hat! Das gibt es 
doch gar nicht!

Hat noch nie jemand Erweiterungsplatinen z.B. für automotive entwickelt?
Oder andere Geräte angezapft!?
Cool dass ich der erste bin.
Werde wohl einiges an Stunden investieren müssen um dass Problem zu 
finden!
Aber es muss zu lösen sein!

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Hawk

Entschuldige das ich deinen Höhenflug unterbreche ;)
Habs grad mal ausprobiert.

Mit meinem PIC18F2550 Board. VBUS an USB Buchse durchtrennt.
Spannung aus 5V Netzteil drauf gegeben. Schaltung läuft jetzt
ohne USB Verbindung. Ein paar LEDs gehen an.

PC hochfahren. Laufende PIC Schaltung an den USB Port anschliessen.
Kleiner Sound von XP. Schaltung im Gerätemanager
korrekt angemeldet und funktioniert.

Was sagt man dazu ? Ein Wunder ist geschehen.



Autor: Hawk __ (hawk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja schieß los!!!
Poste mir mal dein Schaltplan und dein Bootloader!

oder zumindest mal nur den Bootloader.

Dann müsste dir ja was an meinem Plan aufgefallen sein, oder?

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Alter Fiesling ;)
Du wusstest das das passiert !

Nach abziehen des USB Steckers während der PIC noch
Selfpowered ist verabschiedet er sich für immer von USB.

Der interne 3,3V Regler scheint im Arsch zu sein.
Kommt nix mehr raus.

Also wofür ist JP4 ?

Autor: Hawk __ (hawk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
HHHHeeeeeeeeeeeeeeeeeeeeeee.............????????????

Was ist los?

1. JP4 ist nur zu Testzwecken für dass weitere Programm(was aber noch 
nicht existiert!)

2. Wieso funzt der PIC dann mit der Vbus Spg wenn er im Arsch ist???

3. Schick mir halt mal dein Bootloader oder ist es der gleiche???

4. Schaltplan hast du wohl auch keinen?

5. Du kannst mir nur helfen wenn du Schaltplan und Bootloader Postest!

6. Hast du alles genauso wie ich aufgebaut oder wie?

Also so kommen wir nie zu ner Lösung.

Autor: Hawk __ (hawk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab gerade nochmal Vbus angelötet.
==> XP Klingeln ==> korrekte Anmeldung ==> Programmierbar über USBoot.

Dann Vbus weg, 5V extern hin, dass gleiche von vorne
==> nichts passiert!!!!!?????

Bin echt am verzweifeln hock jetzt seit ca 40h da dran!

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mein letzter Post war kein Witz !

Der PIC ist hin. Hab ihn schon neu
programmiert. Das klappte. Aber er rührt sich
nicht mehr. Hab VBUS wieder angeschlossen.
PIC will nicht mehr. Quarzosci schwingt aber.
Der interne 3,3V Regler gibt nichts mehr raus. 0V !

Neuen PIC in die Schaltung: Funktioniert.

Autor: Hawk __ (hawk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es geht jetzt!!!!! :-) :-) :-) :-) :-) :-) :-) :-)


Voll der Anfänger fehler!
100n an 5V Pins vom PIC  hats behoben!!!

Danke dir trotzdem

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na wenigstens für einen ein Happy End.

Mein PIC ist Schrott.

Das mit dem abziehen des USB Steckers bei Selfpowered probier
ich auf jeden Fall noch mal aus. Muss aber erst mal für Nachschub
sorgen.

Man sieht sich ;)

Autor: Med Hammami (hammamigat)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
(je parle en fracais )j'ai besoin d'un code pour utiliser un pic 18F4550

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.