Hallo zusammen. versuche vergebens das angehängte Blink Programm zum Laufen zu bringen. Als Entwicklungsumgebung nutze ich MikroC Pro for PIC. Das Programm lässt sich compilieren und auch auf den Pic brennen. Nur die LED blinkt nicht. Habe verschiedene Einstellungen am Setting probiert, leider ohne Erfolg. Das gleiche Programm mit XC8 und MplabX auf den Pic geladen funktioniert. Hat vielleicht noch jemand einen Tipp?
Ist der interne Takt ausgewählt ? Oder benutzt du einen Quarz ? Sonst schau mal hier rein: https://www.pic-microcontroller.de/video-tutorial/mikrobasic-erstes-programm/
Hallo Peter, ja, den internen Oszillator habe ich ausgewählt. OSCCON auf Dec 80 gestellt (wie im Video), leider keinen Erfolg. Die LED an LATB1 leuchtet während der Programmierung kurz auf, danach alles dunkel. Ich vermute den Fehler in einem nicht korrekt gesetzten Register, zumal das gleiche Programmbeispiel mit MPLABX (Syntax angepasst, gleiche Platine) funktioniert. Ebenso funktioniert es mit dem PIC16f18855 und MikroC. Bin über jeden Hinweis dankbar-
Probiere mal das HEX File aus was ich hochgeladen habe. Funktioniert dieses ?
Juergen L. schrieb: > Die LED an LATB1 leuchtet während der Programmierung kurz auf, danach > alles dunkel. Welchen Programmer verwendest du? Deine Beschreibung passt zu dem mikroProg, wenn du die Option "Power target MCU from Programmer" in der mikroProg Suite nicht angeklickt hast. Dein Code und das HEX von Peter K. laufen hier auf einen 45K22. Peter
:
Bearbeitet durch User
#Peter K. vielen Dank. Werde das HEX-File heute Nachmittag testen und das Ergebnis hier reinstellen. #Peter D. Als Programmer verwende ich PICkit3 mit MPLAB IPE. Die Checkbox für die Spannungsversorgung über das Pickit3 ist aktiv. Was ich nicht verstehe, dass das gleiche Programm mit MikroC compiliert und auf den PIC 12F683 gebrannt, fehlerfrei funktioniert. Ich vermute eher den Fehler in einem nicht gesetzten Register, ähnlich der Analogfalle, wenn alle PORT's standardmäßig auf ANALOG gesetzt sind und mit ANSELB auf digital gestellt werden müssen.
Hallo Juergen, hier ist mein mikroC PRO v7.6.0 Projekt für den 45K22. Ich hatte es vorher mit ext. Quarz getestet, jetzt mit internen Oszillator. Hatte überlesen das du den internen Takt verwendest. Dabei ist mir aufgefallen das ohne OSCTUNE und OSCCON-Anweisungen der PIC nur sehr langsam taktet, und das Blinken erst sehr spät startet. Mit den Anweisungen taktet er mit 64 MHz und es funktioniert. Peter
Hallo Peter, HEX-File gebrannt, ohne Erfolg! PIC gelöscht, gebrannt. Verify war ebenfalls ok. Leider weiß ich nicht, ob du den internenn Takt eingestellt hast. Meine Testplatine ist die STARTPIC18 von Nicolas Meyertöns und diese besitzt keinen Quarz nur internen Takt. Gruß Jürgen
Juergen L. schrieb: > Leider weiß ich nicht, > ob du den internenn Takt eingestellt hast. Ja, der interne Takt ist eingestellt mit 4 x PLL für 64 MHz. Ich habe mit einem PIC-Ready1 Board von mikroE getestet. Da kann ich den ext. Quarz einfach entfernen. Peter
Hallo Ja ist für den internen Takt eingestellt. Dann stimmt beim Aufbau bei dir was nicht. Oder das PicKit macht da Probleme.
Gib mal einen Link für dein Board. Hast du kein Steckbrett wo du es Testen kannst ? Einfach Controller drauf und programmieren.
Hallo Peter D. und Peter K. habe das Projekt von dir geladen und auf den PIC 18F25K22 umgestellt. Leider kein Erfolg. Langsam falle ich vom Glauben ab, da die selbe Platine mit dem selben PIC und MPLABX funktioniert. Kann es sein, dass ich bei der Installation von MikroC etwas falsch gemacht habe? Trotzdem erstmal vielen Dank für eure Mühe. Gruß Jürgen
Eigentlich nicht. Habe es ja auch mit MikroC geschrieben und compiliert. Klar du kannst es mal neu installieren.
Hallo Jürgen, kann es sein das die Zeilenumbrüche in der HEX-Datei für MPLAB IPE nicht stimmen. Ich glaube es gibt damit Probleme unter Linux, ob es unter Windows auch so ist weiß ich nicht. Peter
Hallo Peter, ja, mit Linux und MPLAB IPE gibt es Probleme. Hatte da vor ein paar Wochen einen Beitrag reingesetzt, da ich die MPLAB IPE unter Linux laufen hatte. Und da wollte es ums Verr..en nicht funktionieren. Mit Windows 10 lief dann alles super. Ich werde nochmals alles neu Installieren, in der Hoffnung, dass es dann funktioniert Habe es gerade nochmals mit MPLABX kompiliert und gebrannt, ohne große extra Einstellungen und es läuft. Langsam glaube ich, dass mikroC mit dem PIC18F25k22 ein Problem hat. Leider habe ich auch noch kein Beispiel im I-Net mit dem PIC18F25k22 in Verbindung mit microC gefunden. Alles nur für den PIC18F45K22. Inwieweit die kompatibel sind, kann ich nicht sagen. Das Datenblatt erschlägt einen ja förmlich mit den Konfigurationsmöglichkeiten. Gruß Jürgen
Bei mikroE findest du Code, allerdings Beispiele mit ext. Quarz: https://www.mikroe.com/ready-pic-dip28 Im Forum wird es sicher auch einiges geben. Der Unterschied zum 45K22 ist glaube ich nur die zusätzlichen Ports D, E. Ansonst hänge deine kompilierte HEX-Datei an für einen Vergleich. Peter
habe dir mal das gesamte Projekt ran gehangen. Vielleicht findest du doch noch einen Hänger. Gruß Jürgen
Juergen L. schrieb: > habe dir mal das gesamte Projekt ran gehangen. Ich deine HEX-Datei, und eine neue kompilierte Version, als 25K22 auf den 45K22 gespielt, und es funktionieren beide. Allerdings blinkt die LED langsamer als sie sollte. Die OSC...-Anweisungen sind also sicher notwendig für den richtigen Takt. Ich habe noch nie mit dem 45K22 und internen Takt gearbeitet, der PIC war bei mir bei einem Entwicklungsboard dabei. Ich habe mikroC PRO v7.6.0 und den mikroProg unter Windows 7 verwendet. Peter
Du musst schon das OSCCON Register im Programm setzen. Aber wieso mein HEX File bei dir nicht läuft verstehe ich auch nicht. Schick mir mal ein HEX File was du Compiliert hast.
Peter K. schrieb: > Du musst schon das OSCCON Register > im Programm setzen. > Aber wieso mein HEX File bei dir nicht läuft verstehe > ich auch nicht. Schick mir mal ein HEX File was du Compiliert > hast. Ich habe dir mal das C und das HEX-File rangehangen. Das OSCCON Register hat leider auch nichts gebracht. Daher wieder deaktiviert. Das Hex-File ist ohne OSCCON compiliert. Habe gerade im Datenblatt mal nachgeschaut. Da ist das OSCCON standardmäßig auf 1 MHZ gestellt. Müsste also auch ohne Initialisierung laufen (bin mir da aber nicht ganz sicher). Mich würden das ganze Thema nicht so reizen, wenn nicht die vielen hauseigenen Libraries bei MikroC dabei wären, die bei MPLABX fehlen. Schönen Sonntag Gruß Jürgen
Das HEX File läuft bei mir sauber durch. Da scheint irgendwas nicht mit dem PicKit zu stimmen. Vielleicht mal beim PicKit eine neue Firmware aufspielen oder noch mal die selbe aufspielen. Sonst weis ich im Moment auch nicht woran es liegen soll.
Peter K. schrieb: > Das HEX File läuft bei mir sauber durch. > Da scheint irgendwas nicht mit dem PicKit > zu stimmen. Vielleicht mal beim PicKit eine > neue Firmware aufspielen oder noch mal die > selbe aufspielen. Sonst weis ich im Moment auch > nicht woran es liegen soll. Hallo Peter, Problem gelöst! Du hast Recht, es lag am PICKIT3 in Verbindung mit MPLAB IPE. Bin durch Zufall darauf gekommen. Hatte mein Testboard an einer externen Stromversorgung angeschlossen. Lief aber trotzdem nicht. Erst als ich das PICKIT3 abgezogen hatte, fing die Platine an zu blinken! Also nochmals vielen Dank für deine/eure Hilfe. Hab auch einiges dazu gelernt. Gruß Jürgen
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.