PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ATMega8 CAN Testboard



Kjion
07.04.2005, 16:43
Hi,

http://www.kreatives-chaos.com/bilder/schaltungen/testboards/cantestboard_atmega8.jpg

ich hab mal ein kleines Testboard mit ATMega8 und MCP2515 ( CAN Controller ) erstellt.

Siehe : http://www.kreatives-chaos.com/index.php?seite=mega8can.

Features:

# ATMega 8
# MCP2515 CAN Controller
# MCP2551 oder PCA82C250 CAN Treiber
# CAN Stecker nach CiA ( CAN in Automation ) Vorschlag
# 120 Ohm Abschlusswiderstand per Jumper aktivierbar
# Versorgungsspannung auf dem CAN Bus zuschaltbar
# 5 Volt Spannungsregler
# RS232 Treiber ( Max232 )
# I2C Stecker
# Per Jumper zuschaltbare Pull-up Widerstände
# Standart ISP Stecker zum Programmieren des AVRs
# Resettaster
# zwei große Experimentierfelder ( Lochraster )
# alle freien Pins zu dem Lochrasterfeld geführt
# Platine : 100x80mm

MfG Kjion

Rubi
01.05.2005, 13:58
Hallo Kijon

Habe dein Board nachgebaut und es funktioniert super!!!

Sollte jemand so wie ich, die ICs bei Reichelt bestellen,
kann man (wie mir Kijon gemailt hat) anstelle des MCP2551 den PCA82C250 nehmen, funktioniert.
Glücklicherweise habe ich gleich 2 von den beiden CAN ICs bestellt.
Um das Board zu testen ist es nämlich vorteilhaft gleich 2 davon zu bauen.
Eines als CAN Sender, das zweite als CAN Reader.

Danke Kijon für dieses tolle Board!

LG
Rubi

Alex20q90
06.05.2005, 18:02
Hallo Leute,

sagt mal, könnte man dieses Board auch an den CAN-Bus eines Autos anschliesen, und die Daten dan z.b. per Funk senden?

Grüße
Alex

Kjion
07.05.2005, 11:23
Theoretisch ja, wenn es ein Standart CAN Bus ist.
Allerdings bräuchte man dazu Informationen über die Busgeschwindigkeit und vor allem über die Kodierung der Informationen in den CAN Packeten. Ohne die wirst du nur ne Ganze Menge von Daten bekommen mit denen du nichts anfangen kannst ;-)

MfG Kjion

Alex20q90
08.05.2005, 22:24
hmm,

ich denke schon das es sowas standartisiertes ist!

Es gibt ja schliesslich so zig OBDII / CAN-Bus-Adapter

Und da seit 1998 der OBDII pflicht ist, wird auch der CAN standartisiert sein!

grüße
Alex

derkleinschreiber
17.05.2005, 13:39
bitte löschen bitte löschen

Kaiser-F
29.06.2005, 23:18
Hallo,

Ich will mich gerne in CAN einarbeiten,

Könntet Ihr mir eventuell Links hier her Posten?

Bei der Beschreibung in ARTIKEL sind leider keine Bilder mehr zu sehen...


Oder wie Andre schon gebeten hat, einen Cuallcode veröffentlichen.
Das würde mir sehr stark weiterhelfen.

Gruß
Franz

Kjion
30.06.2005, 10:02
Moin,

Quelltext gibts hier : http://www.kreatives-chaos.com/index.php?seite=download...

Falls irgendjemand Verbesserungen dazu hat würde ich mich freuen wenn er sie hier reinstellen oder mir schicken würde damit alle was davon haben.

MfG Kjion

maw_hn
30.06.2005, 16:49
Hallo zusammen,
also erst mal ein grosses RESPEKT für Kjion. Sieht echt kalsse aus das Ding. Sobald ich mal wieder ein bissle Luft hab werd ich mich auch mal an den Nachbau machen.

