Forum: Mikrocontroller und Digitale Elektronik PICkit2 blutiger Anfänger ohne ansatzweise Plan.


von Matthias (Gast)


Lesenswert?

Hallo liebes Forum...

Ich bin am verzweifeln. Seit Tagen durchstreife ich sämtliche 
Internetquellen zum Thema PIC programmieren, aber da ist permanent von 
bereits fertigen Listings die Rede, und welche Adressen was machen, und 
und und...
Auch hier im Wiki bin ich durch, und verstehe wirklich nur Bahnhof.
Man wird irgendwie erschlagen mit Hardwarefacts und Funktionen, die ich 
für den Ersteinstieg aber nicht wirklich brauche.

Folgende Ausgangssituation:
Ich habe mir 2 Firstwatt F5 Monoblock Endstufen für die heimische 
Audio-Anlage gebaut, und will diverse Messwerte (Temp, Spannungen, 
etc...) auf einem 4x40 Zeichen LCD darstellen.
Da ich vor 15 Jahren mehr oder minder ambitioniert Quickbasic 4.5 
progammiert habe, dachte ich, dass der Einstieg in die 
Microcontrollertechnik schon irgendwie zu meistern wäre.
Weit gefehlt.
Das Kit (bestehend aus USB-Kabel, Programmer, LowPin Demo Board mit 4 
Leds, Poti, Taster und PIC16F690) liegt vor mir, und das einzige, was 
ich bislang ERFOLGREICH geschafft habe, ist das löschen des 
Demoprogrammes, so dass auf dem mitgelieferten Demoboard nun die LED's 
dunkel bleiben. :(

Ich habe folgende Software installiert:
- PICkit 2 v2.61
- MPLAB IDE v8.83

Verstanden habe ich, dass das erste Programm anscheinend dazu dient, die 
Kommunikation zwischen PC und µP herzustellen?
Unter MPLAB soll man dann programmieren können- aber selbst nach lesen 
diverser (natürlich leider ausschließlich englischsprachiger) Tutorials 
und Hilfen ist das einzige Resultat ein rauchender Kopf.

Auf dieser Internetseite gibts ein Beispiellisting, aber ich komme ja 
nichtmal zum eingeben von Programmcode, weil ich keinen Plan habe, wie 
man das dann auf den PIC bekommen sollte (bzw. wie man ihn überhaupt 
unter MPLAB eingeben kann, denn da finde ich kein entsprechendes 
Fenster?)

http://www.electronics-lab.com/projects/test/016/index.html

Herrje. Eventuell ging es ja jemandem genauso wie mir, und kann mir 
einen Tip geben.
Wahnsinn, wie verwirrend und erschlagend das alles ist, wenn man sich 
noch NIE damit befasst hat.
Ich frage mich, ob es sowas wie ein Step-by-Step To Do gibt.
Wirklich von 0 weg. Das finde ich jedoch nicht, bzw. nicht für genau 
diesen Kit.

Viele Grüsse und schonmal HERZLICHEN DANK!
Matthias

von Frank K. (fchk)


Lesenswert?

Matthias schrieb:

> Das Kit (bestehend aus USB-Kabel, Programmer, LowPin Demo Board mit 4
> Leds, Poti, Taster und PIC16F690) liegt vor mir, und das einzige, was
> ich bislang ERFOLGREICH geschafft habe, ist das löschen des
> Demoprogrammes, so dass auf dem mitgelieferten Demoboard nun die LED's
> dunkel bleiben. :(
>
> Ich habe folgende Software installiert:
> - PICkit 2 v2.61
> - MPLAB IDE v8.83
>
> Verstanden habe ich, dass das erste Programm anscheinend dazu dient, die
> Kommunikation zwischen PC und µP herzustellen?
> Unter MPLAB soll man dann programmieren können- aber selbst nach lesen
> diverser (natürlich leider ausschließlich englischsprachiger) Tutorials
> und Hilfen ist das einzige Resultat ein rauchender Kopf.

Das MPLAB ist die Umgebung, in der Du Quelltexte editierst, debuggst, 
etc etc.

Was Dir noch fehlt, ist ein C-Compiler. Im MPLAB ist nur ein Assembler 
drin. C-Compiler für die entsprechende Architektur (PIC16, PIC18, 
PIC24/dsPIC, PIC32) musst Du noch extra installieren. Die gibts hier:

http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en534868&page=wwwCompilers

Je nachdem, für welchen Chip Du entwickeln willst, musst Du Dir hier den 
passenden Compiler runterladen. Für Dich reichen die Lite-Versionen, die 
größeren kosten Geld.

Anschließend schaust Du hier rein:

http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2122

Das ist das "Getting started".

fchk

von Carsten S. (dg3ycs)


Lesenswert?

Hi,

Um mal Franks (richtigen) Beitrag zu komplettieren:

1. Es gibt eine recht brauchbare deutschsprachige SEite zum Einstig in 
die PICWelt. Hast du die schon mal angesehen?
http://www.sprut.de/electronic/pic/anfang/index.html#allgemein

Matthias schrieb:
> Ich habe folgende Software installiert:
>
> - PICkit 2 v2.61
> - MPLAB IDE v8.83

Die SW *- PICkit 2 v2.61* sagt mir jetzt direkt nichts. Für den 
"normalen" Betrieb ist die aber definitiv NICHT nötig. Programmieren 
(Der Vorgang des beschreibens des Bausteins), prüfen, Debuggen und das 
CodeSchreiben geschieht alles aus MPLAB heraus und alle PK2 Treiber sind 
in MPLAB bereits vorhanden.

Wenn du in ASM schreiben willst brauchst du nichts weiter als die MPLAB 
IDE. WEnn du in C Schreiben willst musst du wie Frank schon schrieb noch 
die C Compiler zusätzlich installieren.

ICh nehme an das dieses PK2 V2.61 entweder ein Programm ist um 
Standalone zu Programmieren, also um ein Proggrammfile auf den PK2 zu 
laden ohne das dies direkt gebrannt wird, damit du den PK2 dann 
mitnehmen kannst und irgendwo anders irgendwann später ganz ohne PC nur 
durch anstecken des PK2 deinen PIC Programmieren kannst.
(Das kann z.B. praktisc sein wenn ein Gerät "Upgedatet" werden muss das 
"irgendwo sehr unzugänglich" verbaut ist. Sitzt es auf einem MAst muss 
man nicht mit Laptop und allem hinaufklettern, sondern nur das einzelne 
PK in die Tasche stecken. Für dich im Moment VÖLLIG Irrelevant.

Das Kit welches du hast ist wahrscheinlich der Vorläufer des PICKit 
DEBUG EXPRESS. Ein obsoletes (also veraltetes, überholtes) Starterset.
Aktuell ist das PicKit3!
Allerdings hat das PK2 einen Vorteil den das PK3 nicht hat. Es ist auch 
ein Schmalspur LogicAnalyzer!

Zu diesen Startersets gibt es immer Komplette Anleitungen und auch 
Beispiel-/ Lernprogramme.
Ich habe gerade mal etwas auf der Microchip Homepage gesucht (Ok, für 
einen Anfänger ist es bei den älteren Dingen manchmal nicht ganz 
ersichtlich "wo" man suchen muss)
Die Bedienungsanleitung incl. der ersten Schritte dürfte DAS hier sein:
http://ww1.microchip.com/downloads/en/DeviceDoc/Low%20Pin%20Count%20User%20Guide%2051556a.pdf

Die dazugehörigen Übungsfiles sind diese:
http://ww1.microchip.com/downloads/en/DeviceDoc/Pk2-Starter%20Kit%20Lessons%20(b).zip

Das alles -sowie weitere Informationen und das LogicAnalyzer SW 
Programm-ist zu finden auf der Microchip Homepage:
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en023805&part=DV164120

Gruß
Carsten

von W.S. (Gast)


Lesenswert?

Matthias schrieb:
> Ich frage mich, ob es sowas wie ein Step-by-Step To Do gibt.
> Wirklich von 0 weg.

Das "To DO" gibt es nicht, das mußt du schon selber tun.
Aber eigentlich ist das alles viel einfacher als du denkst. 
"Programmieren" und "Programmieren" sind zwei verschiedene Dinge, die 
mancher verwechselt.

Also, du hast ein kleines Board mit nem PIC16F690 drauf.
Dieser PIC braucht zum Funktionieren ein Stück Maschinencode, der was 
Sinnvolles tut. Das übliche Format, in dem Maschinencode gespeichert 
wird, ist Intel Hex oder Motorola Hex. Soweit ich weiß, benutzt das 
MPLab das Intel-Hex Format.

Jetzt gibt es für dich 2 Fragen zu klären:
1. Wie kann ich do eine Hexdatei erzeugen, die das enthält, was ich an 
Programm dort drin haben will
2. Wie kann ich so eine Hexdatei in den Programmspeicher meines 
PIC16F690 hineinverfrachten

zu 1. Da mußt du irgendeine Programmiersprache nebst dem dazu 
benötigten Übersetzungstool dir aussuchen. Für die ersten tappenden 
Schritte wäre nach meiner Meinung erstmal Assembler angesagt, aber die 
Wahl hast ja du.

zu 2. Da gibt es sowohl innerhalb von MPLab als auch eigenständig 
sogenannte Programmier-Programme, die eine Hexdatei lesen können und 
über einen passenden Adapter den darin enthaltenen Code in den 
Programmspeicher des PIC brennen können. Normalerweise braucht man bei 
den PIC16xxx folgende Verbindungen: MCLR, RB6, RB7 und natürlich GND und 
VCC. Bei manchen Typen muß man noch RB3 o.ä. sachte (per Widerstand) auf 
low legen, aber das liest du besser selbst in der Doku.

Also such dir auf der Platte das Hexfile zu deinem Demoprogramm, starte 
das Programmier-Programm in MPLab und brenne dir das Demoprogramm 
zunächst erstmal wieder auf den PIC.

W.S.

von michael_ohl (Gast)


Lesenswert?

Du schreibst Du hast einen Programmer ist es ein Pickit2 , ein PicKit3 
oder vielleicht doch ein PICkit Serial Analyzer?

Auch wenn die Fülle an Infos erst einmal erschreckend ist, muß man sich 
wohl oder Übel schon ziehmlich weit in die Datasheets einlesen um die 
PIC´s in den Griff zu bekmmen, weil erst einmal alle Peripheren 
Einheiten richtig initialisiert werden wollen (Wie bei PC das BIOS) 
bevor Du I/O benutzen , A/D Wandler ansprechen und Texte auf deinem 
Display ausgeben kannst (Das muß auch erst richtig initialisiert 
werden).

mfG
Michael

von Matthias (Gast)


Lesenswert?

Hallo!

Vielen Dank für die Infos, aber ich komme einfach nicht mit MPlab klar.
Wirklich rein garnicht.
Das Getting-Started Tutorial funktioniert leider nicht ansatzweise so, 
wie es lt. pdf-file beschrieben ist.
Es scheitert schon bei der Auswahl irgendwelcher merkwürdigen Dateien 
bei der Projekterstellung, die ich angeblich in einem bestimmten Ordner 
haben sollte. Diese sind definitiv nicht da, und ich weiss auch nicht, 
für was man sie brauchen soll?
Leider ist nirgendwo erklärt, wie man einfach Programmcode in den PIC 
bringt.
Ich versteh das einfach ned.
Früher gabs einen Editor, in dem man programmiert hat, und das Gedöns 
anschließend EINFACH compiliert hat. Nicht mehr, nicht weniger.
Man musste keine Doktorarbeit draus machen.

Kann es sein, dass WinAVR leichter ist?

Ich habs auch schon mit diesem High-Tech C-Compiler versucht, aber da 
bringt er mir auch permanent irgendwelche kryptischen Fehlermeldungen, 
bzw. finde ich nichtmal ein Fenster, in dem man den Code eingibt.
(muss man ihn im Projekt bei Source Files, Header Files, Object Files, 
Library Files oder Other Files eingeben?!?)
Für was brauche ich das eigentlich alles?

auf sprut.de war ich auch schon längere Zeit, aber damit komm ich auch 
nicht klar. Entweder liegts an diesem für den Einstieg entschieden zu 
komplexen PICKit2, oder ich stelle mich wirklich zu doof an.
es ist eigentlich schon ganz toll erklärt, aber ich bring einfach kein 
*.asm file zum laufen.

Gibt es kein deutschsprachiges, EINFACH ZU BEDIENENDES Programm, mit dem 
man nichts anderes macht, als den angeschlossenen Mikroprozessor 
auszuwählen, ihn zu programmieren (meinetwegen über kopierte Listings 
aus dem WWW) und zu starten??

@W.S. : Hallo!

Das Demo-Hex-File habe ich zwar, aber ich habe keinen Plan, wie ich es 
vernünftig in den Prozessor bringen soll?
Wenn ich es in MPLAB lade, bringt er irgendwelche Fehlermeldungen, und 
in PICKit2 Programm meint er, das Programm sei zu lange für den 
Prozessor(?!?), obwohl es ja vorher drauf war...

Herrje, wie kann man so eine Thematik so massiv komplex gestalten?
Das lasse ich mir für IT-Spezialisten oder aber Doktoranden eingehen, 
aber doch nicht für einen Elektroniker, der das Ding ohne großen Trara 
programmieren will...

Gibt es denn wirklich keine simple, deutschsprachige Software, mit der 
man EINFACH den Einstieg findet?

So komplex hätte ich mir das wirklich nicht vorgestellt. Ich möchte 
nicht mühselig irgendwelche "libraries und header und sources und was 
weis ich noch alles" einstellen, sondern nur den PIC-Typ auswählen, und 
loslegen.
Man merkt allerdings, dass die Softwareangebote sich wirklich nur an 
Profis richten, und an Einsteiger nicht gedacht wurde.

Also eher doch mit WinAVR versuchen?

Viele Grüsse und vielen Dank fürs Lesen und evtl. Beantworten,
Matthias

von Patrick B. (p51d)


Lesenswert?

Matthias schrieb:
> Kann es sein, dass WinAVR leichter ist?

So wie du deine Probleme schilderst, denke ich nicht, dass du mehr 
Erfolg haben wirst.

Wie das ganze funktioniert kannst du hier lesen (sorry, aber etwas 
Englisch musst du halt schon können, ansonsten wirst du immer Probleme 
haben):
http://ww1.microchip.com/downloads/en/DeviceDoc/51281d.pdf

Dann gibts den Project-Wizard, bei dem du schön deinen Prozessor auf dem 
DemoBoard auswählen kannst, den Ort, wo das ganze gepseichert werden 
soll, UND den Compiler.... (einfacher gehts nun also wirklich nicht 
mehr)

Dann hast du ein Fenster mit einer Ordnerstruktur (Source-Files, Linker, 
Header.... oder so ähnlich). Jetzt brauchst du noch "NEU" ein .C File zu 
erstellen (im selben Ordner abgespeichert) und dann mit der rechten 
Maustaste im Verzeichnisbaum hinzufügen...
Schon hast du deine Projektstruktur mit allen deinen Files (kannst noch 
mehr hinzufügen...)

Dann musst du das Projekt noch compilieren (Build) und über 
Programmer->PicKit2 dein Programmer wählen und das erstellte Hex-File 
(wird automatisch ausgewählt) in dein MCU brennen.

Die besten Erfahrunegn habe ich mit den HI-Tech Compiler gemacht, da 
gibts auch schöne PDFs mit den Funktionen, und auch Beispiele...

Ebenso gibts hier schöne Beispiel-Projekte, die du dir ansehen kannst:
http://www.microchip.com/CodeExamplesByFunc.aspx
http://www.microchipc.com/sourcecode/
(Man muss nur etwas suchen). Ebenso ist die Seite von Sprut sehr 
informativ, aber leider auf ASM. Aber um ein Grundverständniss zu 
bekommen, reicht diese vollends.

Ich habe das Gefühl, dir fehlt es an Motivation etwas selber 
herauszufinden, denn ich habe mir damals das Programmiern mit den PICs 
im Alter von 16 Jahren selber beigebracht... und sooo schwer war das 
auch wieder nicht. (Vielleicht gibts jetzt ja auch schon auf Youtube ein 
paar toutorials...)

MFG
Patrick

von Matthias (Gast)


Lesenswert?

Hallo Patrik!

Danke für die Infos! Mein Englisch ist nicht schlecht, daran scheitert 
es nicht. Das Problem ist die Fülle an Informationen, welche man für den 
Einstieg nicht braucht, da sie einen nur erschlagen.

Das von dir verlinkte pdf habe ich durch, und kann sagen, dass es 
eindeutig nicht funktioniert, wie beschrieben.
Ab 2.8. Adding files to the Project geht nix mehr weiter, weil genau 
diese Dateien nicht drauf sind. Weder auf der CD, noch sonstwo.

Für was braucht man die denn? Das geht auch nirgendwo vernünftig hervor?

Immerhin bin ich jetzt soweit, dass ich die Demo-ASM Files von PICKit in 
MPLAB laden kann, und nach dem "Quickbuild" auch auf dem PIC ausführen 
kann.
Ich frage mich, warum man dazu dieses Library-Ding auf der Linken Seite 
nicht braucht?!?

Ich hab mir anno 1992 mit dem C64 das programmieren beigebracht, und das 
war eindeutig ein Spaziergang gegen diesen hochkomplexen PIC-Kram.

Danke nochmal für die Links, ich geh da noch bissl drüber.

Viele Grüsse,
Matthias

von Patrick B. (p51d)


Lesenswert?

OK, zu Punkt 2.8:
Hier kann man vorhandene Dateien hinzufügen (falls du schon ein C-File 
oder eine Header-Datei schon für ein anderes Projekt verwendet hast...), 
das kannst du aber auch überspringen. Falls du im Windows-Explorer in 
deinem Projekt-Ordner schon eine .C und eine .H Datei erstellt hast, 
kannst du die auch dort hinzujfügen. (Deine "Arbeits-Dateien")
Das ganze kann aber wie gesagt übersprungen werden, denn die Dateien 
können auch später im Datei-Baum (Project-Window) hinzugefügt werden.

Linker-Scripts brauchst du momentan nicht (also überspringen).

Dann kannst du anfangen mit codieren...

Bei den Builds erstellst du dann das Hex-File.

Ansonsten steht alles in dem PDF (Simulator kannst du momentan noch 
weglassen)

Alles in allem sind die Kapitel 2 bis 2.12 zu bearbeiten.

Viel Erfolg

von Wolfgang M. (womai)


Lesenswert?

Also fuer einen einfachen Einstieg wuerde ich empfehlen:

http://www.mikroelektronika.com

Da gibt es u.a. den Mikrobasic-Compiler, da kannst Du also in Basic 
entwickeln. Einfache Demoprogramme gibt es da gleich mit. Die 
Demoversion des Compilers ist voll funktionsfaehig, bloss die 
Programmgroesse ist auf 2 KB compilierten Code begrenzt (das reicht fuer 
den Einstieg und mehr). Der Compiler erzeugt ein HEX-File, dass Du mit 
dem Pickit auf den PIC brennen kannst.

Die Mikroelektonika-Produkte sind aus eigener Erfahrung SEHR gut fuer 
den Einstieg. Mit den Demoprogrammen hatte ich die erste LED innerhalb 
von Minuten am Blinken! Ich empfehle, zuerst einfach den in den Demos 
verwendeten PIC auszuprobieren. Wenn das einmal geht, kann man auf 
seinen "Liebling-PIC" ueberwechseln. Eben ein Schritt nach dem anderen.

Fuer das Pickit2 gibt es ein Standalone-Brennprogramm (von Microchip 
herunterladen), dann sparst Du Dir den Aufstand mit MPLAB. Fuer Pickit3 
gibt's inzwischen was aehnliches.

von Frank K. (fchk)


Lesenswert?

Matthias schrieb:

> Früher gabs einen Editor, in dem man programmiert hat, und das Gedöns
> anschließend EINFACH compiliert hat. Nicht mehr, nicht weniger.
> Man musste keine Doktorarbeit draus machen.

Das ist heute im Prinzip auch noch so.

> Kann es sein, dass WinAVR leichter ist?

Nein. Es ist anders, aber ähnlich komplex, wenn nicht sogar komplexer. 
Bei AVRStudio/WinAVR hast Du eine Kollektion verschiedener Tools aus 
verschiedenen Quellen, die integriert werden müssen. Bei den 
Microchip-Sachen ist alles aus einer Quelle - das vereinfacht vieles.

> Ich habs auch schon mit diesem High-Tech C-Compiler versucht, aber da
> bringt er mir auch permanent irgendwelche kryptischen Fehlermeldungen,
> bzw. finde ich nichtmal ein Fenster, in dem man den Code eingibt.
> (muss man ihn im Projekt bei Source Files, Header Files, Object Files,
> Library Files oder Other Files eingeben?!?)
> Für was brauche ich das eigentlich alles?

Ich denke, Du bist jemand, der von einer Schulung profitiert. Solche 
Angebote gibt es von Zeit zu Zeit - sowohl von Microchip als auch von 
Atmel. Frage mal bei den Distributoren nach, die veranstalten von Zeit 
zu Zeit solche Trainings, die dann irgendwo in einer großen Stadt in 
irgendeinem Hotel stattfinden. Das kostet dann zwar etwas, aber dafür 
gehst Du dann auch mit einer lauffähigen Entwicklungsumgebung nach Hause 
und hast bereits Dein erstes Programm compiliert.

Bei solchen Trainings wird erwartet, dass Du ein Windows-Notebook 
mitbringst. Oft ist im Preis des Trainings ein Demoboard enthalten, mit 
dem dann gearbeitet wird.

> Gibt es kein deutschsprachiges, EINFACH ZU BEDIENENDES Programm, mit dem

deutschsprachig: nein, vergiss es. Solltest DU irgendwelche Probleme mit 
Englisch haben, bist Du in dieser Materie falsch. Sorry, das mag hart 
klingen, aber wenn Du auf diesen Gebiet Erfolg haben willst, hast Du 
Englisch einfach zu können. Ist halt so, da kann ich nichts für.

Teilweise sind auch die Trainings in English. Ich war im November 
letzten Jahres auf einer AtmegaX-Veranstaltung, da kamen die 
Vortragenden von Atmel Norway (wo die AVR Architektur entwickelt wird). 
Die hatten dann aber auch wirklich Plan.

fchk

PS: Du wirst Datenblätter lesen und verstehen müssen. Selbst wenn Du 
eine IDE mit deutschen Menüs hast, die Datenblätter sind auf Englisch. 
Alle. Manchmal auch noch auf Chinesisch und Japanisch als Service für 
die Asiaten, aber das wars dann auch schon.

von Master S. (snowman)


Lesenswert?

wenn's deutsch sein soll und um den einstieg zu meistern, kann ich die 
seite: http://pic-projekte.de/ empfehlen.

von Lehrmann M. (ubimbo)


Lesenswert?

Master Snowman schrieb:
> wenn's deutsch sein soll und um den einstieg zu meistern, kann ich die
> seite: http://pic-projekte.de/ empfehlen.

Da stimme ich zu.

Generell solltest du dich eher mit den PIC18Fxxxx anfreunden, als mit 
den PIC16Fxxx. Die PIC18 sind etwas benutzerfreundlicher, es ist vieles 
einfacher geworden. Billiger sind sie zumeist auch noch.

Da ist mal was zum Thema absolute Basics PIC allgemein (deutsch): 
http://pic-projekte.de/wiki/index.php?title=PIC_Tutorial

Dann nimmst du dir MPLAB und C und einen PIC18 dann machst dieses 
Tutorial durch: 
http://pic-projekte.de/wiki/index.php?title=PIC_C_Tutorial
Da ist eine Schritt für Schritt Anleitung zum Einrichten da ....

von Matthias (Gast)


Lesenswert?

Hallo liebes Forum!

Nochmals VIEEELEN DANK für die ganzen Infos!
Ich weiß, ich bin nicht der geduldigste Mensch auf diesem Planeten, 
evtl. erschwert das die ganze Sache nochmals.
Ich möchte nochmals betonen, dass ich durchaus der englischen Sprache 
mächtig bin (bin in der Industrieautomation tätig und habe relativ 
häufig damit zu tun), das durchlesen von tonnenweise Tutorials in dieser 
Sprache jedoch die Hölle ist.

Was ich bislang für mich zusammenfassen kann:

- das PICKit2 war der falsche Kauf, da es den 18Fxxx nicht wirklich 
unterstützt (zumindest geht das aus MPLab hervor, und meine beiden 
gekauften 18F...-Varianten können nicht angesprochen werden)

- das Einbinden des HighTech C Compilers klappt auch nicht

- Den C18-Compiler, für den es einige schöne deutschsprachige Tutorials 
gibt, kann ich mit dem 16Fxxx nicht nutzen

- Es sind viel zu viele Basics, die man für die Nutzung brauchen würde

Um es einmal anders darzustellen:

Ich bräuchte lediglich eine Zusammenstellung, was genau ich für folgende 
Anwendung brauchen würde:

- Anzeige von 2 Spannungen und 2 Temperaturen (also 2 Analog- und 2 
Digitalwerten über 2 digitale Temperatursensoren) auf einem 4x20 Zeichen 
LCD mit HD44780-kompatiblem Chip

Nach folgendem Link wollte ich vorgehen, das scheitert aber auch daran, 
dass das Display nichts anzeigt:

http://www.electronics-lab.com/projects/test/016/index.html

Meine Intention war, dass ich mit dem im Link verwendeten PIC beginne 
(habe ich auch schon erfolgreich mit dem passenden *.hex-file 
programmiert) und daran mein Display anschließe.
Das C-Listing hätte ich dann solange bearbeitet, bis ich für meine 
Zwecke die richtige Lösung gefunden habe, denn es sieht ja absolut 
einfach aus.

Leider scheitert mitunter es daran, dass ich einfach kein Programm ans 
laufen bringe, mit dem ich aus dem C-Code ein passendes Hex-File 
stricken kann.

Der verwendete PIC hat ja nicht genügend freie Ein-/Ausgänge, um das zu 
realisieren, aber durch die angebliche Pinkompatiblität war ich der 
Ansicht, einfach ein "größeres" Modell dafür verwenden zu können.

Kann es sein, dass dieses Display

http://www.ebay.de/itm/LCD-Display-HD44780-4x20-chr-20x4-Yellow-neg-Backlight-/170459060245?pt=Bauteile&hash=item27b026d815

doch nicht wirklich kompatibel zum verwendeten aus dem Bastellink ist?

Ein Kurs ist zwar wirklich eine gute Idee, für mich aber überzogen, da 
ich neben dieser Anwendung keine weitere geplant hätte. Erschwerend 
kommen die Preise hinzu.

Ich bekomme jetzt von einem netten Bekannten ein Kompettkit zugesendet 
(auf der Versuchsplatine ist wohl auch ein LCD) und passende Software 
dazu.
Die Lösung mit PICKit sieht für mich doch etwas unpassend für den 
Einstieg aus. Eine LED bringe ich damit zwar zum Blinken, aber 
letzenendes nur in Assembler, da der C-Compiler nicht funktioniert, bzw. 
selbst nach befolgen der Installationsanzweisung- zumindest von mir- 
nicht zum Laufen zu bringen ist). Der mitgelieferte PIC 16F690 findet 
leider so auch keine großartige Verwendung für LCD-Projekte.

Eure Links schaue ich mir jedenfalls alle an, interessant ist vor allem 
pic-projekte.

Wenn jemand- ausser Notschlachtung- noch irgendwelche Tips für mich hat, 
wie ich das geplante STRESSFREI umsetzen kann, dann immer (gerne!) her 
damit! :)

Viele Grüsse und nochmals Danke für eure Geduld!
Matthias

von W.S. (Gast)


Angehängte Dateien:

Lesenswert?

Matthias schrieb:
> das PICKit2 war der falsche Kauf, da es den 18Fxxx nicht wirklich
> unterstützt

Was schreibst du denn für einen Quatsch? Weiter ober schriebest du, daß 
du eine Platine mit einem PIC16F690 hast. Fang doch erstmal mit dem Zeug 
an, was du schon da hast - und zwar ganz klein in Assembler - die 
Befehle dazu stehen im Manual zum PIC16F690.
Das einzige, was du für den Anfang üben mußt, ist offenbar das Benutzen 
des zu deinem PICKit2 gehörigen Programmier- (Brenn-) Programm. Übe das 
doch erstmal, also Testen, ob der PIC leer ist, PIC auslesen und das 
Ausgelesene in eine Hex-Datei schreiben, diese Datei mal angucken, eine 
andere Hex-Datei in den PIC brennen usw.

Und wenn du mit den PIC16Fxxx so weit klarkommst, dann wäre der rechte 
Zeitpunkt gekommen, mit anderen PIC's, C-Compiler und so anzufangen.

Also stell dich nicht so an. Ich hänge dir mal hier eine kleine Demo 
dran, das sollte ausreichen, daß du erstmal ein popliges einfaches 
Assemblerprogramm assemblieren und daraus eine Hexdatei machen kannst. 
Ist - wie gesagt - für dich nur als Demo zu betrachten, es sei denn, du 
bist Funkamateur und willst den Netzwerktester umbauen.

W.S.

von Matthias (Gast)


Lesenswert?

@W.S.

Hi und danke für dein ZIP!

Hmm, Assembler ist schon extrem harter Stoff. Ich hab mir deine 
Programme kurz mal angesehen, und verstehe ehrlich gesagt absolut nur 
Bahnhof. Kryptische Befehle, etc...
Irgendwelche Register und Ports und was weiss ich noch alles schreiben 
und setzen und und und...

Ich kann mittlerweile folgendes:
Auslesen des PIC, Schreiben auf den PIC (allerdings eben nur diese 
Hex-files, die ja nur Code sind), Ausführen von Demoprogrammen auf dem 
PIC über MPlab oder PICKit-Software.
Auch hab ich es schon geschafft, anstelle der im Demoprogramm blinkenden 
ersten Led die 2,3 oder 4. blinken zu lassen.
Will ich aber dann zwei auf einmal blinken lassen, geht schon wieder nix 
mehr, obwohl ich die entsprechenden Programmzeilen einfach kopiert und 
um einen anderen Port (1 anstelle der 0) erweitert hab.
Das ist für mich nicht wirklich logisch.

Kurzum:
Assembler ist mir entschieden zu derb, bis ich da ein LCD vernünftig ans 
laufen bringe, bin ich reif für die Anstalt.
In C sehen Listings doch sehr logisch aus, es erinnert mich schon stark 
an meine Basic-Zeiten in QB4.5 und vorher auf dem 64ger... (waren das 
noch Zeiten!)

Ich möchte letztenendes nicht verstehen, warum der Prozessor was wann 
wie und weshalb macht, sondern lediglich in C (oder Basic) ein LCD ans 
laufen bringen.
Meiner Ansicht nach sollte das nicht unmöglich sein. Wenn ich bedenke, 
dass ich bis heute nicht weiss (weil es mich auch nicht interessierte!), 
wie ein C64 (oder ein 486ger) funktioniert, und ich ihn trotzdem schön 
programmieren konnte, frag ich mich eben, ob das beim Microprozessor 
nicht auch irgendwie möglich sein kann?!
Man kann es vielleicht ein wenig mit dem Thema Auto vergleichen:
Viele Menschen nutzen das Ding, können es fahren, wissen aber nicht 
ansatzweise, weshalb es denn nun genau fährt.

So ähnlich verhält es sich auch bei mir: Ich möchte das Teil in einer 
verständlichen Sprache programmieren, ein LCD dranhängen, mit 
entsprechenden Schaltungen (das sollte ich hinbekommen) versorgen, und 
los gehts.
Die Schaltungen und das LCD gibts zu hauf, aber eine verständliche 
Programmierung scheint etwas härter zu sein...

Viele Grüsse,
Matthias

von Peter D. (peda)


Lesenswert?

Matthias schrieb:
> Hmm, Assembler ist schon extrem harter Stoff. Ich hab mir deine
> Programme kurz mal angesehen, und verstehe ehrlich gesagt absolut nur
> Bahnhof.

Ich kann Dich voll verstehen und gerade der PIC-Assembler ist besonders 
schwer.

Vor 15 Jahren hätte ich noch das genaue Gegenteil gesagt aber jetzt 
würde ich auch nicht mehr zu Assembler raten. Fange ruhig gleich in C 
an.
In C kommt man viel leichter zu einem Ergebnis und wird von vielen 
Kleinigkeiten entlastet.
Selbst für kleine Programme auf nem 8-Pinner mag ich kein Assembler mehr 
benutzen, die Bequemlichkeit siegt.
Und es gibt da auch allgemeine Tips, damit C Programme ähnlich kompakt 
und schnell sind, wie Assemblerprogramme.

Wie es aussieht, muß man wohl verschiedene Compiler für PIC10, 12, 16 
und 18 verwenden. Das ist ein Unterschied z.B. zum AVR oder 8051, da 
kann derselbe Compiler alle Typen programmieren, vom 6-Pinner bis zum 
100-Pinner.

Alle Programmierumgebungen sollten eigentlich ähnlich aufgebaut sein.
Man legt ein neues Projekt an, wählt den MC-Typ aus und schreibt ein 
oder mehrere Sourcefiles, die man dem Projekt hinzufügt.
Dann gibt es eine Build-Taste, die das ganze compiliert und man schaut 
sich die Fehlermeldungen an.
Dann kann man das Hex-File in den Chip laden oder simulieren oder im 
Chip debuggen, je nach Hardwareanbindung.
Ich kenne z.B. AVRStudio (AVR) und µVision (8051) und da sehe ich keine 
besonderen Probleme für Anfänger.
MPLAB kenne ich nicht. Ich kann daher nicht nicht einschätzen, an 
welchem Punkt es bei Dir gerade hapert.


Peter

von Wolfgang M. (womai)


Lesenswert?

Also der Pickit 2 unterstuetzt die 18F PICs sehr wohl - das kann ich Dir 
aus erster Hand versichern. (ich brenne gerade einen PIC18F14K50).

Lass die Finger von Assembler. Das ist wirklich nicht noetig fuer das 
was Du vorhast. Noch dazu sind die PICs nicht gerade komfortable in 
Assembler zu programmieren (falls Assembler ueberhaupt komfortabel sein 
kann :-)

Nochmals mein Tip mit Mikroelektronika (www.mikroe.com) bzw. Mikrobasic. 
Das verfuegt ueber Bibliotheken zur Ansteuerung von Standard-LCDs, 
Temperatursensoren sowie der integrierten Analog-Digital-Wandler. Zu all 
den drei liefern die fertige Demoprogramme mit, und die sind jeweils 
bloss ein paar Zeilen lang. Einfacher geht es nicht mehr.

von Wolfgang M. (womai)


Lesenswert?

Peter Dannegger schrieb:
> Wie es aussieht, muß man wohl verschiedene Compiler für PIC10, 12, 16
> und 18 verwenden.

Naja, das stimmt nicht unbedingt. Mikrobasic (oder MikroC) unterstuetzt 
PIC12Fxxx, PIC16Fxxx und PIC18Fxxx. Alles ein- und derselbe Compiler. 
Wenn man dsPIC oder PIC32 programmieren will, braucht man zwar einen 
anderen Compiler von denen, aber GUI, Bibliotheken usw. bleiben 
weitestgehend gleich.

von Matthias (Gast)


Lesenswert?

Hallo Forum!

Ich habe mir jetzt nen Atmel Atmega16 besorgt, inkl. passendem 
Programmiergerät und einer simplen, verständlichen Software: Bascom.

Genau so habe ich mir das vorgestellt: keine 4 Fenster mit kryptischen 
Inhalten, sondern einfach eins, in das ohne großes Tralala das Programm 
geschrieben wird, um es anschließend mit einem Knopfdruck zu 
kompilieren.
(vor allem ohne vorher noch tonnenweise irgendwelche Verzeichnisbäume 
mit Dateien füllen zu müssen).

Ich kann zusammenfassend sagen, dass sich der Atmel weitaus 
benutzerfreundlicher darstellt, selbst wenn es sich nur aufgrund der 
besseren Software für Anfänger so verhält.
Vor allem ist es da wirklich genau wie gewünscht:
Man ruft das LCD mit einem simplen 2 Zeiler auf, und kann bereits 
Zeichen darauf darstellen.
Dabei ist es für mich völlig irrelevant, weshalb der Controller jetzt 
genau das Richtige macht- er TUT es einfach.
Wenn ich da an irendwelche merkwürdigen Assemblercodes denke- oh mein 
Gott.

Das PIC Kit2 mitsamt 7 Microcontrollern und CD's, IC-Fassungen steht zum 
Verkauf. Jemand Interesse?

Viele Grüsse und Vielen Dank für die Infos an euch,
Matthias

von spess53 (Gast)


Lesenswert?

Hi

>Vor allem ist es da wirklich genau wie gewünscht:
>Man ruft das LCD mit einem simplen 2 Zeiler auf, und kann bereits
>Zeichen darauf darstellen.

Und du meinst, das geht in Assembler nicht?

MfG Spess

von Carsten S. (dg3ycs)


Lesenswert?

Hi,

Atmel und Einsteigerfreundlicher?
Der war gut ;-)

