-
Thread
SCI unterschied SPI
Hallo, Ich möchte einen CAN-Controller ansteuern, der ein SPI Interface eingebaut hat: MCP2515 Im Datenblatt meines µC steht jedoch nie etwas von einer SPI sondern einer SCI -> Diese besitzt die Leitungen RXD, TXD und SCK(clk) Kann das Funktionieren, dass ich den MCP2515 ansteuere?
-
Thread
Atmega8 kann MCP2515 per SPI nicht ansprechen
Hallo zusammen, Ich habe mein Problem bereits im MCP2515 Tutorial von Kreatives-Chaos gepostet, Eintrag vom 9. Juli 2009 http://www.kreatives-chaos.com/artikel/ansteuerung-eines-mcp2515 Leider konnte dort der Fehler auch nicht gefunden werden (ich habe
Schuß ins Blaue: Du hast die Frequenzen/Baudraten angepaßt, aber die Funktion mcp2515_init() [c] // test if we could read back the value => is the chip accessible? if (mcp2515_read_register(CNF1) != ((1<<BRP2)|(1<<BRP1)|(1<<BRP0))) { return false; } [/c] in der mcp2515
-
Thread
NMEA2000 nach NMEA0183 Converter
Message id nicht weiter kann mir da jemand helfen. habe den obigen Code ausprobiert. uint8_t mcp2515_read_id(uint32_t *id) { uint8_t first; uint8_t tmp; first = spi_putc(0xff); tmp = spi_putc(0xff); if (tmp & (1 << IDE)) { spi_start(0xff); *((uint16_t *) id
*((uint8_t *) id) |= tmp >> 5; spi_wait(); return 0; } } void mcp2515_write_id(const uint32_t *id) { uint8_t tmp; spi_start(*((uint16_t *) id + 1) >> 5); // naechsten Werte berechnen tmp = (*((uint8_t *) id + 2) << 3) & 0xe0; tmp |= (1 << IDE)
-
Thread
[S] Suche kleinen CAN Controler
Ich glaube von Microchip gibt es den MCP2515 oder Derivate? Den gibts in Kleinstmengen bei den üblichen Verdächtigen. Gruß TK
-
Thread
AD-Wandler Genauigkeit/Geschwindigkeit
einen Xmega nehmen und einen CAN-Controller als seperate Chip anschließen wie den SJA1000 oder den MCP2515. Der Xmega besitzt 2 ADCs mit je einem 1MS/s. MfG Stefan
AT90CAN128 bleiben und einen externen ADC anschließen. Die seriellen sind in 8 Pin Gehäusen verfügbar (LTC, MCP,..).
-
Thread
Logamatic 2107 Schnittstelle
ist das dort denn alles für Hardware drauf Ein ATMEGA328P, 23K256 SRAM/SPI, AT24C512B EEProm/I2C, MCP2551 CAN-Bus-Treiber, MCP2515 CAN-Bus-Controller, DC/DC für etwa 8-30V am Eingang. Die Schaltung soll dann mit 3V3 laufen. > Womit sind die Erweiterungsstifte belegt? Wie sind die 4 Stifte auf
-
Thread
Universelles CAN Interface; MCP2515: Probleme beim Filter setzen
Ich verwende den MCP2515 an einem Blackfin DSP. Für meine Treiber habe ich aber nur folgende Funktionen aus der lib verwendet: mcp2515_write_register mcp2515_read_register mcp2515_bit_modify mcp2515_read_status mcp2515
( RXM1SIDL, 0xe0 ); mcp2515_write_register( RXM1EID8, 0 ); mcp2515_write_register( RXM1EID0, 0 ); mcp2515_write_register( RXF0SIDH, 0xc4 ); mcp2515_write_register( RXF0SIDL, 0 ); mcp2515_write_register(
-
Thread
MCP2510 läuft nicht unter 250k
Hallo ich habe bereits einige Projekte mit dem MCP2515 gemacht, so jetzt hab ich hier ein paar MCP2510 ner und wollte die auf 100 k laufen lassen mit nem 16 Mhz Quarz. Geht aber nicht immer error Frames sobald ich unter 250kb geh. Hat jemand ne Idee
MCP2510 hat generell Probleme, die im MCP2515 behoben sind. Siehe: http://ww1.microchip.com/downloads/en/DeviceDoc/80059d.pdf
-
Thread
Interesse an einfach erweiterbarem Experimentierboard fuer den Xmega128a1?
Sachich Nich schrieb: > Can soll umgesetzt werden wie? Mit einem CAN-Controller, z.B. MCP2515. Ja, der ist noch nicht drauf, es geht mir auch erst einmal um die Verteilung der Schnittstellen und die Abmessungen.
-
Thread
MCP2515 - sendet nach Unterbrechung nicht mehr
Hallo, ich verwende einen MCP2515 und einen ATMega128 um unter anderem CAN-Botschaften zu senden. Die Programmierung erfolgt in C und das funktioniert soweit auch ganz gut. Allerdings möchte ich nach einer gewissen Zeit das Programm
Wartezeit sollen keine CAN-Botschaften gesendet werden. Und da liegt mein Problem. Entweder sendet der MCP einfach weiter, oder wenn ich vor dem Programmneustart den MCP neu initialisiere, einen Reset durchführe oder das Senden unterbreche indem ich das ABAT bit im CANCTRL Register setze, sendet er in der
-
Thread
MCP 2515 ausgelaufen? Alternative?
Vor einiger Zeit habe ich bei Reichelt noch einen MCP 2515-I/P gekauft. Anscheinend hat den jetzt keiner (C, Segor, Reichelt) mehr. Wieso? Gibt's einen Nachfolger in PDIP? Oder warum gibt's nicht gleich einen Controller inkl. Bustreiber in einem Gehäuse
-
Thread
µC mit ca. 32 Pins mit integriertem CAN Controller
ach so ja vergessen zu sagen. ich kann zwar MCP2515 und MCP2551 einsetzen, aber aus Platzgründen würde ich gerne drauf verzichten.
-
Thread
Hardwareempfehlung
zu nehmen und einen CAN-Controller separat anzuschliessen? Wenn ja, über SPI? habe bisher dazu nur MCP2510 gefunden. Und zu guter letzt: welche Bezugsquellen könnt ihr empfehlen? Evtl. als Samples erstmal? Danke
auch ein CAN-Controller für den SPI-Bus, der sich dann um das ganze CAN-Geraffel kümmert, bspw der MCP2515 http://www.datasheetcatalog.net/de/datasheets_pdf/M/C/P/2/MCP2515.shtml Dann steht dir frei auch einen anderen µC zu nehmen.
-
Thread
Ethernet CAN-Bus schnittstelle
Idee. Derzeit verwende ich für den CAN Bus eine platiene mit einem atmege16 (bzw atmege128) und dem MCP2515 Gruß Manfred
-
Thread
Strings zur Compilezeit in ein ByteArray einfügen (und auffüllen)
message.data[0] = fast_packet_index++; memcpy_P(message.data+1, &NMEA2000_ClaimAddress+6+7*i, 7); mcp2515_send_message(&message); } [/c] Meine Frage ist also weiterhin: Wie erhalte ich eine sequentielle Datenstruktur im Flash, die aus unsigned Integers verschiedener Größe und mehreren Strings
-
Thread
CAN-Aufgabe für neuling bei CAN
Hardwareseitig beispielsweise mit AVR + MCP2515. Es gibt zwar auch AVRs mit integriertem CAN (AT90CAxxx) aber die sind komplexer als der MCP2515. Wenn du die Vorstellung hast, dass dich eine UART bei CAN irgendwie weiterbringt, dann hast du
http://www.kreatives-chaos.com/artikel/ansteuerung-eines-mcp2515
-
Thread
gibt es bei Conrad Eletronic ein CAN Controller?
warum schaust du nicht auf der Homepage?? vielleicht gibts ja alternativ den mcp2515 mit spi interface
-
Thread
Probleme CAN bekomme nur Error
ist dass der spi bus richtig funktioniert. Den MCP2515 initiere ich folgendermaßen: [c]void mcp2515_init(void) { PORTB &= ~(1<<PB4); spi_put_char( SPI_RESET ); _delay_ms(1); PORTB |= (1<<PB4); _delay_ms(10); mcp2515_bit_modify(CANINTE,0b10100011,0xff); //Filter Buffer0 aus mcp2515_write_register( RXB0CTRL, (1<<RXM1)|(1<<RXM0) ); //Filter Buffer0 aus mcp2515_write_register( RXB1CTRL, (1<<RXM1)|(1<<RXM0) );; //LED als Interruptsignal mcp2515
-
Thread
Alternative zu CAN-Bus?
Timer Opfern? Oder die Interrupt-Pins? http://www.kreatives-chaos.com/artikel/ansteuerung-eines-mcp2515
wrote: > CAN ist 'ne feine Sache, allerdings was die Kosten angeht auch nicht > gerade günstig. MCP2515: <3€ PCA82C251: <1€. Yep, das ist teurer als I2C. Aber lustigerweise ist Mega8+MCP2515 günstiger als PIC18F258 oder AT90CAN128 mit internem CAN. > integriertem CAN oder den externen MPC2515
-
Thread
UVR 1611 (TA), Auswertung DL, Mega88, WinAVR
zugreifen. Das habe ich auch getestet, dann aber wieder aufgegeben. Testaufbau: - CAN Transceiver MCP2551 - 2 schnelle Optokoppler zur Entkopplung Rx,Tx (könnte auch entfallen) - CAN Controller MCP2515 - ATMega88 dazu ein Terminalprogramm, das den CAN-Controller bedient. Grundsätzlich hat es funktioniert
-
Thread
KICAD Schaltplansymbole: CAN Controller MCP2515 und Transceiver MCP2551
benutze gerade deine beiden Komponenten, danke für die Arbeit! Was mir aufgefallen ist, ist dass beim MCP2551 PIN1 (TXD) Output und PIN4 (RXD) Input ist. Das ist vertauscht und führt zu einer Warnung und einem Fehler beim ERC. TXCAN (Out) vom MCP2515 wird an TXD (In) vom MCP2551 angeschlossen und RXCAN (In) vom MCP2515 wird an RXD (In) vom MCP2551 angeschlossen Mit freundlichen Grüßen, Daniel Willmann
-
Thread
MCP2515 an einem Blackfin
Hallo Zusammen! Hat schon mal jemand von Euch den MCP2515 CAN-Controller in Verbindung mit einem Blackfin (BF533) verwendet? Wenn ja, könnte mir derjenige vielleicht seinen Code zeigen? Oder gibt es hier jemanden, der die SPI-Schnittstelle am Blackfin
in der Welt des DSP und hab noch so meine Einstiegsschwierigkeiten beim Programmieren. Für den MCP2515 mit einem AVR habe ich folgendes gefunden: http://www.kreatives-chaos.com/artikel/ansteuerung-eines-mcp2515 Wie schwer ist das, für den Blackfin umzuschreiben?
-
Thread
Probleme mit INT0 und Mega644
Ich verstehe die Situation noch nicht ganz. *MCP2515 CAN Controller* http://ww1.microchip.com/downloads/en/DeviceDoc/21801e.pdf *Atmega644* http://www.atmel.com/dyn/resources/prod_documents/doc2593.pdf 1/ Der MCP2515 ist mit seinem /INT Ausgang
gelöscht werden "INT pin is driven low by the MCP2515 and >>will remain low until the interrupt is cleared by the MCU" >>(Beitrag "CAN mit ATMega128 und MCP2515") Der '644 (= MCU) muss dann herausfinden, wieso der MCP einen /INT ausgelöst hat
-
Thread
Was sind die Vorteile und Nachteile von PICs und ATMEL Controller? Gesperrt
daher nen ATmega2560 + SJA1000 benutzen müssen. Für kleine CAN-Knoten wird gerne der ATmega8 + MCP2515 genommen. Peter
-
Thread
CAN-Mikrocontroller, welcher überschreiben von CRC-Feld ermöglicht
Standalone-CAN-Controller, welcher mir ermöglicht, das CRC-Feld im CAN-Datenframe selbst zu bestimmen. Beim MCP2515 funktioniert dies nicht, da die Hardware den CRC nach meinen bisherigen Infos aus dem Datenblatt selbst berechnet. Der CRC-Wert wird zwar zwischendurch in ein CRC-Register abgelegt, dieses ist aber
-
Thread
MCP2515 - Registerdaten werden falsch gespeichert
wurde 0x63D gelesen. Auf der Suche nach der Ursache ist mir beim durchsehen der Konfiguration des MCP2515 aufgefallen, daß die Konfigurationswerte nicht mit den gesendeten Werten übereinstimmten. Um den Effekt darzustellen habe ich eine Schleife eingebaut, die Register des MCP2515 schreibt und dann
Der MCP2515 funktioniert am AVR. Ist also kein prinzipielles Problem, sondern eines bei dir. SPI falsch konfiguriert? Code?
-
Thread
doppelt verkettete List mit AVR?
Zentral-CPUs out, man verwendet intelligente Sensoren/Aktoren. Ich würde pro Taster einen ATmega88 + MCP2515 + Triac nehmen, d.h. Dimmer und Taster lokal steuern. Der Taster steuert dann entweder den Triac direkt oder schickt ein CAN-Paket an die Zentrale, um ne Gruppe zu steuern. Über den CAN-Bus kann
-
Thread
Portierbarkeit von Sourcecode
sogar sein, dass der hardwareabhängige Teil sich auf ein paar Zeilen SPI beschränkt, weil der externe MCP2515 aus Sicht eines AVR und eines ARM7 ziemlich gleich aussieht. Ähnliches gilt für die üblichen LCDs, DS18B20, SHT11 usw. Portierbarer Code erleichtert also die Übernahme solcher Codemodule erheblich
-
Thread
CAN Gateway mit AVR
davon aus, das das mit einem Mega-xx - µC realisierbar ist. In den externen Can-Controllern (z.b. MCP 2515) kann man Filter definieren, so dass die nicht auf alle Telegramme reagieren. Auf diese Weise könnte man die Last für den µC noch weiter reduzieren.
Peter B. wrote: > In den externen Can-Controllern (z.b. MCP 2515) kann man Filter > definieren, so dass die nicht auf alle Telegramme reagieren. Auf diese > Weise könnte man die Last für den µC noch weiter reduzieren. Bei internen auch. Aber das nützt nichts
-
Thread
AT90CAN128 nach 15 CAN-Nachrichten ist schluss
dient ein CAN-USB-Adapter von PEAK. Der funktioniert fehlerfrei. Eine Andere Platine mit ATmega8 und MCP2515 läuft mit der Bibliothek einwandfrei Der AT90CAN128 verschickt nicht mehr als 15 Nachrichten ... Wenn ich Ihn neu initialisiere schickt er auch weitere Nachrichten. Aber wieder nur maximal 15
------------- int main (void) { // ---- CAN original ---- // initialisieren des MCP2515 can_init(BITRATE_125_KBPS); // erzeuge eine Testnachricht can_t msg; msg.id = 0x123456; msg.flags.rtr = 0; msg.flags.extended = 1; msg.length =
-
Thread
Probleme mit CAN-Übertragung
LEDs schalten. Das Empfangen sieht dabei so aus, dass der Empfänger die Daten vom CAN-Controller (MCP2515) auslesen soll, wenn dessen Interrupt-Leitung auf LOW geht. Die Interrupt-Leitung habe ich kurzerhand mit dem externen Interrupt-Pin INT0 von meinem AVR (MEGA8) verbunden. Leider scheint aber
Ansteuern hab ich hauptsächlich den Quellcode von http://www.kreatives-chaos.com/artikel/ansteuerung-eines-mcp2515#register verwendet.
-
Thread
SJA1000 am AT91SAM9260
Muss es aber der SJA1000 sein? Evtl. genügt ja der [[CAN#MCP2515]]
halt, dass es für den SJA1000 mehr Treiber gibt, und dass der vielleicht etwas schneller ist als der MCP.
-
Thread
Eisenbahnsteuerung mit Atmega16
ein Firmware-Update der Modelleisenbahnanlage durchgeführt werden. Als CAN-Controller setzen wir den MCP2515 ein. Das Gleismodul kann vier Gleisabschnitte ansteuern. Es kann besetzte Gleise (Optokoppler-Methode) melden und diese unabhängig davon per Relais stromlos schalten. Damit funktioniert diese
-
Thread
AT90CAN128 - Schnittstellen - Verwirrung
Schnittstellen benutzen die der Atmega sonst noch hat(SPI / I²C) Das Board benutzt übrigens einen MCP2515 Can Controller. Um einen Can Treiber wie dem PCA82C250 kommst du auch mit dem ATMega nicht rum.
-
Thread
ATmega2561 Problem mit WinAVR
-Os -gdwarf-2 strstr_P.S -o strstr_P.o avr-gcc main.o http/httpserv.o can/canserv.o can/can.o can/mcp2515.o adc/adc.o pwr/powersupply.o db/sqlite3.o strstr_P.o -mmcu=atmega2561 -Wl,--defsym=main=0,-Map=homeserver.map,--cref -Lc:\subver/homenet/sw/app/station/nutbld -Wl,--section-start=.bootldrinfo=
-
Thread
I2C Hausbus NSLU2
der Mitte sitzt ein ATmega8, darüber die 5V Spannungsregelung mit 7805, darunter der CAN Controller MCP2515 und Transceiver PCA82C251. Rund herum am Rand der Platine sitzen Stiftleisten im RM 2mm auf welchen die IO Pins herausgeführt werden. Jedem IO Pin steht ein Masse Pin und ein 5V Pin zur Seite, um
weil es die sowohl einfachste als auch billigste Realisierung darstellt - für den Sensor nimmt man MCP9801 (12 Bit Temp-Sensor mit I2C), die Außenbeschaltung besteht aus einem Kondensator und den Adressjumpern. In jedem Stockwerk sitzt ein ATTiny2313 als I2C Master. Alle "Stockwerkscontroller" sind
-
Thread
Probleme mit SW SPI (aus Atmel appnote 320)
t mcp2515_read_register(const uint8_t address) { uint8_t ret; spi_enable_mcp2515(); spi_putc(SPI_READ); spi_putc(address); ret = spi_putc(0x00); spi_disable_mcp2515(); return ret; } uint8_t i; mcp2515_write_register( MCP_CANCTRL, 15); i = mcp2515_read_register( MCP_CANCTRL); usart_write ("i: %i\r\n",i);[/c] i enthält nach dem aufruf den Wert 30 Hat jemand irgendwelche Ideen? Vielen
-
Thread
Verkaufe jede Menge Bauteile
folgende Bauteile werden nicht mehr benötigt. [pre] STK Beschreibung Gehäuse Preis/Stk 6x MCP2515 SOIC 1 9x MCP25025 SOIC 1 10x MCP2551 SO-8 1,2 2x MCP2515 DIP 2 15x MCP2551 DIP 1,5 6x MCP2515 SOICW 2 17x
24C512 DIP 1 3x 24FC1025 DIP 2 2x 24AA1025 DIP 2 3x MCP2515 DIP 1,5 3x STR712FR2T6 TQFP64 8 3x STM32F103CBT6 LQFP48 6 2x STR711FR2H6 LFBGA64 7 1x ATMega 8535L PLCC44 4 3x MAX7221 DIP 4 6x MAX7119
-
Thread
AVR (ATMega88) Mehrere CAN Nachrichten mit unterschiedl. Zykluszeiten
basieren eher auf Grundlagen. Deshalb mein Problem: Ich kann CAN-Nachrichten mit meinem ATmega88 und MCP2515 versenden, aber ich möchte diese zu gewissen Zeiten versenden. Einige Nachrichten sollen alle 200ms abgesendet, dagegen sollen andere Nachrichten alle 100ms gesendet, widerum andere alle 50ms usw
-
Thread
CAN lesen und mit ATMEGAx weiterverarbeiten
mehreren Herstellern. Ich habe den: http://www.peak-system.com/index_de.html Alles, was du für den MCP2515 an Software brauchst, findest die hier super behandelt - nochmal ein Lob von mir an diese Seite! http://www.kreatives-chaos.com/artikel/ansteuerung-eines-mcp2515#empfangen
Hallo, ich habe heute die Seite ordentlich durchgelesen und viele Leute schreiben ja positiv von der MCP2515 Variante. Erst dachte ich eher in die Richtung AT90CAN aber zu dem MCP2515 sind natürlich viele nützliche Infos zu finden. Da werde ich wohl zu der Kombination greifen: MCP2551 / MCP2515 /ATMega8
-
Thread
CAN-Schaltungsentwurf: MCP2515 und MCP2551 - jemand Verbesserungsvorschläge?
Clock ich für den MCP2515 verwenden soll. Bin um jeden Hinweis dankbar :) Danke an euch alle!
der MCP2551 sollte deine 3,3v als Input High verarbeiten können, in die andere Richtung tut es ein 20k Widerstand der den Strom durch die Clamp-Dioden des MCP2515 begrenzt
-
Thread
Sensor mit Can (A/D Wandler Protokoll und C)
ID und Dateninhalt zu versorgen. Den Frame baut der dann schon selber zusammen. Schau mal beim MCP2515 rein, der ist recht übersichtlich. Gibt dort auch die eine oder andere nützliche Application Note zu CAN.
http://www.kreatives-chaos.com/artikel/ansteuerung-eines-mcp2515
-
Thread
Busankoppler was muß da alles drauf?
erweitern und stehe nun vor folgender Frage: Was ist sinnvoll auf einer Busankoppler Platine MCP 2515 --> CAN Controller MCP 2551 --> CAN Treiber LM7805 oder besser nen DC/DC Wandler (besserer Wirkungsgrad) 4pol Klemme + ; - ; CAN_H ; CAN_L Schaltbarer/Steckbarer Abschlusswiderstand am besten
immer an einen Controller angeschlossen wird, der sich um die Initialisierung und Datenversorgung des MCP2515 kümmern kann, sollte das funktionieren. Reine Sensoren (z.B. Schalter) oder Aktoren (z.B. Displays) lassen sich nicht direkt an den MCP2515 anschliessen. Das Logikmodul meines Hausbus-Projektes
-
Thread
Welcher CAN Controller an Cypress CY07C68013A?
Cypress Mikrocontroller? - Sollte ich einen anderen Ansatz wählen, z.B. "Software-SPI" und einen MCP2515 von Microchip? Sonstige Anregungen, was als CAN Anfänger noch zu beachten ist? Danke für die Antworten. Gruss, Martin
Architektur - bei dem konnte man doch die UART auch in einen synchronen Modus setzen? Kann man da nicht den MCP2515 ranstricken? Software-SPI kann schnell zum Flaschenhals werden. Kommt aber auch auf deine geforderte CAN-Bus-Baudrate an. Den AN82527 kenne ich nicht.
-
Thread
RS485 Bus aufbauen
eher wenig geeignet. Nur: RS485 Multimaster ist seit Verfügbarkeit billiger CAN Controller wie dem MCP2515 wenig sinnvoll geworden. Seither gilt als Daumenregel: CAN für Multimaster, RS485 für Single.
Pro Node: CAN: MCP2515 + PCA82C250: ca. 3,50€, betrieben via SPI. RS485: SN75176: 0,30€, betrieben via UART. Geht natürlich auch teurer, das sind die jeweilig billigsten Teile. So sind ATmega88+MCP2515 deutlich billiger
-
Thread
MCP2515 an ATmega8 - falsche Daten aus Loopback :-(
Hallo, ich habe einen MCP2515 CAN-Baustein am SPI eines ATmega8 hängen. Der MCP2515 ist in Loopback mode (CANCTRL = 0x47 (REQOP1 -> Loopback, und Taktausgang auf 1/8), auch ausgelesen, stimmt). Ich schreibe jetzt eine Nachricht
Empfangsregistern für die CAN-ID - diese Folge ist auch nach erneutem Bestromen gleich. Ist mein MCP2515 "kaputt"? Kann ein IC *so* kaputtgehen? Liefert ja immer (2) unterschiedliche falsche Werte aus dem RAM... Gruß David