@Alex: Das mit dem CAN- Standard ist so ne Sache. Klar, die Signale sind genormt. Allerdings hat jedes Fahrzeug ne eigene CAN- Matrix. Das ist quasi ne Tabelle in der staht welche Daten mit welchem Identifier verschickt werden. Ohne die kannst du zwar das Zeug vom CAN- Bus mitlesen, wirst aber recht wenig verstehen.

MfG Marco

Rubi
30.06.2005, 17:06
Hallo zusammen,
also erst mal ein grosses RESPEKT für Kjion. Sieht echt kalsse aus das Ding.

Dem kann ich mich nur anschließen.

Danke Kijon!

Rubi
30.06.2005, 17:09
@Alex: Das mit dem CAN- Standard ist so ne Sache. Klar, die Signale sind genormt. Allerdings hat jedes Fahrzeug ne eigene CAN- Matrix. Das ist quasi ne Tabelle in der staht welche Daten mit welchem Identifier verschickt werden. Ohne die kannst du zwar das Zeug vom CAN- Bus mitlesen, wirst aber recht wenig verstehen.


Na ja das stimmt natürlich, aber irgendwo müssen die das doch veröffentlichen.
Wie soll sonst ein Hersteller von z.b. einem Autoradio das Ding kompatibel machen?
Ich vermute eine Norm ist das schon dahinter.
Sonst würde man in Zukunft ja für jede Autmarke eine eigene Schnittstelle einplanen. Würde mich aber auch nicht mehr wundern.

LG
Rubi

maw_hn
30.06.2005, 21:18
Hallo Rubi,

also normale Autoradios zum nachrüsten haben normalerweise keinen CAN- Anschluss. In vielen neuen Fahrzeugen ist ein Radio ab Werk eingebaut, dass mit am CAN oder MOST (KFZ- Bus für Multimedia- Systeme) hängt. So wird zum Beispiel das zentrale Display in vielen neuen Autos nicht nur fürs Radio sondern auch für Einblendungen von Warnungen oder ähnlichem genutzt. Die Radios die da fest eingebaut sind, sind auf das jeweilige Fahrzeug abgestimmt. Oftmals geht es heutzutage sogar so weit, dass die Bedienknöpfe/CD- Player als ein Modul, das Display als ein Modul und das eigentliche Radio (dass dann meistens irgendwo hinterm Amaturenbrett verbaut ist) alle an einem gemeinsamen Bus hängen. Wenn du dann zum Beispiel ne Sendertaste drückst schickt die Bedieneinheit über den Bus eine Nachricht an das Radio, dass es jetzt bitte den gewünschten Sender einstellen soll. Das Radio wiederrum schickt ne Nachricht an das Display, dass es seine Einblendung ändern soll, und den aktuellen Sendernamen anzeigt. Veröffentlicht werden CAN- Matrixen normalerweise nicht. Die Autohersteller erschweren es auf diese Weise Tuner- Firmen an irgendwelchen Steuergeräten rumzuschrauben. Die Matrix wird nur an die Zulieferer herausgegeben und selbst die bekommen meistens nicht die ganze Matrix, sondern nur den Teil, den sie wirklich brauchen.

Kaiser-F
02.07.2005, 12:50
Hallo zusammen,

Ich hab mir nun ein Board für CAN mit atmega 128 konstruiert und möchte dafür

MCP2510 CAN Controller
http://www.farnell.com/datasheets/2268.pdf

in Verbindung mit

MCP2551 CAN Transciever
http://www.farnell.com/datasheets/43041.pdf

verwenden.

Hat jemand mit denen schon Erfahrung damit gemacht?

Sieht mir nahezu danach aus, dass der MCP2510 CAN Controller baugleich mit dem MCP2515 CAN Controller ist.´


Gruß
Franz

Kjion
02.07.2005, 14:12
Ich hab mir nun ein Board für CAN mit atmega 128 konstruiert und möchte dafür
Warum dann nicht gleich den AT90CAN128 ?? Mit integiertem CAN Controller und ein paar weiteren netten Features. Ansonsten aber fast gleich zum ATMega128...


