-
Bild
Blaue Leiterplatte mit MCP2515 Modul
J4 INT SCK SI SO CS GND VCC U2 MCP2515 I/SO 17200TW X1 EAS8.000 C4 C3 H J3 U1 L C5 R3 C2 LED1 R1 102 C106 C1 POW R2 121 J1
in „MCP2515 CAN-Bus Modul“ · Mikrocontroller und Digitale Elektronik · · Platinenfotos
-
Bild
Datenblatt eines MCP2515 CAN Interface Moduls
mit MCP2515 CAN Interface & MCP 2562 Transceiver HAUPTMERKMALE Modell CAN Modul Chipsatz MCP2515, MCP2562 CAN Spezifikation CAN V2.0B Kompatibel mit Arduino, Raspberry Pi und weitere gängige Mikrocontroller
in „MCP2515 CAN-Bus Modul“ · Mikrocontroller und Digitale Elektronik · · Screenshots
-
Bild
Schaltplan und Foto eines MCP2515 CAN Moduls
RXD R CANH R CANL R TXD R CANH R CANL R TXD R MCP2515 CAN Module U2 SCK SI CS GND VCC1 VCC R2 R3 C1 C2 C3 C4 C5 C6 C7 R1 U1 CANH CANL P2
in „CAN-Bus Netzwerk: Gemeinsame Masse“ · Mikrocontroller und Digitale Elektronik · · Fotos
-
Datei
mcp2515.h
***/ #define MCP2515_RXF0SIDH 0x00 #define MCP2515_RXF0SIDL 0x01 #define MCP2515_RXF0EID8 0x02 #define MCP2515_RXF0EID0 0x03 #define MCP2515_RXF1SIDH 0x04 #define MCP2515_RXF1SIDL 0x05 #define MCP2515_RXF1EID8 0x06 #define MCP2515_RXF1EID0 0x07 #define MCP2515_RXF2SIDH 0x08 #define MCP2515_RXF2SIDL 0x09 #define MCP2515_RXF2EID8 0x0A #define MCP2515_RXF2EID0 0x0B #define MCP2515_BFPCTRL 0x0C #define MCP2515_TXRTSCTRL 0x0D
in „mcp2510.inc“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
mcp2515.c
#include "config.h" #include "mcp2515.h" #include "spi.h" mcp2515_rxb_t rxb0; //Adressen Buffer 0 mcp2515_rxb_t rxb1; //Adressen Buffer 1 /******************************************************************************* * * Name: mcp2515
in „MCP2515 - Registerdaten werden falsch gespeichert“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
CAN_MCP2515-Mega328P-002.bas
Txb0dlc , Dfl 'Daten Mcp2515_write_register Txb0d0 , Db0(1) Mcp2515_write_register Txb0d1 , Db0(2) Mcp2515_write_register Txb0d2 , Db0(3) Mcp2515_write_register Txb0d3 , Db0(4) Mcp2515_write_register Txb0d4 , Db0(5) Mcp2515
in „MCP2515 Initialisierung“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Test4.c
_write_register( RXM0SIDL, 0, P_CS_CAN1); mcp2515_write_register( RXM0EID8, 0, P_CS_CAN1); mcp2515_write_register( RXM0EID0, 0, P_CS_CAN1); mcp2515_write_register( RXM1SIDH, 0, P_CS_CAN1); mcp2515_write_register( RXM1SIDL, 0, P_CS_CAN1); mcp2515_write_register( RXM1EID8, 0, P_CS_CAN1); mcp2515_write_register( RXM1EID0, 0, P_CS_CAN1); mcp2515_write_register( RXM0SIDH, 0, P_CS_CAN2); mcp2515_write_register( RXM0SIDL, 0, P_CS_CAN2); mcp2515_write_register( RXM0EID8, 0, P_CS_CAN2); mcp2515
in „MCP2515 Botschaften Empfangen“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Test4.c
_write_register( RXM0SIDL, 0, P_CS_CAN1); mcp2515_write_register( RXM0EID8, 0, P_CS_CAN1); mcp2515_write_register( RXM0EID0, 0, P_CS_CAN1); mcp2515_write_register( RXM1SIDH, 0, P_CS_CAN1); mcp2515_write_register( RXM1SIDL, 0, P_CS_CAN1); mcp2515_write_register( RXM1EID8, 0, P_CS_CAN1); mcp2515_write_register( RXM1EID0, 0, P_CS_CAN1); mcp2515_write_register( RXM0SIDH, 0, P_CS_CAN2); mcp2515_write_register( RXM0SIDL, 0, P_CS_CAN2); mcp2515_write_register( RXM0EID8, 0, P_CS_CAN2); mcp2515
in „MCP2515 Interuptpin zurücksetzten“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
CAN-routines.asm
temp1, (1<<RXM1)|(1<<RXM0) rcall mcp2515_write_reg ldi temp2, RXM0SIDH ldi temp1, 0 rcall mcp2515_write_reg ldi temp2, RXM0SIDL ldi temp1, 0 rcall mcp2515_write_reg ldi temp2, RXM0EID8 ldi temp1, 0 rcall mcp2515_write_reg ldi temp2, RXM0EID0 ldi temp1, 0 rcall mcp2515_write_reg ldi temp2, RXM1SIDH ldi temp1, 0 rcall mcp2515_write_reg ldi temp2, RXM1SIDL ldi temp1, 0 rcall mcp2515_write_reg ldi temp2, RXM1EID8 ldi temp1, 0 rcall mcp2515_write_reg ldi temp2, RXM1EID0
in „CAN-Bus mit Arduino auswerten“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
init.c
RXM0SIDL, 0 ); mcp2515_write_register( RXM0EID8, 0 ); mcp2515_write_register( RXM0EID0, 0 ); mcp2515_write_register( RXM1SIDH, 0 ); mcp2515_write_register( RXM1SIDL, 0 ); mcp2515_write_register( RXM1EID8, 0 ); mcp2515
in „mehrere source files“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
CAN_MCP2515-test2.bas
Txb0dlc , Dfl 'Daten Mcp2515_write_register Txb0d0 , 10 'Cand(1) Mcp2515_write_register Txb0d1 , 2 'Cand(2) Mcp2515_write_register Txb0d2 , 30 'Cand(3) Mcp2515_write_register Txb0d3 , 4 'Cand(4) Mcp2515_write_register Txb0d4
in „MCP2515 mit BASCOM“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
mcp2515.c
der MCP2515 im Configuration Mode cs_disable(CANchannel); _delay_ms(10); // etwas warten bis sich der MCP2515 zurueckgesetzt hat cs_enable(CANchannel); mcp2515_write(CNF1, R_CNF1); mcp2515_write(CNF2, R_CNF2
in „MCP2515 sendet kein SO Signal an MISO (SPI)“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
mcp2515.c
<stdlib.h> #include<avr/io.h> #include<avr/interrupt.h> #include "os.h" #include "spi.h" #include "mcp2515.h" #include "uart.h" void mcp2515_write_register( unsigned char adress, unsigned char data ) { // /CS des MCP2515 auf Low ziehen cbi(PORT_CS,P_CS); spi_putc(MCP_WRITE); spi_putc(adress); spi_putc
-
Datei
main.c
aller Nachrichten mcp2515_write_register( RXB1CTRL, (1<<RXM1)|(1<<RXM0) ); // Alle Bits der Empfangsmaske loeschen, // damit werden alle Nachrichten empfangen mcp2515_write_register( RXM0SIDH, 0 ); mcp2515_write_register( RXM0SIDL, 0 ); mcp2515_write_register( RXM0EID8, 0 ); mcp2515_write_register( RXM0EID0, 0 ); mcp2515_write_register( RXM1SIDH, 0 ); mcp2515_write_register( RXM1SIDL, 0 ); mcp2515_write_register( RXM1EID8, 0 ); mcp2515
in „ATmega644PA und MCP2515 SPI Problem“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
mcp2515_neu.c
1<<RX1IE)|(1<<RX0IE) ); mcp2515_write_register( RXB0CTRL, (1<<RXM1)|(1<<RXM0) ); mcp2515_write_register( RXB1CTRL, (1<<RXM1)|(1<<RXM0) ); mcp2515_write_register( RXM0SIDH, 0 ); mcp2515_write_register( RXM0SIDL, 0 ); mcp2515_write_register( RXM0EID8, 0 ); mcp2515_write_register( RXM0EID0, 0 ); mcp2515_write_register( RXM1SIDH, 0 ); mcp2515_write_register( RXM1SIDL, 0 ); mcp2515_write_register( RXM1EID8, 0 ); mcp2515_write_register( RXM1EID0, 0 ); mcp2515
in „AT90CAN128 und MCP2515-Controller“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
mcp2515.txt
einstellen mcp2515_write_register( CNF3, (1<<PHSEG21) ); // Aktivieren der Rx Buffer Interrupts mcp2515_write_register( CANINTE, (1<<RX1IE)|(1<<RX0IE) ); // Buffer 0 : Empfangen aller Nachrichten mcp2515_write_register
in „MCP2515 richtig initialisiert?“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
MCP2515.c
empfangen: 1001 0000 100 mcp2515_write_register(RXF0SIDH, 0b10010000); // Filter high mcp2515_write_register(RXF0SIDL, 0b10000000); // Filter low // Buffer 0 : Empfangen aller Nachrichten mcp2515_write_register( RXB0CTRL, (1<<RXM1
in „MCP2515 Sendepuffer“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
can.c
aller Nachrichten mcp2515_write_register( RXB1CTRL, (1<<RXM1)|(1<<RXM0) ); // Alle Bits der Empfangsmaske loeschen, // damit werden alle Nachrichten empfangen mcp2515_write_register( RXM0SIDH, 0 ); mcp2515_write_register( RXM0SIDL, 0 ); mcp2515_write_register( RXM0EID8, 0 ); mcp2515_write_register( RXM0EID0, 0 ); mcp2515_write_register( RXM1SIDH, 0 ); mcp2515_write_register( RXM1SIDL, 0 ); mcp2515_write_register( RXM1EID8, 0 ); mcp2515
in „MCP2515 Probleme wenn an Bus angeschlossen“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
main.c
werden alle Nachrichten empfangen mcp2515_write_register( RXM0SIDH, 0 ); mcp2515_write_register( RXM0SIDL, 0 ); mcp2515_write_register( RXM0EID8, 0 ); mcp2515_write_register( RXM0EID0, 0 ); mcp2515_write_register( RXM1SIDH, 0 ); mcp2515
in „Atmega und CAN“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Test4.c
data; // Wartet bis Byte gesendet wurde while( !( SPSR & (1<<7) ) ) // SPIF = 7 ; return SPDR; } // mcp2515 Registerwerte schreiben void mcp2515_write_register( int adress, int data ) { // /CS des MCP2515 auf Low ziehen PORT_CS &= ~(1<<P_CS); //CS = 2 spi_putc(SPI_WRITE); // SPI_WRITE = 0x02h (mcp2515
in „MCP2515 Botschaften Empfangen“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
mcp_can_ext.h
m_nDta[MAX_CHAR_IN_MESSAGE]; /* data */ INT8U m_nRtr; /* rtr */ INT8U m_nfilhit; INT8U SPICS; /* * mcp2515 driver function */ // private: private: void mcp2515_reset(void); /* reset mcp2515 */ INT8U mcp2515_readRegister(const INT8U address); /* read mcp2515's register */ void mcp2515_readRegisterS(const
in „MCP2515 an Arduino mehr als 8 Frames senden“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
CAN.c
empfangen: 1001 0000 100 mcp2515_write_register(RXF0SIDH, 0b10010000); // Filter high mcp2515_write_register(RXF0SIDL, 0b10000000); // Filter low mcp2515_write_register(RXF1SIDH, 0b10010000); // Filter high mcp2515_write_register
in „Can Controller MCP2515 sendet nicht -> Ratlos“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
CANATMega32.c
(1<<B1BFE) | (1<<B1BFS) | (1<<B0BFE) | (1<<B0BFM) ); mcp2515_write_register(RXM0SIDH, 0); mcp2515_write_register(RXM0SIDL, 0); mcp2515_write_register(RXM0EID8, 0); mcp2515_write_register(RXM0EID0, 0); mcp2515_write_register(RXM1SIDH, 0); mcp2515_write_register
in „Kommunikationsproblem zwischen ATMega32 und MCP2515 ueber ISP“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Test4.c
data; // Wartet bis Byte gesendet wurde while( !( SPSR & (1<<7) ) ) // SPIF = 7 ; return SPDR; } // mcp2515 Registerwerte schreiben void mcp2515_write_register( int adress, int data ) { // /CS des MCP2515 auf Low ziehen PORT_CS &= ~(1<<P_CS); //CS = 2 spi_putc(SPI_WRITE); // SPI_WRITE = 0x02h (mcp2515
in „MCP2515 Botschaften Empfangen“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
can.h
#define SUPPORT_TIMESTAMPS 0 #endif /** * \ingroup can_interface * \name Bits des Filters fuer den MCP2515 umformatieren * * \code * prog_uint8_t can_filter[] = * { * MCP2515_FILTER_EXTENDED(0), // Filter 0 * MCP2515_FILTER_EXTENDED(0), // Filter 1 * * MCP2515_FILTER_EXTENDED(0), // Filter 2 * MCP2515_FILTER_EXTENDED(0), // Filter 3 * MCP2515_FILTER_EXTENDED(0), // Filter 4 * MCP2515_FILTER_EXTENDED(0), // Filter 5 * * MCP2515_FILTER_EXTENDED(0), // Maske 0 * MCP2515_FILTER_EXTENDED(0), // Maske 1 * }; * \endcode * * \see can_static_filter
in „CAN Kommuikation ATmega328P“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
mcp2515_asm.S
---------------------------------------------------- ; adress in r24 and data in r22 _FUNCTION(mcp2515_write_register) mcp2515_write_register: RESET(MCP2515_CS) mov 18, 24 ldi 24, SPI_WRITE rcall spi_putc mov 24, 18 rcall spi_putc mov 24, 22 rcall spi_putc rjmp cs_ret ; SET(MCP2515_CS) ; ret _ENDFUNC
in „AVR ATmega1284P Bootloader wie 644p“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
can.h
#define SUPPORT_TIMESTAMPS 0 #endif /** * \ingroup can_interface * \name Bits des Filters fuer den MCP2515 umformatieren * * \code * prog_uint8_t can_filter[] = * { * MCP2515_FILTER_EXTENDED(0), // Filter 0 * MCP2515_FILTER_EXTENDED(0), // Filter 1 * * MCP2515_FILTER_EXTENDED(0), // Filter 2 * MCP2515_FILTER_EXTENDED(0), // Filter 3 * MCP2515_FILTER_EXTENDED(0), // Filter 4 * MCP2515_FILTER_EXTENDED(0), // Filter 5 * * MCP2515_FILTER_EXTENDED(0), // Maske 0 * MCP2515_FILTER_EXTENDED(0), // Maske 1 * }; * \endcode * * \see can_static_filter
in „AT90CAN128 nach 15 CAN-Nachrichten ist schluss“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
ESP_R32_REC_V01.ino
endif //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++* #include "ACAN2515.h" // "" Lib im Ordner; <> extern static const byte MCP2515_SCK = 18 ; // SCK input of MCP2515 static const byte MCP2515_MOSI = 23 ; // SDI input of MCP2515 static const byte MCP2515_MISO = 19 ; // SDO output of MCP2515 static const byte MCP2515_CS = 5 ; // CS input of MCP2515 static const byte MCP2515_INT = 26 ; // INT (2) output of MCP2515 static const uint8_t LED_BUILTIN =2; // Board_Led uint8_t Tx = 12; //
-
Datei
can.c
void can_put_txd0_msg(void){ cli(); if(can_txd0_cnt++ == 0){ spi_port &= ~_BV(spi_cs0_bit); SPDR = MCP2515_BITMOD; // TXD-IR enablen: while(!(SPSR & _BV(SPIF))); SPDR = MCP2515_CANINTE; // Adresse while(!(SPSR & _BV(SPIF))); SPDR = MCP2515_TX0IE; // Maske while(!(SPSR & _BV(SPIF))); SPDR = 0xff; // MCP2515
in „Block lesen beim MCP2515“ · Mikrocontroller und Digitale Elektronik ·
-
Bild
Verschiedene integrierte Schaltkreise auf rotem Untergrund
MCP2515 080209K MCP2515 080209K MCP2515 080209K MCP2515 080209K MCP2515 080209K MCP2515 080209K MCP2515 080209K MCP2515 080209K MCP2515 080209K MCP2515 080209K MCP2515 080209K MCP2515 080209K MCP2515 080209K MCP2515 080209K MCP2515 080209K
in „[V] Großer Haufen versch. digital- und analog ICs“ · Markt · · Fotos
-
Datei
CAN_BUS_Analyse_ESP_R32_4.ino
endif /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/ #include "ACAN2515.h" static const byte MCP2515_SCK = 18 ; // SCK input of MCP2515 static const byte MCP2515_MOSI = 23 ; // SDI input of MCP2515 static const byte MCP2515_MISO = 19 ; // SDO output of MCP2515 static const byte MCP2515_CS = 5 ; // CS input of MCP2515 static const byte MCP2515_INT = 26 ; // INT (2) output of MCP2515 static const uint8_t LED_BUILTIN =2; String Ver="CAN_BUS_ANALYSE_ESP R32_xV0.4"; ACAN2515 can (MCP2515
-
PDF
Schematic_ATMEGA_CaN_L298_2020-04-23_23-39-20.pdf
1 2 3 4 5 6 CAN Controller CAN Transceiver MCP2551 R7 MCP2515 MCP2551T-I/SN 120 Header-Male-2.54_1x2 R10 MCP2515T-I/SO 5V_MCP2515_ONOFF 10K 17 12 TXCAN 1 TXD RS 8 GND 1 Header-Male-2.54_1x2 RESET# INT# GND 2 VSS CANH 7 CAN_HIGH 2 1 5V 3 VDD CANL 6 CAN_LOW 2 1 2 RXCAN RXCAN TXCAN TXCAN RXCAN 4 RXD VREF 5 16 A MCP2515_CS 13 CS# 3 A MCP2515_SCK 14 SCK CLKOUT/SOF MCP2515_SI 15 SI MCP2515_SO SO 5V Spannungsversorgung 5V C6 4 TX0RTS# RX0BF# 11 L78M05 27pF 5 TX1RTS# RX1BF# 10 L78M05ABDT-TR 6 TX2RTS# 1 3 GND 12V IN
in „atmega328 - arduino bootloader flashen - doppelt belegte Pins“ · Platinen ·
-
Datei
esp32-can-Read-ACAN-LIB-V1.ino
//—————————————————————————————————————————————————————————————————————————————— static const byte MCP2515_CS = 5 ; // CS input of MCP2515 (adapt to your design) static const byte MCP2515_INT = 26 ; // INT output of MCP2515 (adapt to your design) //—————————————————————————————————————————————————————————————————————————————— // MCP2515 Driver object //—————————————————————————————————————————————————————————————————————————————— ACAN2515 can (MCP2515_CS, SPI, MCP2515_INT) ; //———————————————————————————————————————————————————
-
Datei
esp32-can-Send-ACAN-LIB-V1.ino
//—————————————————————————————————————————————————————————————————————————————— static const byte MCP2515_CS = 5 ; // CS input of MCP2515 (adapt to your design) static const byte MCP2515_INT = 26 ; // INT output of MCP2515 (adapt to your design) //—————————————————————————————————————————————————————————————————————————————— // MCP2515 Driver object //—————————————————————————————————————————————————————————————————————————————— ACAN2515 can (MCP2515_CS, SPI, MCP2515_INT) ; //———————————————————————————————————————————————————
-
Datei
1.txt
------------------------------------------------------------------*/ #include <Canbus.h> #include <mcp2515.h> #include <defaults.h> #include <mcp2515_defs.h> #include <global.h> #include <EEPROM.h> volatile uint8_t pulse; //gezählte Pulse volatile uint16_t Capt1, Capt2,// timeStamp1, timeStamp2, //VARIABLES
in „Drehzahlmessung und senden über CAN“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
RPM_CAN.txt
------------------------------------------------------------------*/ #include <Canbus.h> #include <mcp2515.h> #include <defaults.h> #include <mcp2515_defs.h> #include <global.h> #include <EEPROM.h> volatile uint16_t Capt1, Capt2, timeStamp1, timeStamp2;//VARIABLES TO HOLD TIMESTAMPS volatile uint8_t
in „Drehzahlmessung und senden über CAN“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
2.txt
------------------------------------------------------------------*/ #include <Canbus.h> #include <mcp2515.h> #include <defaults.h> #include <mcp2515_defs.h> #include <global.h> #include <EEPROM.h> volatile uint8_t pulse; //gezählte Pulse volatile uint16_t Capt1, Capt2,// timeStamp1, timeStamp2, //VARIABLES
in „Drehzahlmessung und senden über CAN“ · Mikrocontroller und Digitale Elektronik ·
-
PDF
MCP2515_RPI.pdf
...............................................................................................3 1 MCP2515 CAN-Controller: Der Treiber des MCP2515 CAN-Controller muss direkt ins Betriebssystem des Raspberry integriert werden, dieser Vorgang wird hier anhand des Raspberry B+ mit dem Raspbian Kernel 3.18
in „RaspberryPiB+ mit CAN (MCP2515)“ · PC Hard- und Software ·
-
Datei
Senden.txt
<avr/pgmspace.h> #include <util/delay.h> #include "can.h" prog_uint8_t can_filter[] = { // Group 0 MCP2515_FILTER(0), MCP2515_FILTER(0), // Group 1 MCP2515_FILTER_EXTENDED(0), MCP2515_FILTER_EXTENDED(0), MCP2515_FILTER_EXTENDED(0), MCP2515_FILTER_EXTENDED(0), MCP2515_FILTER(0), MCP2515_FILTER_EXTENDED
in „CAN Kommunikation“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Empfangen.txt
interrupt.h> #define F_CPU 16000000UL #define UART_BAUD_RATE 9600 prog_uint8_t can_filter[] = { // Group 0 MCP2515_FILTER(0), MCP2515_FILTER(0), // Group 1 MCP2515_FILTER_EXTENDED(0), MCP2515_FILTER_EXTENDED(0), MCP2515_FILTER_EXTENDED(0), MCP2515_FILTER_EXTENDED(0), MCP2515_FILTER(0), MCP2515_FILTER_EXTENDED
in „CAN Kommunikation“ · Mikrocontroller und Digitale Elektronik ·
-
PDF
MCP2515_Overflow_beheben.pdf
einstellen. sudo nano /etc/modules Hierzu fugen wir den Code: ¨ # MCP2515 configuration with /INT on GPIO25 and 16MHz clock spi-config devices=\ bus=0:cs=0:modalias=mcp2515:speed=10000000:gpioirq=25: (zusammen unten gehts weiter) pd=20:pds32-0=16000000:pdu32-4=0x2002:force_release #and of course the mcp2515 driver mcp2515 hinzu und speichern. Letzendlich sieht es so aus: Abbildung 12: Modules Und noch einmal Neustarten. sudo reboot Wir sind noch nicht fertig. Um nun unseren Raspberry Pi kommunuzieren
in „socketCAN mcp2515 - rx buffer overflow Raspberry Pi“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
mcp_can_dfs_ext.h
(0x04) #define MCPDEBUG (0) #define MCPDEBUG_TXBUF (0) #define MCP_N_TXBUFFERS (3) #define MCP_RXBUF_0 (MCP_RXB0SIDH) #define MCP_RXBUF_1 (MCP_RXB1SIDH) //#define SPICS 10 #define MCP2515_SELECT() digitalWrite(SPICS, LOW) #define MCP2515_UNSELECT() digitalWrite(SPICS, HIGH) #define MCP2515_OK (0) #define MCP2515_FAIL (1) #define MCP_ALLTXBUSY (2) #define CANDEBUG 1 #define CANUSELOOP 0 #define CANSENDTIMEOUT (200) /* milliseconds */ /* * initial value of gCANAutoProcess */ #define
in „MCP2515 an Arduino mehr als 8 Frames senden“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
myheader.h
data in (Master In Slave Out) #define SCK 7 // Port B bit 7 (pin8): clock char SPI_Empfang; //MPC2515 #define CAN_CS 0 // Chip Select-Leitung für MCP2515 #define CAN_RESET 1 // Reset-Leitung für MCP2515 unsigned char adress, data, mask, message_length, i, message_status; unsigned char message_data[8
in „mehrere source files“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
spi.S
spi_init //void spi_init(void); .global spi_putc //uint8_t spi_putc( uint8_t data ); .global spi_enable_mcp2515 //void spi_enable_mcp2515(void); .global spi_disable_mcp2515 //void spi_disable_mcp2515(void); //*************************************************************************** //* //* FUNCTION //*
in „Probleme mit SW SPI (aus Atmel appnote 320)“ · Mikrocontroller und Digitale Elektronik ·
-
PDF
ATMegaEvoBoard.pdf
AT90CAN128 Folgende Bauteile können entfallen,wenn der On-Board-CAN des AT90CAN128 eingesetzt wird und der MCP2515 nicht benötigt wird : • JP4 • R26, R27 • IC7 (der MCP2515 natürlich) • C22, C23 • X3 Sollen beide Transceiver, sowie der MCP2515 und der On-Board-CAN des AT90CAN128 genutzt werden, wird das Entfernen
in „AT90CAN128 Development board“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
CAN.c
|= (1<<P_CS); } uint8_t mcp2515_read_register(uint8_t adress) { uint8_t data; // /CS des MCP2515 auf Low ziehen PORT_CS &= ~(1<<P_CS); spi_putc(SPI_READ); spi_putc(adress); data = spi_putc(0xff); // /CS Leitung wieder freigeben PORT_CS |= (1<<P_CS); return data; } void mcp2515_bit_modify(uint8_t adress, uint8_t mask, uint8_t data) { // /CS des MCP2515 auf Low ziehen PORT_CS &= ~(1<<P_CS); spi_putc(SPI_BIT_MODIFY); spi_putc(adress); spi_putc(mask); spi_putc(data); // /
in „Atmega und CAN“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
mcp2515.h
/* Author : Engler Andreas */ /* Date : 16.2.2007 */ /* Purpose: CAN Treiber MCP2515, Initialisation, receive and transmit */ #ifndef mcp2515_H #define mcp2515_H typedef struct { unsigned int id; unsigned char rtr; unsigned char dlc; unsigned char data[8]; } CANMessage; extern void mcp2515_write_register( unsigned char adress, unsigned char data ); extern unsigned char mcp2515_read_register(unsigned char adress); extern void mcp2515_bit_modify(unsigned char adress,unsigned char mask
-
Datei
br-61xx.c
spi_gpio", .id = 1, // Bus number .dev.platform_data = &br61xx_gpio_spi, }; static struct spi_board_info mcp2515_spi_gpio_board_info [] = { { .modalias = "mcp2515", .max_speed_hz = 10000000, .bus_num = 1, .chip_select = 0, .platform_data = &mcp251x_info, .irq = ADM5120_IRQ_GPIO2, .mode = SPI_MODE_0, .controller_data
-
Datei
mcp2515_cfg.h
#ifndef MCP2515_CFG_H #define MCP2515_CFG_H // SPI port definition #define P_MOSI B,2 #define P_MISO B,3 #define P_SCK B,1 #define MCP2515_CS B,0 #define MCP2515_INT E,5 // bit timing definition // this are the
in „CAN und MCP2515 - Kein Senden möglich“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
CAN.h
uint8_t length; uint8_t data[8]; } CANMessage; void spi_init(); uint8_t spi_putc( uint8_t data ); void mcp2515_write_register( uint8_t adress, uint8_t data ); uint8_t mcp2515_read_register(uint8_t adress); void mcp2515_bit_modify(uint8_t adress, uint8_t mask, uint8_t data); #ifndef MCP2515_DEFS_H #define
in „Atmega und CAN“ · Mikrocontroller und Digitale Elektronik ·