Midnight Sun Firmware
Loading...
Searching...
No Matches
telemetry_hw_defs.h
1#pragma once
2
3/************************************************************************************************
4 * @file telemetry_hw_defs.h
5 *
6 * @brief Header file for Telemetry HW definition
7 *
8 * @date 2026-02-09
9 * @author Midnight Sun Team #24 - MSXVI
10 ************************************************************************************************/
11
12/* Standard library Headers */
13
14/* Inter-component Headers */
15
16/* Intra-component Headers */
17
23/************************************************************************************************
24 * File-scope definitions
25 ************************************************************************************************/
26
27#define TELEMETRY_GPIO_DEF(PORT, PIN) \
28 { .port = GPIO_PORT_##PORT, .pin = PIN }
29
30/************************************************************************************************
31 * Telemetry CAN definitions
32 ************************************************************************************************/
33
35#define GPIO_TELEMETRY_CAN_RX TELEMETRY_GPIO_DEF(B, 8)
36
38#define GPIO_TELEMETRY_CAN_TX TELEMETRY_GPIO_DEF(B, 9)
39
40/************************************************************************************************
41 * Telemetry UART definitions - for XBee transciever
42 ************************************************************************************************/
43
45#define GPIO_TELEMETRY_UART_RX TELEMETRY_GPIO_DEF(A, 2)
46
48#define GPIO_TELEMETRY_UART_TX TELEMETRY_GPIO_DEF(A, 3)
49
51#define GPIO_TELEMETRY_XBEE_XRST TELEMETRY_GPIO_DEF(A, 5)
52
54#define GPIO_TELEMETRY_XBEE_SLEEP_RQ TELEMETRY_GPIO_DEF(A, 11)
55
56/************************************************************************************************
57 * Telemetry SPI definitions - for SD card & IMU
58 ************************************************************************************************/
59
61#define GPIO_TELEMETRY_SPI_MISO TELEMETRY_GPIO_DEF(B, 14)
62
64#define GPIO_TELEMETRY_SPI_MOSI TELEMETRY_GPIO_DEF(B, 15)
65
67#define GPIO_TELEMETRY_SPI_SCK TELEMETRY_GPIO_DEF(B, 13)
68
70#define GPIO_TELEMETRY_SPI_NSS TELEMETRY_GPIO_DEF(B, 12)
71
72/************************************************************************************************
73 * Telemetry IMU-specific Definitions
74 ************************************************************************************************/
75
77#define GPIO_TELEMETRY_IMU_INTL1 TELEMETRY_GPIO_DEF(B, 0)
78
80#define GPIO_TELEMETRY_IMU_INTL2 TELEMETRY_GPIO_DEF(B, 1)
81
82/************************************************************************************************
83 * Telemetry SD-card-specific Definitions
84 ************************************************************************************************/
85
87#define GPIO_TELEMETRY_SD_CARD_CD_B TELEMETRY_GPIO_DEF(B, 10)
88
89/************************************************************************************************
90 * Board LED definition
91 ************************************************************************************************/
92
94#define GPIO_TELEMETRY_BOARD_LED TELEMETRY_GPIO_DEF(A, 6)
95