| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- #ifndef SWITCHBOARD_CONTROL_H
- #define SWITCHBOARD_CONTROL_H
- //The driver manages the power of the RF circuit
- #include <stdint.h>
- #include <stdbool.h>
- // SPI2_KEEP_NSS_PULLEDUP
- // if enabled (=1) keeps NSS pin pulled up when deinitialized
- #define SPI2_KEEP_NSS_PULLEDUP_SB 1
- //============================================================================
- // Êîìàíäû ðàáîòû ïî SPI ñ êîììóòàòîðîì
- //============================================================================
- // 16 bit MSB [0:3] - ïîäêëþ÷åíèå ïåðâîãî ïîðòà; [4:7] - ïîäêëþ÷åíèå ïîðòà 2; [8:15] - êîìàíäà
- typedef struct{
- uint8_t cmd;
- uint8_t addr;
- uint8_t responce_2;
- uint8_t responce_1;
- }SB_command_t;
- //============================================================================
- // Êîìàíäû äëÿ ðàáîòû ñ òàáëèöåé èçìåðåíèé
- //============================================================================
- #define SWB_TABLE_NEW_RECORD (uint8_t) 0x01 // Çàïèñü íîâîãî çíà÷åíèÿ â òàáëèöó ïåðåêëþ÷åíèé
- #define SWB_TABLE_GET_RECORD (uint8_t) 0x02 // ×òåíèå çàïèñè ïîä íîìåðîì
- #define SWB_TABLE_TABLE_COUNT (uint8_t) 0x03 // ×òåíèå ÷èñëà çàïèñåé â òàáëèöå
- #define SWB_TABLE_START_MEASURING (uint8_t) 0x05 // Ñòàðò èçìåðåíèé ñ íóëÿ!
- #define SWB_TABLE_STOP_MEASURING (uint8_t) 0x04 // Ñòîï èçìåðåíèé íà òåêóùåì èçìåðåíèè
- #define SWB_TABLE_CONTINUE_MEASURING (uint8_t) 0x06 // Ïðîäîëæèòü èçìåðåíèÿ ñ ïîñëåäíåé èçìåðåííîé êîììóòàöèè
- #define SWB_TABLE_CLEAR (uint8_t) 0xFF // Î÷èñòêà ïëàíà èçìåðåíèé
- //============================================================================
- // Êîìàíäû äëÿ ðàáîòû ñ ïðèáîðîì áåç òàáëè÷íîãî óïðàâëåíèÿ
- //============================================================================
- #define SWB_CONTROL_PORT (uint8_t) 0x07 // Êîììóòàöèÿ ïîðòîâ â ñîîòâåòñòâèè ñî çíà÷åíèÿìè
- #define SWB_CONTROL_READ (uint8_t) 0x08 // ×òåíèå êîììóòàöèè ïîðòîâ
- #define SWB_CONTROL_SET_TRIGGER_MODE (uint8_t) 0x09 // Óñòàíîâèòü ðåæèì òðèããåðà
- #define SWB_CONTROL_GET_TRIGGER_MODE (uint8_t) 0x0A // Ïîëó÷èòü ðåæèì òðèããåðà
- #define SWB_CONTROL_GET_TRIGGER_COUN (uint8_t) 0x0B // Çàïðîñèòü ÷èñëî ïðèõîäîâ èìïóëüñîâ âî âðåìÿ èçìåðåíèÿ
- #define SWB_CONTROL_MEASURING_MODE (uint8_t) 0x0C // Çàïðîñèòü ðåæèì ðàáîòû êîììóòàòîðà
- //============================================================================
- typedef struct
- {
- bool (*Init)( );
- void (*DeInit)();
- void (*SetNSS)();
- void (*ClrNSS)();
- void (*Transmit)( uint8_t * pTxBuf, size_t size );
- bool (*Receive)( uint8_t * pRxBuf, size_t size );
- void (*TransmitReceive)( uint8_t * pTxBuf, uint8_t * pRxBuf, size_t size );
- }
- SB_Handle_t;
- extern const SB_Handle_t SBHandle;
- #endif
|