Pic18f4480 Can -> C#

OP #3911311
Lesenswert?

Sehr geehrte Damen und Herren,

Ich bin neu hier im Forum, und hoffe daher das ich für meine Frage die 
passende Rubrik gefunden habe. Meine bisherigen Programmiererfahrungen 
basieren auf Hochsprachen, auf Microcontroller-, geschweige denn 
elektronischer-Ebene, sind leider begrenzt. Nichts desto trotz möchte 
ich mich da reinbeisen.
So, genug blabla, mein anstehendes Projekt sieht wie folgt aus:

Von einem PIC18F4480 sollen verschiedene Analysewerte an einen PC, wenn 
möglich über CAN, gesendet werden. Der Ablauf sollte ungefähr wie folgt 
ablaufen:

1.C#-Programm auf dem PC fordert einen Wert vom PIC an
2.PIC nimmt die Anfrage entgegen und leitet alles in die Wege zur 
Auswertung
3.PIC sendet das Ergebnis an den PC(z.B.: im 10 Sekundentakt), solange 
bis seitens des C#-Programmes die Verbindung beendet wird.

Meine Fragen dies bezüglich lautet wie folgt:

Der PIC besitzt bereits ein CAN/ECAN-Modul. Nun habe ich in mehreren 
Foren erfahren, dass trotz des Modules noch ein zusätzlicher 
CAN-Transceiver(z.B.: MCP 2551 
http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en010405) 
benötigt wird.
Im Datenblatt meines PICs habe ich jedoch keine Informationen zu einem 
CAN Transceiver gefunden. Wird dieser wirklich benötigt, oder besteht 
die Möglichkeit durch passende Firmware zu ersetzen?


Die Entscheidung fiel auf CAN, da bereits ein PIC18F4480 vorhanden ist. 
Sollte es eurer meinung nach eine "bessere" Lösung geben, so teilt mir 
diese Alternative gerne mit.

Vielen Dank!

Mit freundlichen Grüßen
Hans-Joachim
#3911348
Lesenswert?

1. Der PIC18F4480 und der PIC18F4580 sind alte PICs, die nicht mehr für 
Neuentwicklungen verwendet werden sollten. Die aktuellen Serien haben 
alle ein K oder ein J in der Typenbezeichnung. Hier ist es der 
PIC18F45K80, der günstiger ist und zugleich mehr Features hat.

2. Das CAN-Interface besteht auf einem digitalen Teil, der im PIC 
integriert ist, und einer analogen Busankopplung, die (fast) immer ein 
extra Chip ist. Diese externe Busankopplung ist der Transceiver, und den 
brauchst Du immer, und weil das Analogelektronik ist, kannst Du den 
nicht durch Software ersetzen.
Transceiver gibts verschiedene, für schnelles Zweidraht-CAN (250-1000 
kBit/s) optimiert, für langsames Zweidraht-CAN (bis 125 kBit/s) 
optimiert und für Single Wire CAN (läuft meist mit 33.33kBit/s). Je nach 
Busgeschwindigkeit und Bustyp und erforderlicher Spannungsfestigkeit etc 
wählst Du einen passenden Transceiver aus.
Der MCP2551 ist ein älterer Typ, aktuell ist der MCP2561, der bessere 
technische Daten bei gleichem Preis hat.

fchk

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren