Hallo, ich will ein CAN-Bussystem aufbauen, um ein Paar Sachen zu probieren, aber ich weiß nicht, was für Bauteile ich Brauche. Im Internet finde ich alle möglichen Kontrollern, aber ich weiß eben nicht was ich zum anfangen brauche. Danke!
Idealer Weise je Einheit einen µC und einen CAN-Controller. µC kannst Du nahezu beliebig wählen (am besten Atmel da hier der support in diesem Forum sehr gros ist), CAN-Controller würde ich Dir den SJA1000 von Phillips empfehlen. Mit diesen Stichworten müsstest Du im web einiges finden
Ich bastel gerade ein bisschen mit CAN: Als Hardware habe ich das ATmega128CAN Modul von http://www.embedit.de/ Zusätzlich brauchst du nur noch einen Treiberbaustein, beispielsweise den PCA82C250 und ein bisschen Draht für den Anfang. Zum Testen hab ich noch einen USB Adapter von http://www.peak-system.com
Nachtrag: 1. Überlest bitte die beiden Rechtschreibfehler oben 2. Als µC würde ich Dir den ARM9 vorschlagen - der bietet Platz und Luft nach oben und der Preisunterschied zum ARM7 ist bei 2 Stück nicht spürbar!
Gast wrote:
> 2. Als µC würde ich Dir den ARM9 vorschlagen
Sauguter Tip ;-)
Wenn er dann endlich den ARM9 beherrscht, ist das bissel CAN nur noch
ein Kinderspiel.
Peter
Jo, ARM9 zum Einstieg ist wirklich ein bissl dolle ;-) Ich würde auch nen µC mit integriertem CAN Controller empfehlen. Wie bereits genannt den AT90CAN128 (AVR) oder wenn bereits andere Vorlieben bestehen z.B. den AT89C51CC01 (8051). Beide haben IMHO den selben CAN-Controller drin. SJA1000 ist zwar schön und "quasi-standard". Benötigt aber einen externen Daten- und Adressbus. Ansonsten vielleicht ein Controller deiner Wahl ohne CAN und dann über SPI noch den MCP2515 angeschlossen. Code dafür sollte auch zu finden sein. Hinter den CAN-Controller kommt dann noch ein CAN-Transceiver, der für die passenden Pegel auf dem Bus sorgt (diff. Signal). Davon dann mindestens zwei Module aufgebaut (oder gekauft) und schon kanns losgehen :-)
Naaaa jaaaaa, aber vielleicht ein ARM7? Da gibt es, hier im Shop des Forums, ein Olimex-Board mit LPC2129 von NXP (ehemals Philips). Der LPC2129 hat 2 integrierte CAN-Controller, und die haben auch etwas ERRATA wie alle neueren Controller, aber es gibt von der Keil-Homepage betriebsfertigen Demo-Code in C-Source, wenn man schnell was erreichen will, und der die ERRATA berücksichtigt. Das Olimex-Board hat 2 betriebsbereite CAN-Schnittstellen, wenn mich nicht alles täuscht. Gruß Dietmar
Oder, Du nimmst einen der Fujitsu-Controller z. B. der 16-Bit Familie mit integriertem CAN. Günstige Eval-Boards gibt es bei www.glyn.de und gleich noch die kostenlose SW-Entwicklungsumgebung dazu. Je nach Anforderungen sind die Controller der Familien 360, 350 und 340 ganz nett. Gruß Wolfgang
Der MCP2515 hat einen ziemlich konkurrenzlosen Charme: Er lässt sich mit jedem Microcontroller kombinieren der noch 4 Pins frei hat. Beim SJA1000 ist das aufgrund des pinraubenden parallelen Businterfaces nicht gegeben. Gegenüber integrierten Versionen wie beispielsweise AT90CAN128 oder LPC2129 hat man den Vorteil, dass man bei Migration von AVR auf ARM oder sonstwohin nur ein paar Zeilen SPI-Code umbauen muss, der Rest vom CAN-Stack bleibt erhalten. Mit beispielsweise ATmega8 + MCP2515 ergibt sich eine durchaus kompakte und ausgesprochen billige Lösung. Deutlich billiger beispielsweise als das integrierte Pendant von Microchip.
M32C/80 Group bietet bis zu 1Mbyte Flash / 48Kbyte RAM und bis zu 2 Can 2.0B Schnittstellen dieser Mikrocontroller bietet alle Vorzuege eines ARM7. Ich würde Dir für den Start ein MCP2515 o. AT90CAN128 empfehlen.
CAN-Bus; Was brauche ich sonst noch? Außer dem Controller, braucht man meistens noch einen Transceiver, der die Logikpegel des Controllers in CAN-Bus-Pegel wandelt und umgekehrt. Philips beabsichtigte vor längerer Zeit sogar mal, auch die Transceiver in den Mikrocontroller zu integrieren. Interessant wäre das schon. Nun, wie weit das gereift ist, habe ich bis jetzt nicht erfahren können. Notfalls, wenn kein Transceiver zur Hand, kann man für kleine Experimente auch CAN-Controller über Wired-AND (Dioden und Widerstände) betreiben, aber das ist dann kein echter CAN-Bus mehr. Dietmar
> CAN-Bus; Was brauche ich sonst noch?
2 * 120 Ohm und zwei Drähte
;-) Werner
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.