OK, mit BASCOM welches ja definitiv für eher Gelegenheitscodierer ohne 
große Ambitionen zu professionelleren/Umfangreicheren Projekten Gedacht 
ist (Wobei sich natürlich damit tatsächlich vieles realisieren lässt, 
wenn jemand damit auskommt ist ja völlig egal...) kenne ich mich nicht 
so aus.
Aber mit AVR allgemein hat man doch mehr Stolperfallen für Anfänger...
(SPI Timing beim Programmieren muss händisch bestimmt werden und passen, 
Sonst keine Kommunikation Verfusen möglich, Viele Programmer können NUR 
LVP, nach Verfusen kein Zugriff mehr möglich und man rätselt warum, Bugs 
im Studio. Teilweise Toolchain mit SW von verschiedenen HErausgebern die 
manuell konfiguriert werden muss nötig...)

Nicht falsch verstehen: Wenn du nun mit AVR/BASCOM besser zurecht kommst 
ist das völlig in Ordnung. Die AVR sind im 8Bit Bereich im großen und 
ganzen Leistungsgleich zu den PICs -wenn auch mit geringerer 
HArdwareauswahl-. Allerdings sollte dir klar sein das BASCOM eher ein 
SEitengleis ist. Man kommt auch zu Ziel, aber es ist etwas völlig 
anderes als C oder gar C++ mit dem man bei wirklich großen Projekten 
Zwangsläufig konfrontiert wird. Zudem legt man sich damit sehr auf AVR 
fest, es gibt zwar auch BASIC Dialekte für andere µC, aber die 
unterscheiden sich auch. Will man irgendwann doch C lernen fängt man 
wieder bei null an.
(Wenn es aber bei kleinen Projekten und die fixierung auf AVR bleiben 
soll, OK)