Sieht mir nahezu danach aus, dass der MCP2510 CAN Controller baugleich mit dem MCP2515 CAN Controller ist.´
Genau, der MCP2510 ist der Vorgänger vom MCP2515. Von daher würde ich eher den MCP2515 verwenden :-) Es gibt von Microchip ein Pdf Dokument zum Unterschied der beiden Controller. Sie sollten sich aber sehr ähnlich ansteuern lassen!

MfG Kjion

Kaiser-F
04.07.2005, 15:38
Hallo Kjion,

Danke für deine Antwort.

1. Warum nicht gleich AT90CAN128...

Könnte ich schon, aber meine anderen Busteilnehmer arbeiten mit ATmega 8535 und ähnliche... mir ist es so Lieber, wenn CAN eine "Seperate Einheit" ist.


2. MCP...

Ich werde deinen Rat annehmen und den MCP2515 nehmen... der ist nicht mal teuer , bei Reichelt 1,95, auch der im SOW18 Package....

Hab das SOW18 Package bei Reichelt anscheinend erst übersehen.
Als ich es dann nirgenswo anders fand, antschied ich mich für den 2510...

naja... kann ja mal passieren... :-) sorry...

Gruß
Franz

Kaiser-F
22.07.2005, 08:36
Hallo,

Ich habe mir nun CAN-Module zusammengebastelt.

Mit MCP2515 und PCA82C250. In der ZIP-Datei findet Ihr Schaltplan und Layout für Eagle ( Schon die neuere Version mit Jumper für Abschlusswiderstand, Stromversorgung und Steckerbelegung wie Kjion. )

- Bild Entfernt -

Nun wollt ich einen Spezialisten von euch bitten, sich das anzusehen und zu sagen, "DAS STIMMT SO" oder "DAS IST SCH-beeep-"

Da ich mit der CAN-Sache noch nichts gemacht habe wäre es Hilfreich, wenn ich sicher gehen kann, dass zumindest die Hardware passt.

Achja, welches Quarz verwendet Ihr für den MCP2515? konnte aus dem Schaltplan von Kjion leider keine Frequenz rauslesen, nur 16MHz aus dem Bild?. Im Datenblatt steht auch nix....zumindest hab ich dort nichts konkretes gefunden

Vielen Dank schonmal vorab,

Kaiser-F
22.07.2005, 08:43
((--STOPP nochnicht runterladen, ich schließe mich der Steckerbelegung von Kjion an!--))ALT.

Jetzt passt es, Steckerbelegung wie Kjion's Board. Sorry.... Ich schaffs immer wieder die Leute zu verwirren. ](*,)

Kjion
22.07.2005, 13:48
Hmm, hab gerade versucht mir deine Dateien anzuschauen. Bist du sicher das sie mit einer legalen Version von Eagle erstellt wurden ??
( => Load Error 293 )

Aber da man sich immerhin das PDF Dokument anschauen kann mal ein paar Anmerkungen dazu:

RS sollte über einen Widerstand ( von 0 bis irgendwas ) auf GND gelegt werden. Für hohe Geschwindigkeiten direkt auf Masse legen!

VREF ist ein Ausgang und sollte offen gelassen werden, aber auf keinen Fall direkt an Vcc angeschloßen werden.

Ansonsten sollte das so stimmen.

Ich habe bei mir 16 MHz Quarze verwendet. Im Datenblatt ( bzw. es gab auch irgendeine tolle Webseite dazu, werd sie mal suchen ) ist beschrieben wie man sich die einzelnen Zeitkonstanten auch für andere Werte ausrechnet.

MfG Kjion

PS: Es gibt seit eben die Version 1.3 von dem CAN Board auf meiner Homepage :-) ( TXxRTS Pins herausgeführt, Spannungsregler liegend montiert uvm. )

