Web DMX - Firmware
Web DMX - Firmware
Loading...
Searching...
No Matches
main.c File Reference

: Main program body More...

#include "main.h"

Functions

void SystemClock_Config (void)
 System Clock Configuration.
static void MX_GPIO_Init (void)
 GPIO Initialization Function.
static void MX_USART1_UART_Init (void)
 USART1 Initialization Function.
static void MX_USART2_UART_Init (void)
 USART2 Initialization Function.
static void MX_TIM6_Init (void)
 TIM6 Initialization Function.
static void MX_TIM7_Init (void)
 TIM7 Initialization Function.
void HAL_TIM_PeriodElapsedCallback (TIM_HandleTypeDef *htim)
 Timers for DMX Break and MAB (Mark After Break) signal duration control.
void HAL_UART_TxCpltCallback (UART_HandleTypeDef *huart)
 DMX data transmit ended, next frame Break signal start.
void HAL_UART_RxCpltCallback (UART_HandleTypeDef *huart)
 For receive FW control packets from PC (web server)
int main (void)
 The application entry point.
void Error_Handler (void)
 This function is executed in case of error occurrence.

Variables

TIM_HandleTypeDef htim6
TIM_HandleTypeDef htim7
UART_HandleTypeDef huart1
UART_HandleTypeDef huart2
uint8_t vcp_rx_buf [3]
uint8_t dmx_values [DMX_CHANNEL_COUNT+1] = {}

Detailed Description

: Main program body

Attention

Copyright (c) 2025 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.

Function Documentation

◆ Error_Handler()

void Error_Handler ( void )

This function is executed in case of error occurrence.

Return values
None

◆ HAL_TIM_PeriodElapsedCallback()

void HAL_TIM_PeriodElapsedCallback ( TIM_HandleTypeDef * htim)

Timers for DMX Break and MAB (Mark After Break) signal duration control.

Parameters
[in]htimPeriod elapsed timer handler

DMX signal transmit sequence below:

Break (set low) -> MAB (set high) -> Data signal
| | |
[UART1 end]--- | -----[TIM6]----- | -----[TIM7]---- | ---[UART1]
| > 88us | > 8us |
Note
Actual Break and MAB signal been longer than 88us, 8us, cause of UART init/deinit process

◆ HAL_UART_RxCpltCallback()

void HAL_UART_RxCpltCallback ( UART_HandleTypeDef * huart)

For receive FW control packets from PC (web server)

Parameters
[in]huartRX completed uart handler

◆ HAL_UART_TxCpltCallback()

void HAL_UART_TxCpltCallback ( UART_HandleTypeDef * huart)

DMX data transmit ended, next frame Break signal start.

Parameters
[in]huartTX completed uart handler

◆ main()

int main ( void )

The application entry point.

Return values
int

◆ MX_GPIO_Init()

void MX_GPIO_Init ( void )
static

GPIO Initialization Function.

Parameters
None
Return values
None

◆ MX_TIM6_Init()

void MX_TIM6_Init ( void )
static

TIM6 Initialization Function.

Parameters
None
Return values
None

◆ MX_TIM7_Init()

void MX_TIM7_Init ( void )
static

TIM7 Initialization Function.

Parameters
None
Return values
None

◆ MX_USART1_UART_Init()

void MX_USART1_UART_Init ( void )
static

USART1 Initialization Function.

Parameters
None
Return values
None

◆ MX_USART2_UART_Init()

void MX_USART2_UART_Init ( void )
static

USART2 Initialization Function.

Parameters
None
Return values
None

◆ 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