Evtl. währst du einer, für den ARDUINO tatsächlich eine wirklich gute 
Alternative ist. Das basiert auch auf AVR. Es stellt ein Gesamtkonzept 
aus IDE und Framework mit Zahlreichen Hilslibs wie man sie auch bei 
Bascom findet dar. (ARDUINO ist ja explizit für Nichtelektroniker die 
schnell zum Ergebniss kommen wollen Geschaffen, z.B. für Künstler die 
ein wenig Bewegung oder Lichteffekte in ihre Projekte bringen wollen)
Der große Unterschied zu BASCOM ist dabei aber das ARDUINO als 
Programmiersprache im Grunde schon C entspricht, mit einigen 
Vereinfachungen und zahlreichen Libs. Gerade das was du möchtest: Also 
zwei Zeilen CODE für die Anzeige auf LCD, das geht damit auch. VErbunden 
mit einer Kindersicheren IDE.
Da es sich hierbei aber um eine C Basierende Umgebung handelt ist der 
Umstieg auf andere Controller/Umgebungen im nativen C bei weitem viel 
leichter. Man fängt halt nicht wieder bei Null an, sondern kann sehr 
große Teile seiner bis dahin gesammelten Erfahrung weiternutzen.

Aber wie gesagt, da musst du selber wissen wo du hin möchtest, ICh sehe 
das alles natürlich mehr aus Sicht des Elektronikers der sich auch 
beruflich mit µC Programmierung beschäftigt und bei Fragen von Anfängern 
"ähnliche" Absichten zum Werdegang dahinter vermutet.

Allerdings muss ich eines hinsichtlich PIC ganz klar sagen:
Ich habe da sehr stark den Eindruck das wir da irgendwie über zwei 
völlig verschiedene Umgebungen reden... Bei MPLAB ist es definitiv nicht 
nötig VIER FENSTER zu füllen. Egal ob man nun in ASM, C oder einem BASIC 
Dialekt schreibt... Für die meisten Dinge reicht ein Fenster, für 
umfangreichere C Projekte hantiert man noch öfter mal mit zwei Fenstern. 
(die jeweils offene Datei und der Projektbaum). Aber drei oder mehr 
Fenster braucht man nur bei umfangreichen Debugsessions wo man sich dann 
noch die Registerinhalte während des Programmablaufs ansehen will usw.
Bei der aktuellen VErsion muss man es zwar alles Projektorientiert 
machen, damit ist es in der Tat aufwendiger als nur auf "NEU" drücken 
wie früher, aber wirklich schwierig ist es nicht.

Loslegen: Anklicken: Projekt-> Projekt Wizard.
Dann kommt ein Dialog wo du nacheinander fast Kindersicher abgefragt 
wirst was du machen willst (Baustein, ASM oder C, Projektname und 
Verzeichniss usw). Als weiteren Click dann noch: FILE -> ADD NEW FILE TO 
PROJEKT.
Hier dann den neuen Filenamen eingeben (mit .ASM für Assembler, oder 
.c/.h für C) Das richtige Einordnen erfolgt automatisch.

