www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Impuls über CAN auswerten


Autor: Tonelli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich möchte einen Rechteckimpuls über CAN auswerten. Bisher habe ich das 
mit dem PIC18F4520 und dessen Zähler gemacht. Jetzt soll über den 
CAN_High und CAN_LOW ausgewertet werden. Wie kann man das am besten 
machen ? Muss der Impuls vorher noch über den MCP2515 laufen ?

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du meinst du willst die Impulslänge eines Rechteckimpulses messen und 
diesen Wert per CAN-Bus übertragen, oder verstehe ich dich falsch?

Autor: Tonelli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Genauso meinte ich das.

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich kenne den PIC nicht, hat der einen CAN-Controller intern?

Du brauchst in irgend einer Form einen CAN-Controller integriert im µC 
oder als externen IC.

Autor: Willivonbienemaya .. (willivonbienemaya)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der PIC hat glaub ich keinen CAN Controller oder?

So wie ich das verstehe musst du dir mal paar Seiten zu CAN durchlesen 
und die dann ein Controller suchen, der einen CAN Controller hat.
Oder du benutzt einen externen CAN Controller (zB: MCP2515).

Autor: Tonelli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hatte mir schon mal vorher den PICF4580 angeguckt. Der hat einen 
integrierten CAN-Controller. Möchte das aber lieber extern, auf einer 
eignenen Platine machen. Also wäre der MCP2515 der richtige ?

Autor: Tonelli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und wie würde ich dass dann am besten mit dem Baustein realisieren ?

Autor: Lars K. (larsk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

guck Dir mal folgende Thread an: 
Beitrag "MCP 2515"

Da gibt es einige PDF Dateien mit Beispielschaltungen.

Gruß

Lars

Autor: Tonelli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na ja so ganz hilft mir das noch nicht weiter. Die Frage ist an welchen 
PIN müsste ich den Impuls(Hardware)zum Auswerten anschließen. Ich meine 
mir ist klar wenn ich den Impuls ausgewertet habe dann kann ich noch 
über einen MCP2551 diesen an den CAN-BUS anschließen. Kann irgendwie 
früh am morgen noch nicht denken :-)

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst deinen "Impuls" nicht an den CAN-Bus anschließen. Weder mit 
noch ohne MCP2515.

Du musst zwischen Impuls und CAN-Bus noch einen Microcontroller haben, 
der den Impuls auswertet, das Ergebnis in einen CAN-Frame packt, und 
diesen dann auf den CAN-Bus schickt. Über CAN kann man nur Datenframes 
übertragen.

Dazu musst du allerdings erst mal einen Algorithmus auf einem Controller 
deiner Wahl implementieren, der den Impuls auswertet, dann musst du die 
Schnittstelle (SPI) zum MCP bearbeiten, das CAN-Datenformat verstanden 
haben, die Hardware aufbauen.....

Autor: Tonelli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also nehme ich jetzt z.B. den Mikrocontroller PIC18F4580 mit 
integrierten CAN-Controller, werte den Impuls aus, schicke ihn über 
CAN_TX und CAN_RX auf den MCP2551 und kann dann auf den CAN-Bus gehen. 
Habe ich das so richtig verstanden ?

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst den Impuls nicht auf CAN_TX schicken. Du hast offensichtlich 
keine Ahnung, was der CAN-Bus ist. Auf dem CAN-Bus kannst du nur 
Nachrichten verschicken, deren Aufbau genau festgelegt ist. Lies dir 
bitte erst mal durch, was denn CAN eigentlich ist.

Autor: Tonelli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich glaube Du hast mich falsch verstanden. Ich werte die Impuls über den 
Mikrocontroller aus und sende je nach Auswertverfahren Datenpakete an 
den MCP2551.So hatte ich mir das vorgestellt.

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Achso. Naja, der MCP2551 ist ja nur der CAN-Treiber. Den musst du halt 
an den CAN-Controller anschließen. Der wandelt das symmetrische CAN 
Signal in Logik-Pegel. Dann ist das so schon mal richtig:

Sensor ----(Impuls)----> µC <---> CAN-Controller <----> CAN-Treiber 
<---> CAN-Bus.

Autor: Willivonbienemaya .. (willivonbienemaya)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Er schreibt der 18F4580 hat einen internen CAN Controller, dann kann er 
sich den MCP2515 sparen.
Ich denk er meint schon das richtige.

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jo, dann brauchts nur den CAN-Transceiver. Seine Problemschilderung is 
bissl verwirrend, aber er wirds schon richten.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.