|
Vehicle Control Unit 0.01
This is the c library for controlling the car.
|
#include "stm32f7xx_it.h"#include "../../../../Inc/Systems/Comms/Can/Can.h"#include "../../../../Inc/Systems/Comms/Can/DBCParser.h"#include "../../../../Inc/Utils/Common.h"#include <stdio.h>#include <string.h>#include <stdlib.h>#include <inttypes.h>
Go to the source code of this file.
Functions | |
| int | init_CANBus (CANBus bus) |
| Initializes the CANBus struct. More... | |
| int | load_dbc_file (CANBus bus, const unsigned char *filename) |
| Loads a DBC file into the CAN database. Makes the messages and signals and stores them in the list. More... | |
| int | add_message (CANBus bus, CAN_Message_Template message) |
| Adds a message to the CAN message list. More... | |
| int | add_message_lop (CANBus bus, int id, int dlc, int ide, int rtr, const char *name, const char *sender, int signal_count, CAN_Signal_Template *signals) |
| Adds a message to the CAN message list by passing in the individual message parameters hence "LOP" (List of Parameters) More... | |
| int | send_CAN_message (CANBus bus, CANProtocol protocol, uint32_t id, uint8_t *data, uint8_t len) |
| Sends a CAN message. More... | |
| void | receive_CAN_message (CAN_RxHeaderTypeDef *RxHeader, uint8_t *RxData, CANBus bus) |
| Receives a CAN message. More... | |
| void | parseMessage (CAN_MessageList *messages, CAN_Message *can_message) |
| Parses a CAN message. More... | |
| void | parseSignals (CAN_Message_Template *message, CAN_Message *can_message) |
| Parses signals in a CAN message. More... | |
| void | parseSignal (CAN_Signal_Template *signal, CAN_Signal *can_signal, CAN_Message *can_message) |
| Parses a CAN signal. More... | |
| void | print_CAN_Messages_Lists () |
| Prints the CAN message list. More... | |
Variables | |
| CAN_MessageList | can_messages [MAX_BUS] |
| int add_message | ( | CANBus | bus, |
| CAN_Message_Template | message | ||
| ) |
Adds a message to the CAN message list.
| bus | The CAN bus to add the message to |
| message | The message to add |
Definition at line 48 of file Can.c.

| int add_message_lop | ( | CANBus | bus, |
| int | id, | ||
| int | dlc, | ||
| int | ide, | ||
| int | rtr, | ||
| const char * | name, | ||
| const char * | sender, | ||
| int | signal_count, | ||
| CAN_Signal_Template * | signals | ||
| ) |
Adds a message to the CAN message list by passing in the individual message parameters hence "LOP" (List of Parameters)
| bus | The CAN bus to add the message to |
| id | The ID of the message |
| dlc | The Data Length Code of the message |
| ide | The Identifier Extension of the message |
| rtr | The Remote Transmission Request of the message |
| name | The name of the message |
| sender | The sender of the message |
| signal_count | The number of signals in the message |
| signals | The signals in the message |
Definition at line 55 of file Can.c.


| int init_CANBus | ( | CANBus | bus | ) |
| int load_dbc_file | ( | CANBus | bus, |
| const unsigned char * | filename | ||
| ) |
Loads a DBC file into the CAN database. Makes the messages and signals and stores them in the list.
| bus | The CAN bus to load the DBC file into |
| filename | The name of the DBC file to load |
Definition at line 25 of file Can.c.

| void parseMessage | ( | CAN_MessageList * | messages, |
| CAN_Message * | can_message | ||
| ) |
Parses a CAN message.
| messages | The CAN message list |
| can_message | The CAN message to parse |
Definition at line 135 of file Can.c.


| void parseSignal | ( | CAN_Signal_Template * | signal, |
| CAN_Signal * | can_signal, | ||
| CAN_Message * | can_message | ||
| ) |
Parses a CAN signal.
| signal | The CAN signal template |
| can_signal | The CAN signal to parse |
| can_message | The CAN message to parse |
Definition at line 160 of file Can.c.

| void parseSignals | ( | CAN_Message_Template * | message, |
| CAN_Message * | can_message | ||
| ) |
Parses signals in a CAN message.
| message | The CAN message template |
| can_message | The CAN message to parse |
Definition at line 150 of file Can.c.


| void print_CAN_Messages_Lists | ( | ) |
Prints the CAN message list.
Definition at line 190 of file Can.c.

| void receive_CAN_message | ( | CAN_RxHeaderTypeDef * | header, |
| uint8_t * | data, | ||
| CANBus | bus | ||
| ) |
Receives a CAN message.
| RxHeader | The CAN Rx header |
| RxData | The CAN Rx data |
| bus | The CAN bus to receive the message on |
Definition at line 112 of file Can.c.


| int send_CAN_message | ( | CANBus | bus, |
| CANProtocol | protocol, | ||
| uint32_t | id, | ||
| uint8_t * | data, | ||
| uint8_t | len | ||
| ) |
Sends a CAN message.
| bus | The CAN bus to send the message on |
| protocol | The CAN protocol to use |
| id | The ID of the message |
| data | The data to send |
| len | The length of the data |
Definition at line 79 of file Can.c.


| CAN_MessageList can_messages[MAX_BUS] |