Danach das Filefenster vergößern und man kann alles in diesem einen File 
erzeugen. Mit einem Klick auf den Build ICON wird es dann ggf. 
Compiliert, Assembliert und gebrannt.

Zu Assembler:
Assembler ist halt die Grundsprache der µC welt. Auch deine BASCOM 
Programme werden intern in ASM umgewandelt und erst DANN in 
Maschinensprache übersetzt. JEDER µC wird im grunde also mit ASM 
Programmiert.
Aber ob DU nun in Assembler schreibst ist völlig deine eigene 
Entscheidung. Du hättest ja auch einfach bei der Abfrage auf "C" stellen 
können... Dann hättest du mit ASM nichts zu tun gehabt. Oder du hättests 
dir einen der BASIC Dialekte für PIC besorgt und dann in BASIC 
geschrieben... Das ist alles keine Frage der Bausteine sondern schlicht 
der durch den Nutzer gemachten Einstellungen. Und dieser 
"konfigurationsaufwand" steht meiner Ansicht nach auch in keinem 
ernsthaften Verhältniss zur richtigen µC Programmierung.

Aber wie gesagt, wenn du mit AVR jetzt gut zurechtkommst, dann bleibe 
ruhig erst einmal dabei. Wenn du beruflich nichts in der Richtung machen 
willst ruhig auch beim BASCOM. ICh bin, obwohl selber durchaus 
PIC-Liebhaber, der letzte der dir das ausreden würde, vertrete ja selber 
die Meinung das man immer den für sich und das jeweilige Projekt 
optimalen µC aussuchen soll, unabhängig von irgendwelchen 
QUASIRELIGIÖSEN ansichten.

