Forum: Mikrocontroller und Digitale Elektronik c-syntax für PIC


von David Rosales (Gast)


Lesenswert?

Hallo Leute,

Mittlerweile kenne ich mich einigermassen aus mit der programmierung von 
AVR uController. Leider muss ich auf PIC uController umsteigen und so 
weit ich mich informiert hab, ist die Syntax zum ansprechen der Ports, 
etc, anders als bei den AVRs.

Jetzt zur Frage:
Gibt es irgendwo eine Art 'Wörterbuch' für die Leute die von AVR auf PIC 
umsteigen? Wenn es so einen ausführlichen Tutorial gebe wie für AVR GCC 
auf dieser Seite, wäre es nicht so schlimm, aber leider gibt es nicht 
was einem so ausführlich lehrt.
Die Datenblätter von PIC haben auch keine C-Beispiele wie auf den ATMEL 
Datenblätter.

Assembler ist keine Option.

Gruss

D

von tastendrücker (Gast)


Lesenswert?

Ich denke mal die Syntax hängt vom verwendeten C-Compiler ab, nicht vom 
µC.

von Severino R. (severino)


Lesenswert?

www.microchipc.com   <- beachte das "c" am Schluss
www.fernando-heitor.de
www.sprut.de

sowie natürlich die Websites der Compiler-Hersteller.

Um welche PIC-Familie und welchen Compiler geht es überhaupt?

von Andreas K. (a-k)


Lesenswert?

Ich habe den Eindruck, dass die Migration sonst eher in die umgekehrte 
Richtung läuft.

> Assembler ist keine Option.

Das ist schonmal eine sinnvolle Entscheidung. PIC Assembler ist 
Hardcore.

Ein "Wörterbuch" um Äquivalente bei irgendwelchen UART-Bits zu finden 
ist witzlos und führt bloss zu Problemen. Für einiges davon 
(UART,SPI,...) gibt es von Microchip auch Libraries, die das etwas 
vereinfachen, jedenfalls für den C18, inklusive Quellcode. Microchip 
liefert in den Datasheets zwar keinen Sample-Code, aber Anleitungen 
(erstens, zweitens, drittens, ...) sind teilweise schon drin.

Der auffälligste Unterschied: Rund um Ports heisst alles anders als der 
Rest der Welt es nennt. PORT=LAT, DDR=TRIS, ... wobei funktionell 
wichtig ist, dass die Bits der Richtungssteuerung umgekehrt arbeiten 
(1=Eingang) als man sonst gewohnt ist.

von David Rosales (Gast)


Lesenswert?

Vielen Dank für die Hinweise,

ich werde mich durch die Links durcharbeiten.

Es geht im Moment um die PIC18F Familie. Aber ich schliesse den Rest 
nicht aus.

Gruss

D

von Schoasch (Gast)


Lesenswert?

Aja und zwecks Wörterbuch

DDRx wird zu TRISx

PINx wird zu PORTx

PORTx wird zu LATx (du kannst theoretisch auch PORTx verwenden, solltest 
du aber nicht, da du sonst probleme mit read modifey- write bekommst)

Aja.. und die Pins heissen jetzt halt nicht mehr PBx  sondern RBx.

Naja.. und das war auch schon das wichtigste von den IO Ports.

mfg Schoasch

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.