Ke Ao Teensy Flight Software
The software on the Teensy in the Ke Ao cubesat.
|
The Artemis definitions header file. More...
#include <TeensyThreads.h>
#include <support/configCosmosKernel.h>
#include <support/packetcomm.h>
Go to the source code of this file.
Classes | |
struct | thread_struct |
The structure of a thread. More... | |
Enumerations | |
enum class | NODES : uint8_t { GROUND_NODE_ID = 1 , TEENSY_NODE_ID = 2 , RPI_NODE_ID = 3 , PLEIADES_NODE_ID = 4 } |
Enumeration of node ID. More... | |
enum | TEENSY_PINS { UART4_RXD , UART4_TXD , T_GPIO2 , T_GPIO3 , T_GPIO4 , T_GPIO5 , T_GPIO6 , UART6_RX , UART6_TX , T_CS1 , T_CS , SPI0_MOSI , SPI0_MISO , SPI0_SCLK , AIN0 , AIN1 , SCL1_I2C , SDA1_I2C , I2C2_SDA , I2C2_SCL , AIN3 , AIN4 , AIN5 , AIN6 , I2C1_SCL , I2C1_SDA , SPI1_D1 , SPI1_SCLK , UART5_TXD , UART5_RXD , RX_ON , TX_ON , RADIO_RESET , GPS_RSTN , UART2_RXD , UART2_TXD , RPI_ENABLE , SDN , SPI1_CS1 , SPI1_D0 , NIRQ , AIN2 } |
Enumeration of Teensy pins. More... | |
Functions | |
int | kill_thread (uint8_t channel_id) |
Kills a running thread. | |
int32_t | PushQueue (PacketComm &packet, std::deque< PacketComm > &queue, Threads::Mutex &mtx) |
Push a packet to the specified queue. | |
int32_t | PullQueue (PacketComm &packet, std::deque< PacketComm > &queue, Threads::Mutex &mtx) |
Pulls a packet from the specified queue. | |
Variables | |
const float | MV_PER_DEGREE_F = 1.0 |
const float | OFFSET_F = 58.0 |
const float | MV_PER_ADC_UNIT = 3300.0 / 1024.0 |
const float | heater_threshold = -10.0 |
std::map< string, NODES > | NodeType |
Mapping of string node types to corresponding node IDs. | |
vector< struct thread_struct > | thread_list |
The list of threads currently running on the Teensy. | |
Threads::Mutex | main_queue_mtx |
The mutex for the main_queue. | |
Threads::Mutex | astrodev_queue_mtx |
The mutex for the astrodev_queue. | |
Threads::Mutex | rfm23_queue_mtx |
The mutex for the rfm23_queue. | |
Threads::Mutex | rfm98_queue_mtx |
The mutex for the rfm98_queue. | |
Threads::Mutex | pdu_queue_mtx |
The mutex for the pdu_queue. | |
Threads::Mutex | rpi_queue_mtx |
The mutex for the rpi_queue. | |
std::deque< PacketComm > | main_queue |
The main queue for packets in the Teensy. | |
std::deque< PacketComm > | astrodev_queue |
The queue for packets going to the Astrodev (Li-3) radio. | |
std::deque< PacketComm > | rfm23_queue |
The queue for packets going to the RFM23 radio. | |
std::deque< PacketComm > | rfm98_queue |
The queue for packets going to the RFM98 radio. | |
std::deque< PacketComm > | pdu_queue |
The queue for packets to command the PDU. | |
std::deque< PacketComm > | rpi_queue |
The queue for packets going to the Raspberry Pi. | |
Threads::Mutex | spi1_mtx |
The mutex for the SPI1 interface on the Teensy. | |
Threads::Mutex | i2c1_mtx |
The mutex for the I2C1 interface on the Teensy. | |
bool | deploymentmode |
The Artemis definitions header file.
This contains useful definitions used in the satellite.
|
strong |
enum TEENSY_PINS |
Enumeration of Teensy pins.
Current for Artemis OBC v4.23.
int kill_thread | ( | uint8_t | channel_id | ) |
Kills a running thread.
channel_id | The ID of the thread to be killed. |
int32_t PullQueue | ( | PacketComm & | packet, |
std::deque< PacketComm > & | queue, | ||
Threads::Mutex & | mtx | ||
) |
Pulls a packet from the specified queue.
packet | The packet that will be pulled into. |
queue | The queue that the packet will be pulled from. |
mtx | The mutex used to lock the queue. |
int32_t PushQueue | ( | PacketComm & | packet, |
std::deque< PacketComm > & | queue, | ||
Threads::Mutex & | mtx | ||
) |
Push a packet to the specified queue.
packet | The packet to be pushed. |
queue | The queue that the packet will be pushed into. |
mtx | The mutex used to lock the queue. |
|
extern |
Mapping of string node types to corresponding node IDs.
This map associates string keys with NODES values, allowing for easy translation between string names and numerical IDs.
|
extern |
The list of threads currently running on the Teensy.
A maximum of 16 threads can be handled by the thread list.