ICh wollte nur darauf hinweisen das du irgendwie "völlig" neben der Spur 
bei MPLAB gesucht hast. Warum weiß ich nicht... Es gibt halt 
verschiedene BEdienphilosophien und jede von denen ist für einige Nutzer 
klar und leicht verständlich, für andere wiederrum völlig kryptisch. Das 
ist auch völlig unabhängig von Sonstigen "geistigen Fähigkeiten" manches 
liegt einem, manches nicht. Vielleicht war das hier die Ursache.

Nur eines wiederhole ich noch einmal: BASCOM macht es Anfängern leicht. 
Und wenn es für dich reicht gibt es auch keinen GRund unbedingt etwas 
anderes zu nehmen -AUSSER- Du willst irgendwann einmal etwas Beruflich 
in diese Richtung unternehmen.
Falls es so sein sollte, du also entsprechende berufliche Ambitionen, 
selbst in weiter FErne, sieht, dann lasse am besten GLEICH die Hände 
davon, denn fast alles was du damit lernst kannst du wieder vergessen...
Dann wähler wirklich lieber den etwas schwierigeren Einstieg in C, oder 
wenn dir das noch zu Aufwendig ist, bzw. dir momentan nicht schnell 
genug zum Zeil führt zumintest ARDUINO.
Da hst du für deine Weiterbildung deutlich mehr davon!