Kaiser-F
22.07.2005, 14:53
Hmm, hab gerade versucht mir deine Dateien anzuschauen. Bist du sicher das sie mit einer legalen Version von Eagle erstellt wurden ??
( => Load Error 293 )

Ziemlich sicher... glaube ich könnte sonst nichtmal meine eigenen öffnen... Ich werd sie mal aktualisieren...




RS sollte über einen Widerstand ( von 0 bis irgendwas ) auf GND gelegt werden. Für hohe Geschwindigkeiten direkt auf Masse legen!


Stimmt... ist bei mir +5V...



VREF ist ein Ausgang und sollte offen gelassen werden, aber auf keinen Fall direkt an Vcc angeschloßen werden.


..... KA wie ich das gemacht habe... Aber das erklärt so einiges :-)


FAZIT: Man sollte nach 24UHr keine Schaltungen mehr konstruieren, da kommt nur Müll raus!





PS: Es gibt seit eben die Version 1.3 von dem CAN Board auf meiner Homepage ( TXxRTS Pins herausgeführt, Spannungsregler liegend montiert uvm. )


Bin schon gespannt sie mir anzusehen, Ich möchte mir aber sehr gerne die ganzen Codes selber erarbeiten, um es sicher zu verstehen.

Wäre daher echt super wenn du mit Links dazu geben könntest. Ich habe auch ein paar, aber zu allgemein. evtl habt ihr bessere.

Kaiser-F
22.07.2005, 15:04
Hier die verbesserte Version.

Sagt mir bitte bescheid wenns nicht gehen sollte...
Dann muss ich es maol neu installieren, nicht dass da falsche Verdachte aufkommen :-$


- Daten entfernt, da es nicht zu öffnen ist, und meine 3MB limit voll sind :-) -

Kjion
22.07.2005, 15:12
Ich möchte mir aber sehr gerne die ganzen Codes selber erarbeiten, um es sicher zu verstehen.
Wäre daher echt super wenn du mit Links dazu geben könntest. Ich habe auch ein paar, aber zu allgemein. evtl habt ihr bessere.

Hmm, eigentlich habe ich zum schreiben der Software nicht wirklich viel benutzt :-)
Das Datenblatt ist eigentlich ziemlich gut und sollte das meiste erklären.

Den Link zum Bit Timing Calculator hab ich auch wiedergefunden:
http://www.intrepidcs.com/BitCindex.htm

Das Programm ist ganz nett um sich die benötigten Register Inhalte zu verschieden Quarzfrequenzen und Baudraten ausgeben zu lassen. Wenn man aber mal verstanden hat wie die Berechnung funkioniert ist auch das ganz einfach :-)

MfG Kjion

Kjion
22.07.2005, 15:18
Sagt mir bitte bescheid wenns nicht gehen sollte...
Dann muss ich es maol neu installieren, nicht dass da falsche Verdachte aufkommen :-$

Dann solltest du es wohl nochmal neu installieren, lässt sich immer noch nicht öffnen...

Rubi
27.07.2005, 14:27
Hallo Kaiser

Ich sehe gerade Du verwendest auch Folie für den "Bestückungsdruck".
Lustig denn die letzte Platine auf der ich das auch gemacht habe war Kijons Can Kontroller, sonst bin ich meißtens zu faul dazu.

LG
Rubi

31.07.2005, 17:54
moin moin,
ich möchte mir auch 2 canmodule nachbauen und habe noch ein paar fragen:
* wo kann im beispielcode die knotenadresse eingestellt werden?
* gibt es auch beispielcode in bascom basic?
vielen dank
snud

Kjion
31.07.2005, 21:42
* wo kann im beispielcode die knotenadresse eingestellt werden?
Im Beispielcode wird noch gar keine richtige Nachrichtenauswertung betrieben, es gibt also auch keine einstellbaren Adressen.
Das Ganze lässt sich aber ganz leicht über die Filterfunktionen des MCP2515 realisieren.


