Archiv verlassen und diese Seite im Standarddesign anzeigen : C-Compiler für PIC uC
fluffy2003
11.09.03, 12:42
Hallo zusammen,
bin schon ne ganze Weile auf der Suche nach einem C-Compiler für Microchip's PIC Microcontroller Familie. (für Linux versteht sich)
Könnt ihr mir Infos geben? Wo gibs sowas? Welche Erfahrungen habt ihr damit gemacht usw...
Vielen Dank
Thomas
Leider hab ich selber noch keine erfahrungen mit PICs oder AVRs, will mir aber auch bald nen AVR(Atmega) zulegen und hab daher schon ein bischen rumgesucht
PonyProg (http://www.lancos.com/prog.html)
sollte angeblich recht gut sein, gibt es für windows und linux,
sonst würde ich einen gcc suchen, für AVrs gibts mal einen, also wird es auch einen für PICs geben
mfg Azrael
Hallo,
da gibt es ein paar, sind aber in der Free-Version alle mit irgendwelchen Einschränkungen versehen. Für nen kleinen PIC z.B. 16F84 reichts aber.
http://www.picant.com/c2c/c.html
http://www.htsoft.com/products/piclite/piclite.html
Ansonsten kann ich Dir auch nur wärmstens den AVR empfehlen, sind billiger als PIC´s, GCC als Complier, viele Code-Beispiele im Netz...
Eine gute Einführung in Sachen AVR + GCC findest Du hier:
http://www.linuxfocus.org/Deutsch/March2002/article231.shtml
auch zu empfehlen:
http://www.mikrocontroller.net/articles/c/
http://www.avrfreaks.net/
Grüsse
stefan-tiger
14.03.06, 19:42
Hat jemand was um mit Linux (und Windows) einen PIC18 per C zu Prorgammieren und nen Downloader?
Unter http://www.gnupic.org/ ist eine grosse Liste mit vielen Programmen für PIC/Linux. Dann hab ich noch http://gputils.sourceforge.net/ gefunden.
Kennst du http://www.sprut.de/ schon? Sehr gute Seite!
hi,
sowie ich das momentan sehe kommt man - zumindest bei der pic18 familie - nicht um den mcc18 herrum. und den gibt es halt nur für windows.
das ist aber, finde ich, nich weiter tragisch; schliesslich bekommst du mit mplab auch eine brauchbare entwicklungsumgebung dazu.
das problem bei den nicht orginal compilern ist immer die fehlende unterstützung für die features des chips. ne library für die SPI schnittstelle bekommst du evtl. mit, aber z.B. für USB auf den 18fx5x0 chips sieht es da echt schlecht aus.
@stefan-tiger: meinst du mit downloader einen bootloader für den chip?
wenn ja, wird dir mit sicherheit bei sprut geholfen. ich nutze z.B. den orginal bootloader von Microchip, das ist bisher der einizige den ich kenne, der auch usb kann.
btw: sucht mal bei google nach 'ICD2 nachbau', so ein gerät ist wirklich super zum debuggen! (aber auch nur unter windows mit mplab).
stefan-tiger
03.04.06, 17:19
Ich such immernoch: Einen C-Kompiler und einen Downloader (Software für den Programer). Natürlich für Linux.
Ich habe hier eine Platine mit nem PIC18 un den IIC-PROG Prorgamer (serielle Schnittstelle).
http://piklab.sourceforge.net/
ich würde aber die cvs nehmen.
http://sdcc.sourceforge.net/
hab ich aber noch nicht getestet
mehr kann ich auch nicht dazu sagen
mfg Azrael
stefan-tiger
05.04.06, 12:21
http://piklab.sourceforge.net/
ich würde aber die cvs nehmen.
http://sdcc.sourceforge.net/
hab ich aber noch nicht getestet
mehr kann ich auch nicht dazu sagen
mfg Azrael
"Work is in progress on supporting the Motorola 68HC08 as well as Microchip PIC16 and PIC18 series."
und http://piklab.sourceforge.net/devices.php
lassen vermuten, daß PIC18 unte rLinux derzeit nicht machbar ist.
Ist aber weniger schlimm, denn wir nehemen jetzt doch nen PIC16F.
Mal sehn wie weit ich damit komm.
stefan-tiger
05.04.06, 12:25
Wegen dem Download-Prorgamm: Mein Prorgammer besteht nur aus einem RS232 Port, nem Kondensator, Widerstand und LED.
Das Ding nennt sich irgendwie "icprg" oder "iic-prog". Welches Prorgamm kann ich dafür verwenden?
EDIT: scheint das hier zu sein: http://www.jdm.homepage.dk/newpic0.htm
Falls das nicht geht, mus sich mit ein ICD2 ausleihen.
stefan-tiger
26.04.07, 18:31
Verwendet jemand den JDM?
Ich habe die Vermutung, daß manche RS232-Schnittstellen nicht genug Spannung ausgeben, weil er bei vielen (incl. mir) nicht geht.
Ich hab den RCD Brenner nachgebaut, das ist ein verbesserter JDM.
http://feng3.cool.ne.jp/en/rcd.html
Der Elko der an den MCLR Pin angeschlossen ist, hat 470 uF. Und die Spannung kann
mit einem Poti eingestellt werden.
Picprog hat aber beim Brennen Probleme. Durch rumspielen kam ich auf einen etwas
kruden Würgaround: Ich starte picprog durch Tastaturkamikaze mehrmals schnell hintereinander.
Dann geht es irgendwann. :ugly:
Deine Vermutung mit der zur geringen Spannung scheint zu stimmen. Warum es aber
geht wenn das Brennprogramm mehrmals gestartet wird, weiß ich nicht.
Beim anderen PC (Windows) geht das Brennen beim ersten mal.
Ich denke das es an den Schnittstellen liegt.
stefan-tiger
01.05.07, 18:30
Ich hab was "gefunden" (hätte es auch viel früher schon finden können, wenn ich mal richtig gesucht hätte):
Warum geht der JDM (oder andere) Programmer manchmal nicht richtig?
http://www.holger-klabunde.de/pichelp.htm#pipo
Welchen C-Compiler kann man unter Linux für PICs nehmen?
http://sdcc.sourceforge.net/
Welche IDE kann man unter Linux (KDE) für PICs nehmen?
Assembler only: http://pikdev.free.fr/
Assembler, C etc.: http://piklab.sourceforge.net/
Ich expermimentiere gerade mit piklab und dem sdcc. Bin bis jetzt zufrieden, auch wenn man "Spagetthi-Code" machen muss, da der sdcc nicht mehrere Dateien aufeinemal bearbeiten kann und somit #defines die eigenlich Mehrfachincludierung von Header-Dateien verhindern soll einfach nicht geht. Evtl. ist das auch dem Linker seine "schuld".
Habe pic16f870 und 877 hier, kann aber leider nicht sagen wie die Prorgamme drauf laufen, da ich sie ja noch nicht draufbekommen.
Die teuren Brenner von Microchip oder anderen Firmen können mehr als die
DIY Teile. Das ist klar. Aber die haben dann ihre eigene Brennsoftware.
Gibt es da auch professionelle Brenner, die man mit Linux verwenden kann?
Ja, die gibt es. Der Microchip ICD1 bzw. ICD2 wird recht breit unterstützt, das schöne ist, dass man damit sogar InCircuit-debuggen kann (Piklab behauptet das zu können).
Das Teil ist zwar recht teuer, man kann sich aber auch relativ leicht selber ein recht brauchbares Gerät bauen das fast eine identische Funktionalität hat.
Zwei Bauanleitungen findest du hier:
http://www.harald-sattler.de/html/body_icd2_usb.htm
http://home.vrweb.de/~lotharstolz/stolz.de.be/icd/main.html
Der erste ist mit Pseudo-USB Anschluss (mit FTDI USB-RS232-Wandler). Wenn du keinen Seriellen Port dafür frei hast bzw. keine externe Spannungsquelle willst ist das evtl. nicht schlecht, ist aber möglicherweise ein wenig langsamer als die direkte Verwendung von RS232.
Aber wo wir gerade beim Thema Linux und PICs sind hätte ich auch mal eine Frage: Die neueren 18Fx5x PICs haben ja ein USB-Interface... gibt es unter linux eine Möglichkeit das zu nutzen? Gibts da Treiber für? Oder ist das MS-Usern vorbehalten?
Gruß
Lukas
Ich expermimentiere gerade mit piklab und dem sdcc. Bin bis jetzt zufrieden, auch wenn man "Spagetthi-Code" machen muss, da der sdcc nicht mehrere Dateien aufeinemal bearbeiten kann und somit #defines die eigenlich Mehrfachincludierung von Header-Dateien verhindern soll einfach nicht geht. Evtl. ist das auch dem Linker seine "schuld".
Ich sitze auch gerade an piklab und sdcc, nur habe ich folgendes Problem, egal welchen PIC ich einstelle, wenn ich versuche dein simples Programm zu kompilieren (nur mit einer leeren main) bekomme ich den Fehler:
sdcc -mpic14 -p12f675 -V -Wl-c -I/home/pete/Documents/test/ -otest.hex test.o
message: using default linker script "/usr/share/gputils/lkr/12f675.lkr"
error: linker script has no definition that matches the type of section "data_test"
Hat einer eine Ahnung was das soll?
EDIT: Problem gelöst :)
http://piklab.sourceforge.net/wiki/index.php/Problem_with_sdcc
Gruß
Pete
Hallo,
Hab doch noch eine Frage, was benutzt ihr zum Brennen?
Ich überlege ob ich mir ein PICkit 1 oder 2 hole (bei 2 muss ich allerdings erstmal eins mit Firmware 1.x finden). ICD 1 und 2 sind mir zu teuer, oder doch lieber etwas selber bauen...?
Ich würde mich über Meinungen freuen. :)
Gruß
Pete
Hi,
Ich habe mir jetzt das PICkit 1 geholt und bin zufrieden. Ich benutzte Piklab und den Hi-Tech PICC-Lite Compiler und ich muß sagen es funktioniert prima. :)
Ich habe zuerst den SDCC Compiler probiert, aber mit dem gab es Probleme, machmal hat er zwar kompiliert, aber der erzeugte Code funktionierte auf dem PIC nicht (auch ganz einfache Beispiele nicht) Aber egal der Hi-Tech PICC-Lite funktioniert ja... :)
Gruß
Pete
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.