Gruß
Carsten

von Matthias (Gast)


Lesenswert?

Hallo Carsten und vielen Dank für deine ausführliche Antwort!

Leider habe ich es NICHT geschafft, mittels MPLab eine andere Sprache 
als das integrierte Assembler zum laufen zu bringen.
Der High-Tech C-Compiler ließ sich ebensowenig drauf einrichten, wie der 
Basic-Compiler.
Nach diversen Tutorials funktionierte es nicht, oder setzte andere 
Gegebenheiten vorraus (PIC18f oder Kaufsoftware).

Der Hintergrund zum Wechsel auf Atmel16 ist mitunter auch, dass ein 
Arbeitskollege von mir sehr ambitioniert damit (+Bascom) arbeitet und 
mir helfen kann.
Ich habe in den letzten Tagen wirklich sehr viele Seiten und Tutorials 
zum PIC durch, aber 99% beschäftigen sich mit den Interna des µC's, und 
irgendwelchen kryptischen Befehlen. Das interessiert jemanden, der 
lediglich auf einem LCD 4 Werte anzeigen lassen will, einfach nicht 
wirklich. Mit blinkenden LED's anfangen würde mich nicht zum Ziel 
bringen, und selbst wenn, dann nur nach 34 Nervenzusammenbrüchen.
Die Interna interessieren mich nicht, ich möchte einfach ein simples 
Basic-Programm schreiben, das mit sehr wenig Code sehr viel Ergebnis 
liefert.
Da es nur um das Auslesen von 2 Temperaturwerten aus DS1820 und 2 
Analogwerten geht, ist wirkliche Performance des Programms auch nicht 
angesagt.

