servo/firmware/Inc/spi.h

55 lines
1.6 KiB
C

/* USER CODE BEGIN Header */
/**
******************************************************************************
* @file spi.h
* @brief This file contains all the function prototypes for
* the spi.c file
******************************************************************************
* @attention
*
* Copyright (c) 2024 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 */
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __SPI_H__
#define __SPI_H__
#ifdef __cplusplus
extern "C" {
#endif
/* Includes ------------------------------------------------------------------*/
#include "main.h"
/* USER CODE BEGIN Includes */
/* USER CODE END Includes */
extern SPI_HandleTypeDef hspi2;
/* USER CODE BEGIN Private defines */
#define AS5040_DIAG_OC_FAULT 0x0001 // Offset Compensation Finished
#define AS5040_DIAG_CO_FAULT 0x0002 // Cordic Overflow
#define AS5040_DIAG_LIN_FAULT 0x0004 // Linearity Alarm
/* USER CODE END Private defines */
void MX_SPI2_Init(void);
/* USER CODE BEGIN Prototypes */
float NormalizeToDegrees(uint16_t rawAngle);
uint16_t AS5045_ReadAngle(SPI_HandleTypeDef *hspi, uint8_t *status);
/* USER CODE END Prototypes */
#ifdef __cplusplus
}
#endif
#endif /* __SPI_H__ */