* gibt es auch beispielcode in bascom basic?
Nein.

MfG Kjion

tuxilein
11.08.2005, 08:49
apropo CAN-BUS, ist ja ne feine sache, da er zu den Feldbussen gehört und störsicher ist.

Es gibt ja schöne MCU's z.b. der http://www.semiconductors.philips.com/pip/LPC2129.html LPC2129 von Philips mit integrirten Can controller es gibt auch externe CAN-Controller aber wo ich noch nicht fündig geworden bin gibt es auch Sensoren bzw Bausteine mit Integrirten CAN Bus so wie es bei i2c gibt (ich benutze gerne aus dem grund i2c) z. B. Temperatursensor, I/O Expander, EEProms, RealtimeClock ..... und und und

Gruß
Flo

Kjion
11.08.2005, 23:17
Sensoren mit CAN Controller habe ich noch keine gesenden. Das liegt einfach darin, das die Konfiguration bei CAN etwas komplexer ist als bei I2C.

Es gibt allerdings CAN Knoten mit integriertem ADC und DI/Os, wenn ich demnächst mal dazu komme werd ich mal was dazu schreiben.

MfG Kjion

Alex20q90
07.09.2005, 17:19
Hallo Kjion,

hast Du mal versucht den CAN-Controller an den CAN-Bus eines KFZ zu hängen und über Seriell die Daten im Terminal mitlesen zu lassen??

Wäre mal interessannt was da so läuft :-)

Achja, KFZ-Can ist nicht verschlüsselt da Standartisiert ;-)

Grüße
Alex

Kjion
07.09.2005, 17:35
hast Du mal versucht den CAN-Controller an den CAN-Bus eines KFZ zu hängen und über Seriell die Daten im Terminal mitlesen zu lassen??#

Sobald mir jemand ein Auto mit CAN Bus zum Basteln zur Verfügung stellt mach ich das gerne :-)

Ansonsten wirds schwierig ...

MfG Kjion

Alex20q90
09.09.2005, 12:12
Hmm, misst :-)

Ich habe zwar ein KFZ mit CAN (BMW e46 Bj 2003) aber ich kann kein C, sondern nur BASCOM ;-)

Also kann ich deinen Code nicht so abändern wie ich den brauch! Habe mir übrigens auch ein CAN-Board gebaut, allerdings mit SMD (bilder folgen)

Hast Du einen Code, der alle CAN-Daten per RS232 ausgibt? Also das Ding darf aufm CAN erstmal garnicht senden!

Grüße
Alex

Kjion
09.09.2005, 15:03
Hast Du einen Code, der alle CAN-Daten per RS232 ausgibt? Also das Ding darf aufm CAN erstmal garnicht senden!

Ich kann dir mal einen Testcode von mir schicken der genau das tut. Hast du alles so verschaltet wie auf den CAN Testboard ??

Schick mir am besten mal ne Mail.

MfG Kjion

michaelb
14.09.2005, 18:11
Des isch ja der Witz!!! Werbung im Roboternetz!!

Kjion
18.09.2005, 14:47
Moin,

hab gerade mal mein Tutorial zur Ansteuerung des MCP2515 in C hochgeladen:
http://www.kreatives-chaos.com/index.php?seite=mcp2515

MfG Kjion

yuppie
23.10.2005, 20:26
hi, gibt es eine bezugsquelle für die fertige (unbestückte) platine?
oder kennt jemand eine gute firma wo man die platine machen lassen kann ?

grüße,
Y.

Kjion
23.10.2005, 22:08
Hi,

hier gibts ne Liste mit allen möglichen Platinenherstellern:
http://www.mikrocontroller.net/articles/Platinenhersteller

Wenn Interesse besteht könnte man ja auch mal eine Sammelbestellung organisieren, das wäre für den einzelnen sicher günstiger...

MfG Kjion