Header-Datei für das allgemeine CAN Interface. Mehr ...
#include <avr/pgmspace.h>
#include <stdint.h>
#include <stdbool.h>
#include "config.h"
gehe zum Quellcode dieser Datei
Datenstrukturen | |
struct | can_t |
Datenstruktur zum Aufnehmen von CAN Nachrichten. Mehr ... | |
struct | can_filter_t |
Datenstruktur zur Aufnahme von CAN-Filtern. Mehr ... | |
struct | can_error_register_t |
Inhalt der Fehler-Register. Mehr ... | |
Makrodefinitionen | |
#define | CAN_ALL_FILTER 0xff |
Symbol um auf alle Filter zuzugreifen. | |
Bitdefinitionen | |
#define | ONLY_NON_RTR 2 |
#define | ONLY_RTR 3 |
Bits des Filters fuer den MCP2515 umformatieren | |
Unterstuetzung fuer Extended-IDs aktivieren Unterstützung für Zeitstempel aktivieren
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 };
| |
#define | MCP2515_FILTER_EXTENDED(id) |
#define | MCP2515_FILTER(id) |
Aufzählungen | |
enum | can_bitrate_t { BITRATE_10_KBPS = 0, BITRATE_20_KBPS = 1, BITRATE_50_KBPS = 2, BITRATE_100_KBPS = 3, BITRATE_125_KBPS = 4, BITRATE_250_KBPS = 5, BITRATE_500_KBPS = 6, BITRATE_1_MBPS = 7 } |
Bitraten fuer den CAN-Bus. | |
enum | can_mode_t { LISTEN_ONLY_MODE, LOOPBACK_MODE, NORMAL_MODE, SLEEP_MODE } |
Modus des CAN Interfaces. Mehr ... | |
Funktionen | |
bool | can_init (can_bitrate_t bitrate) |
Initialisierung des CAN Interfaces. | |
void | can_sleep (void) |
void | can_wakeup (void) |
bool | can_set_filter (uint8_t number, const can_filter_t *filter) |
Setzen eines Filters. | |
bool | can_disable_filter (uint8_t number) |
Filter deaktivieren. | |
void | can_static_filter (const prog_uint8_t *filter_array) |
Setzt die Werte für alle Filter. | |
uint8_t | can_get_filter (uint8_t number, can_filter_t *filter) |
Filterdaten auslesen. | |
bool | can_check_message (void) |
Ueberpruefen ob neue CAN Nachrichten vorhanden sind. | |
bool | can_check_free_buffer (void) |
Ueberprueft ob ein Puffer zum Versenden einer Nachricht frei ist. | |
uint8_t | can_send_message (const can_t *msg) |
Verschickt eine Nachricht über den CAN Bus. | |
uint8_t | can_get_message (can_t *msg) |
Liest eine Nachricht aus den Empfangspuffern des CAN Controllers. | |
can_error_register_t | can_read_error_register (void) |
Liest den Inhalt der Fehler-Register. | |
bool | can_check_bus_off (void) |
Überprüft ob der CAN Controller im Bus-Off-Status. | |
void | can_reset_bus_off (void) |
Setzt einen Bus-Off Status zurück und schaltet den CAN Controller wieder aktiv. | |
void | can_set_mode (can_mode_t mode) |
Setzt den Operations-Modus. |
Header-Datei für das allgemeine CAN Interface.
Definiert in Datei can.h.