Da ist Bascom schon sehr gut. Ich konnte schon ein wenig damit 
herumexperiementieren und bin einfach begeistert.
Es ist logischer, einfach Programmcode eingeben, und anschließend 
flashen.
Bei MPlab kamen (ich habs insgesamt 3 Leute ausprobieren lassen) 
permanent irgendwelche Fehlermeldungen, oder es fehlten angeblich 
Dateien, etc... pp.
Auch habe ich kein To-Do gefunden, eine vernünftige Schritt für Schritt 
Anleitung zum einrichten des C-Compilers. Die bestehenden PDF's stimmen 
einfach nicht mit dem tatsächlichen Installations- und 
Einrichtungsverlauf überein.

Das alles fällt bei Bascom komplett weg: Installieren + Läuft. Noch dazu 
simpel in Deutsch gehalten.
Nicht falsch verstehen, ich kann Englisch, brauche es beruflich häufig 
und habe zu allem Überfluss auch mit Automatisierungstechnik zu tun.

ABER: Ich habe nicht vor, den µC für etwas anderes als private Zwecke zu 
nutzen. Und da ich Basic kenne, es einfach viel simpler und logischer 
als Assembler ist und ich schnell Ergebnisse haben mag, ohne zu wissen, 
was der Prozessor jetzt im Hintergrund genau macht, scheint es für mich 
die bessere Lösung zu sein.

Die Lösung mit Ardunio ging mir auch schon durch den Kopf, ich bin dann 
aber zum Atmel16 gegangen, weil ich durch den Kollegen eben identische 
Ausgangsbedingungen haben wollte.

Viele Grüsse,
Matthias

von Peter D. (peda)


Lesenswert?

Matthias schrieb:
> Der Hintergrund zum Wechsel auf Atmel16 ist mitunter auch, dass ein
> Arbeitskollege von mir sehr ambitioniert damit (+Bascom) arbeitet und
> mir helfen kann.

Das ist oftmals mehr Wert, als das absolute super-duper Tool.
Laß Dir nicht einreden, daß Bascom ne Sackgasse ist. Den Programmaufbau 
kann man in jeder Programmiersprache lernen und dann die gewonnenen 
Erfahrungen weiter verwenden.

Wenn Du mit Bascom Erfolge hast, ist das doch schön.
Das Manual BASCAVR.PDF hast Du bestimmt schon gefunden.

Es kann sein, daß Du irgendwann nicht mehr die vorgefertigte Funktion 
für irgendwas finden wirst. Dann kann man diese auch in Bascom selber 
programmieren, wie in jeder anderen Sprache auch. Das ist dann der 
Schritt vom Legosteinchen weg und hin zum selber bauen.


Peter

von Matthias (Gast)


Lesenswert?

Hallo Peter!

Danke auch dir für deine Ausführungen!

Genau so geht es mir auch: Ich möchte durch Erfolge lernen, nicht 
lernen, um Erfolge zu haben. Das klingt erstmal völlig absurd, ist es 
aber eigentlich nicht.

Kurzum: Durch bestehende Programme und dessen Veränderungen 
Schlüsselerlebnisse zu haben, und nicht mühsam irgendwelche Register und 
Adressen in Assembler rumschubsen. (völlig legitim für jemanden, der das 
braucht oder von Interesse für ihn ist, für mich jedoch unbrauchbar)

Ich versuch's jetzt in Bascom. Es dauert noch, bis alle Teile da sind, 
danach gibts einen ausführlichen Bericht!

Viele Grüsse,
Matthias

von Der Rächer der Transistormorde (Gast)


Lesenswert?

Matthias schrieb:
> Ich bin am verzweifeln. Seit Tagen durchstreife ich sämtliche
> Internetquellen zum Thema PIC programmieren, aber da ist permanent von
> bereits fertigen Listings die Rede, und welche Adressen was machen, und
> und und...

Ohne jetzt alles durchgeelsesn daher vielleicht doppelt.

Du zäumst das Pferd von hinten auf. Ohne Vorkenntnisse, gleich mit MPLB 
und so einem Projekt anzufangen überfordert vermutlich jeden.

Mein Vorschlag.

Da du Quickbasic kannst hol dir den Basic Compiler von Miroelektronika.

http://www.mikroe.com/eng/products/view/9/mikrobasic-pro-for-pic/

Der ist sehr liebevoll gmacht, kostenlos bis ein paar k Codesize hat ein 
grosses englische Forum und führt auch C Sprachelemente ein (was bei µCs 
von Vorteil ist).

Lad dir die Beispiele runter und spiel damit rum.

Damit hast du erst einmal genug zu tun.

von Erich (Gast)


Lesenswert?

Es gibt eine weitere gute Tutorial-Seite, die noch nicht erwähnt wurde.
Speziell die Unterseite "Midrange PIC C Programming", Kapitel 1 "Basic 
Digital I/O" beschreibt, wie man den Hi-Tech compiler innerhalb MPLAB 
zum laufen kriegt. Alles in englisch, klar...

http://www.gooligum.com.au/tutorials.html
http://www.gooligum.com.au/tut_midrange_C.html
http://www.gooligum.com.au/tutorials/midrange/PIC_Mid_C_1.pdf

Man sollte sich die .PDF ausdrucken (!) und ordentlicht durchlesen, dann 
das Beispiel Schritt-für-Schritt nachvollziehen, zunächst mit dem dort 
verwendeten uC (auch wenn man den nicht hat).
Erst wenn daraus eine fehlerfreie .HEX Datei erzeugt wurde, sollte man 
das Projekt nochmals auf den eigenen Typ des uC wiederholen.

Gruss

von Thomas D. (thomasderbastler)


Lesenswert?

Habe kurz mal alles durchgelesen..

Meine Meinung ist, es ist für den Einstieg wesentlich einfacher wenn man 
Bascom nimmt, wenn wie ich am Anfang Null Ahnung hatte, was programieren 
anbelangt.

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.