Schaltplan für CAN

Gast #4281774
Lesenswert?

Erst einmal danke.
Also eigentlich möchte ich nur eine art CAN-Sniffer erstellen, wo ich 
die Daten über UART an meinen Computer geben kann. Welchen Controller 
ich dafür verwende ist eigentlich relativ egal. Allerdings habe ich 
gesehen, dass der dsPIC33F nur bis 3.6V kann. Habe aber gerade 
nachgesehen, dass die anderen Bauteile ebenfalls mit 3.6V funktionieren.
Bis auf das Bluetooth-Modul, welches ich mit dem UART anspreche, 
benötigt 5V. (Habe das HC-06). Da muss ich noch einmal überlegen, was 
ich mache.
Momentan sehe ich zwei Möglichkeiten
1.) So lassen wie es ist (bis auf INT vom mcp2515) da ich aber keinen 
Interrupt-pin am PIC mehr frei habe müsste ihc mir da eh was anderes 
überlegen
2.) einen dspic33f... und nur einen mcp2551. Dann das ganze mit zwei 
Spannungsregler, einmal für 3.6V und einmal für 5V.

Johannes
Gast #4281822
Lesenswert?

Johannes schrieb:
> Also eigentlich möchte ich nur eine art CAN-Sniffer erstellen, wo ich
> die Daten über UART an meinen Computer geben kann. Welchen Controller
> ich dafür verwende ist eigentlich relativ egal. Allerdings habe ich
> gesehen, dass der dsPIC33F nur bis 3.6V kann. Habe aber gerade
> nachgesehen, dass die anderen Bauteile ebenfalls mit 3.6V funktionieren.
> Bis auf das Bluetooth-Modul, welches ich mit dem UART anspreche,
> benötigt 5V. (Habe das HC-06). Da muss ich noch einmal überlegen, was
> ich mache.

Es ist zwar löblich sich mit bestimmten Sachen selbst zu beschäftigen, 
aber manchmal sollte man seine Zeit besser nicht damit verbringen das 
Rad immer neu zu erfinden. Mit dem Usbtin hat Thomas Fischl ein gut 
dokumentiertes OpenSource-Projekt veröffentlicht. Da kannst du dir 
genügen Insperation holen, zumal es ja auch auf einem PIC und dem 
MCP2515 aufbaut. Da sind auch sicher schon viele Stunden in die 
Entwicklung der Software geflossen, das muss man dann erst mal wieder 
aufholen. Oder man benutzt es und beschäftigt sich gleich mit dem 
Projekt wofür man den Sniffer überhaupt braucht. Hier noch der Link:
http://www.fischl.de/usbtin/
Gast #4281838
Lesenswert?

Hallo,

> Also eigentlich möchte ich nur eine art CAN-Sniffer erstellen, wo ich
> die Daten über UART an meinen Computer geben kann. Welchen Controller

Der MCP2515 hat aber nur einen winzigen Empfangs-FIFO von zwei Frames. 
Interrupt kommt, wenn eine RX-Mailbox voll ist, und dann hast Du nur 
noch eine Frame-Laenge Zeit, das erste Frame abzuholen. Fuer einen 
Sniffer ist das riskant...

> 1.) So lassen wie es ist (bis auf INT vom mcp2515) da ich aber keinen
> Interrupt-pin am PIC mehr frei habe müsste ihc mir da eh was anderes
> überlegen

...besonders wenn Du den mcp2515 nur gelegentlich pollst.

Ich rate sehr zu einem uC mit eingebautem CAN mit ordentlich Mailboxen, 
die sich in FIFO umschalten lassen.
#4281878
Lesenswert?

Johannes schrieb:
> Also eigentlich möchte ich nur eine art CAN-Sniffer erstellen, wo ich
> die Daten über UART an meinen Computer geben kann.

Also wenn's über BT gehen soll und dir der Controller eigentlich egal 
ist dann habe ich da auch schon mal was gemacht. Ist zwar eigentlich ein 
BT-CAN Interfae aber wenn man nur die eine Richtung benützt, dann ist es 
eben ein Sniffer;-)

<edit> Sorry, der PIC war ein 18F2xK80 und das BT Modul ist das WT12.
Die Firmware würde ich bestimmt auch noch finden;-)
Angehängte Dateien:
#4281893
Lesenswert?

Für einen CAN-Sniffer halte ich den MCP für ungeeignet. Allein um den 
Status nach einem Interrupt abzufragen, musst Du schon mehrere Bytes 
über SPI senden. Bei kontinuierlichen 1Mbit-CAN-Daten verlierst Du 
unweigerlich Daten. Auch der Usbtin hat bei 1Mbit Probleme bzw verliert 
msgs.

Bist Du sicher, daß Dein Bluetooth-Modul 5V braucht? Die allermeisten 
Module brauchen 5V nur noch, weil sie intern einen weiteren 3.3V 
Spgsregler zwischengeschaltet haben.

Gruß, Stefan
Gast #4282205
Lesenswert?

Stefan K. schrieb:
> Module brauchen 5V nur noch, weil sie intern einen weiteren 3.3V
> Spgsregler zwischengeschaltet haben.

Ja, so ist es auch bei mir. Also das eigentliche Bluetooth-Modul ist auf 
einer weiteren Platine gelötet, wo ein Spannugnsregler drauf ist, 
welcher aus den 5V wieder 3.3V macht.


Später wäre es natürlich auch nicht schlecht, wenn ich den CAN-Bus nicht 
nur abhören kann, sondern auch was draufschreiben kann (das habe ich 
oben falsch gesagt (also mit dem CAN-Sniffer)).

Ich denke, ich mache mir jetzt noch einmal neue gedanken, wie ich es 
anders machen kann. Wahrscheinlich wird es dann doch auf einen 
dspic33f... hinauslaufen und ein Bluetooth-Modul, welches ich direkt mit 
3.3V versorgen kann.

Auch für den Link bin ich sehr dankbar und muss ich mir heute abend erst 
einmal in ruhe genauer durchgucken. Aber grob ist es ja so etwas, was 
ich machen möchte.

Vielen dank schon einmal für die vielen Tips.

Johannes
#4282443
Lesenswert?

Johannes schrieb:

> Ja, so ist es auch bei mir. Also das eigentliche Bluetooth-Modul ist auf
> einer weiteren Platine gelötet, wo ein Spannugnsregler drauf ist,
> welcher aus den 5V wieder 3.3V macht.

Dann schmeiß den Spannungsregler runter und überbrücke die Pads. Problem 
erledigt.

Und Dir ist aufgefallen, dass ich Dir einen MCP2562 als Transceiver für 
den dsPIC33FJ genannt habe? Der hat nämlich zwei VDD-Pins: einmal 3.3V 
für die Logikseite und einmal 5V für die Bus-Seite.

Ist auch nicht teurer.

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