Yilin Sun
bf57ad8093
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Yilin Sun <imi415@imi.moe>
152 lines
3.8 KiB
C
152 lines
3.8 KiB
C
/* USER CODE BEGIN Header */
|
|
/**
|
|
******************************************************************************
|
|
* @file subghz_phy_app.c
|
|
* @author MCD Application Team
|
|
* @brief Application of the SubGHz_Phy Middleware
|
|
******************************************************************************
|
|
* @attention
|
|
*
|
|
* Copyright (c) 2023 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.
|
|
*
|
|
******************************************************************************
|
|
*/
|
|
/* USER CODE END Header */
|
|
|
|
/* Includes ------------------------------------------------------------------*/
|
|
#include "platform.h"
|
|
#include "sys_app.h"
|
|
#include "subghz_phy_app.h"
|
|
#include "radio.h"
|
|
|
|
/* USER CODE BEGIN Includes */
|
|
|
|
/* USER CODE END Includes */
|
|
|
|
/* External variables ---------------------------------------------------------*/
|
|
/* USER CODE BEGIN EV */
|
|
|
|
/* USER CODE END EV */
|
|
|
|
/* Private typedef -----------------------------------------------------------*/
|
|
/* USER CODE BEGIN PTD */
|
|
|
|
/* USER CODE END PTD */
|
|
|
|
/* Private define ------------------------------------------------------------*/
|
|
/* USER CODE BEGIN PD */
|
|
|
|
/* USER CODE END PD */
|
|
|
|
/* Private macro -------------------------------------------------------------*/
|
|
/* USER CODE BEGIN PM */
|
|
|
|
/* USER CODE END PM */
|
|
|
|
/* Private variables ---------------------------------------------------------*/
|
|
/* Radio events function pointer */
|
|
static RadioEvents_t RadioEvents;
|
|
|
|
/* USER CODE BEGIN PV */
|
|
|
|
/* USER CODE END PV */
|
|
|
|
/* Private function prototypes -----------------------------------------------*/
|
|
/*!
|
|
* @brief Function to be executed on Radio Tx Done event
|
|
*/
|
|
static void OnTxDone(void);
|
|
|
|
/**
|
|
* @brief Function to be executed on Radio Rx Done event
|
|
* @param payload ptr of buffer received
|
|
* @param size buffer size
|
|
* @param rssi
|
|
* @param LoraSnr_FskCfo
|
|
*/
|
|
static void OnRxDone(uint8_t *payload, uint16_t size, int16_t rssi, int8_t LoraSnr_FskCfo);
|
|
|
|
/**
|
|
* @brief Function executed on Radio Tx Timeout event
|
|
*/
|
|
static void OnTxTimeout(void);
|
|
|
|
/**
|
|
* @brief Function executed on Radio Rx Timeout event
|
|
*/
|
|
static void OnRxTimeout(void);
|
|
|
|
/**
|
|
* @brief Function executed on Radio Rx Error event
|
|
*/
|
|
static void OnRxError(void);
|
|
|
|
/* USER CODE BEGIN PFP */
|
|
|
|
/* USER CODE END PFP */
|
|
|
|
/* Exported functions ---------------------------------------------------------*/
|
|
void SubghzApp_Init(void)
|
|
{
|
|
/* USER CODE BEGIN SubghzApp_Init_1 */
|
|
|
|
/* USER CODE END SubghzApp_Init_1 */
|
|
|
|
/* Radio initialization */
|
|
RadioEvents.TxDone = OnTxDone;
|
|
RadioEvents.RxDone = OnRxDone;
|
|
RadioEvents.TxTimeout = OnTxTimeout;
|
|
RadioEvents.RxTimeout = OnRxTimeout;
|
|
RadioEvents.RxError = OnRxError;
|
|
|
|
Radio.Init(&RadioEvents);
|
|
|
|
/* USER CODE BEGIN SubghzApp_Init_2 */
|
|
|
|
/* USER CODE END SubghzApp_Init_2 */
|
|
}
|
|
|
|
/* USER CODE BEGIN EF */
|
|
|
|
/* USER CODE END EF */
|
|
|
|
/* Private functions ---------------------------------------------------------*/
|
|
static void OnTxDone(void)
|
|
{
|
|
/* USER CODE BEGIN OnTxDone */
|
|
/* USER CODE END OnTxDone */
|
|
}
|
|
|
|
static void OnRxDone(uint8_t *payload, uint16_t size, int16_t rssi, int8_t LoraSnr_FskCfo)
|
|
{
|
|
/* USER CODE BEGIN OnRxDone */
|
|
/* USER CODE END OnRxDone */
|
|
}
|
|
|
|
static void OnTxTimeout(void)
|
|
{
|
|
/* USER CODE BEGIN OnTxTimeout */
|
|
/* USER CODE END OnTxTimeout */
|
|
}
|
|
|
|
static void OnRxTimeout(void)
|
|
{
|
|
/* USER CODE BEGIN OnRxTimeout */
|
|
/* USER CODE END OnRxTimeout */
|
|
}
|
|
|
|
static void OnRxError(void)
|
|
{
|
|
/* USER CODE BEGIN OnRxError */
|
|
/* USER CODE END OnRxError */
|
|
}
|
|
|
|
/* USER CODE BEGIN PrFD */
|
|
|
|
/* USER CODE END PrFD */
|