Calibration_Stand/backend/Libs/sx1278/Inc/sx1278.h

42 lines
986 B
C
Raw Permalink Normal View History

2024-11-26 10:17:15 +07:00
#ifndef SX1278_H
#define SX1278_H
#include <wiringPi.h>
#include <wiringPiSPI.h>
#include <stdint.h>
#include <stdio.h>
#include <string.h>
#include "sx1278Regs-Fsk.h"
#define SX1278_PAYLOAD 23
// Ожидаемая версия модуля
#define EXPECTED_VERSION 0x12
// Объявление структуры SX1278
typedef struct {
uint8_t PinNSS;
uint8_t PinReset;
uint8_t PinDIO0;
} SX1278_t;
// Режимы работы SX1278
typedef enum {
SX1278_MODE_SLEEP,
SX1278_MODE_STANDBY,
SX1278_MODE_RECEIVER,
SX1278_MODE_TRANSMITTER
} SX1278_Mode;
// Прототипы функций
int SX1278_Init(uint8_t PinNss, uint8_t PinReset, uint8_t PinDIO0);
void SX1278_FIFO_SendData(uint8_t *data);
void SX1278_FIFO_ReadData(uint8_t *data);
void SX1278_WriteRegister(uint8_t reg, uint8_t value);
uint8_t SX1278_ReadRegister(uint8_t reg);
void SX1278_reset(void);
void SX1278_SetMode(SX1278_Mode mode);
void SX1278_load(void);
#endif /* SX1278_H */