Siphon Regulator 1.0
Nanosattelite attitude determination and control system.
Loading...
Searching...
No Matches
main.c File Reference

: Main program body More...

#include "main.h"
#include "cmd_processing.h"
#include "driver_mpu9250_basic.h"
#include "loop_fcn.h"
#include "sensor_fcn.h"
#include <stdio.h>

Go to the source code of this file.

Macros

#define RX_BUFFER_LEN   64
 
#define uart_rx_write_ptr   (RX_BUFFER_LEN - hdma_usart1_rx.Instance->CNDTR)
 

Functions

void SystemClock_Config (void)
 System Clock Configuration.
 
static void MX_GPIO_Init (void)
 GPIO Initialization Function.
 
static void MX_DMA_Init (void)
 
static void MX_USART1_UART_Init (void)
 USART1 Initialization Function.
 
static void MX_SPI2_Init (void)
 SPI2 Initialization Function.
 
void setting_init (void)
 Set default values of set_data global variable.
 
void valve_init (void)
 Initialize valves. By default close.
 
int _write (int file, char const *buf, int n)
 
int main (void)
 The application entry point.
 
void Error_Handler (void)
 This function is executed in case of error occurrence.
 

Variables

SPI_HandleTypeDef hspi2
 
UART_HandleTypeDef huart1
 
DMA_HandleTypeDef hdma_usart1_rx
 
static uint8_t uart_rx_buf [RX_BUFFER_LEN]
 Received buffer fo UART.
 
static volatile uint16_t uart_rx_read_ptr = 0
 Received read pointer for UART.
 
sensor_data_t measured_data
 Current sensor measured data.
 
settings_t set_data
 Main system settings.
 

Detailed Description

: Main program body

Attention

Copyright (c) 2026 STMicroelectronics. All rights reserved.

This software is licensed under terms that can be found in the LICENSE file in the root directory of this software component. If no LICENSE file comes with this software, it is provided AS-IS.

Definition in file main.c.

Macro Definition Documentation

◆ RX_BUFFER_LEN

#define RX_BUFFER_LEN   64

Size of RX buffer for UART

Definition at line 39 of file main.c.

◆ uart_rx_write_ptr

#define uart_rx_write_ptr   (RX_BUFFER_LEN - hdma_usart1_rx.Instance->CNDTR)

Address of UART RX pointer

Definition at line 41 of file main.c.

Function Documentation

◆ _write()

int _write ( int file,
char const * buf,
int n )

Definition at line 87 of file main.c.

◆ Error_Handler()

void Error_Handler ( void )

This function is executed in case of error occurrence.

Return values
None

Definition at line 379 of file main.c.

◆ main()

int main ( void )

The application entry point.

Return values
int

Definition at line 117 of file main.c.

◆ MX_DMA_Init()

static void MX_DMA_Init ( void )
static

Enable DMA controller clock

Definition at line 299 of file main.c.

◆ MX_GPIO_Init()

static void MX_GPIO_Init ( void )
static

GPIO Initialization Function.

Parameters
None
Return values
None

Definition at line 317 of file main.c.

◆ MX_SPI2_Init()

static void MX_SPI2_Init ( void )
static

SPI2 Initialization Function.

Parameters
None
Return values
None

Definition at line 230 of file main.c.

◆ MX_USART1_UART_Init()

static void MX_USART1_UART_Init ( void )
static

USART1 Initialization Function.

Parameters
None
Return values
None

Definition at line 268 of file main.c.

◆ setting_init()

void setting_init ( void )

Set default values of set_data global variable.

< 90 deg

< 10 * 0.1 = 1 sec

< 20 * 10 = 200 us

< 20 * 10 = 200 us

< default orientation

Definition at line 95 of file main.c.

◆ SystemClock_Config()

void SystemClock_Config ( void )

System Clock Configuration.

Return values
None

Initializes the RCC Oscillators according to the specified parameters in the RCC_OscInitTypeDef structure.

Initializes the CPU, AHB and APB buses clocks

Definition at line 190 of file main.c.

◆ valve_init()

void valve_init ( void )

Initialize valves. By default close.

Definition at line 105 of file main.c.

Variable Documentation

◆ hdma_usart1_rx

DMA_HandleTypeDef hdma_usart1_rx

Definition at line 54 of file main.c.

◆ hspi2

SPI_HandleTypeDef hspi2

Definition at line 51 of file main.c.

◆ huart1

UART_HandleTypeDef huart1

Definition at line 53 of file main.c.

◆ uart_rx_buf

uint8_t uart_rx_buf[RX_BUFFER_LEN]
static

Received buffer fo UART.

Definition at line 57 of file main.c.

◆ uart_rx_read_ptr

volatile uint16_t uart_rx_read_ptr = 0
static

Received read pointer for UART.

Definition at line 58 of file main.c.