libnile
Loading...
Searching...
No Matches
protocol.h File Reference
#include <stdint.h>

Go to the source code of this file.

Data Structures

struct  nile_mcu_native_info_t
struct  nile_mcu_native_version_t

Macros

#define NILE_MCU_NATIVE_SAVE_ID_DOMAIN_SRAM2   0x01
#define NILE_MCU_NATIVE_SAVE_ID_DOMAIN_RTC   0x02
#define NILE_MCU_NATIVE_REG_IRQ_ENABLE   0x000
#define NILE_MCU_NATIVE_REG_IRQ_STATUS   0x001
#define NILE_MCU_NATIVE_REG_IRQ_STATUS_AUTOACK   0x002
#define NILE_MCU_NATIVE_IRQ_TF_INSERT   0x0001
#define NILE_MCU_NATIVE_IRQ_TF_REMOVE   0x0002
#define NILE_MCU_NATIVE_IRQ_RTC_ALARM   0x0004
#define NILE_MCU_NATIVE_INFO_CAP_EEPROM   0x0001
#define NILE_MCU_NATIVE_INFO_CAP_USB   0x0002
#define NILE_MCU_NATIVE_INFO_CAP_ACCEL   0x0004
#define NILE_MCU_NATIVE_INFO_CAP_RTC   0x0008
#define NILE_MCU_NATIVE_INFO_RTC_LSE   0x0001
#define NILE_MCU_NATIVE_INFO_RTC_ENABLED   0x0002
#define NILE_MCU_NATIVE_INFO_USB_DETECT   0x0004
#define NILE_MCU_NATIVE_INFO_USB_CONNECT   0x0008
#define NILE_MCU_NATIVE_INFO_BATTERY_OK   0x0010

Enumerations

enum  nile_mcu_native_cmd_t {
  NILE_MCU_NATIVE_CMD_ECHO = 0x00 , NILE_MCU_NATIVE_CMD_MODE = 0x01 , NILE_MCU_NATIVE_CMD_FREQ = 0x02 , NILE_MCU_NATIVE_CMD_ID = 0x03 ,
  NILE_MCU_NATIVE_CMD_INFO = 0x04 , NILE_MCU_NATIVE_CMD_REG_READ = 0x08 , NILE_MCU_NATIVE_CMD_REG_WRITE = 0x09 , NILE_MCU_NATIVE_CMD_VERSION = 0x0F ,
  NILE_MCU_NATIVE_CMD_EEPROM_MODE = 0x10 , NILE_MCU_NATIVE_CMD_EEPROM_ERASE = 0x11 , NILE_MCU_NATIVE_CMD_EEPROM_READ = 0x12 , NILE_MCU_NATIVE_CMD_EEPROM_WRITE = 0x13 ,
  NILE_MCU_NATIVE_CMD_RTC_COMMAND = 0x14 , NILE_MCU_NATIVE_CMD_EEPROM_GET_MODE = 0x15 , NILE_MCU_NATIVE_CMD_SET_SAVE_ID = 0x16 , NILE_MCU_NATIVE_CMD_GET_SAVE_ID = 0x17 ,
  NILE_MCU_NATIVE_CMD_USB_CDC_READ = 0x40 , NILE_MCU_NATIVE_CMD_USB_CDC_WRITE = 0x41 , NILE_MCU_NATIVE_CMD_USB_HID_WRITE = 0x42 , NILE_MCU_NATIVE_CMD_USB_CDC_AVAILABLE = 0x43 ,
  NILE_MCU_NATIVE_CMD_USB_CDC_FLUSH = 0x44 , NILE_MCU_NATIVE_CMD_ACCEL_POLL = 0x50 , NILE_MCU_NATIVE_CMD_ACCEL_READ = 0x51
}
enum  nile_mcu_native_mode_t {
  NILE_MCU_NATIVE_MODE_CMD = 0x00 , NILE_MCU_NATIVE_MODE_EEPROM = 0x01 , NILE_MCU_NATIVE_MODE_RTC = 0x02 , NILE_MCU_NATIVE_MODE_CDC = 0x03 ,
  NILE_MCU_NATIVE_MODE_STANDBY = 0xFF
}

Macro Definition Documentation

◆ NILE_MCU_NATIVE_INFO_BATTERY_OK

#define NILE_MCU_NATIVE_INFO_BATTERY_OK   0x0010

Definition at line 96 of file protocol.h.

◆ NILE_MCU_NATIVE_INFO_CAP_ACCEL

#define NILE_MCU_NATIVE_INFO_CAP_ACCEL   0x0004

Definition at line 90 of file protocol.h.

◆ NILE_MCU_NATIVE_INFO_CAP_EEPROM

#define NILE_MCU_NATIVE_INFO_CAP_EEPROM   0x0001

Definition at line 88 of file protocol.h.

◆ NILE_MCU_NATIVE_INFO_CAP_RTC

#define NILE_MCU_NATIVE_INFO_CAP_RTC   0x0008

Definition at line 91 of file protocol.h.

◆ NILE_MCU_NATIVE_INFO_CAP_USB

#define NILE_MCU_NATIVE_INFO_CAP_USB   0x0002

Definition at line 89 of file protocol.h.

◆ NILE_MCU_NATIVE_INFO_RTC_ENABLED

#define NILE_MCU_NATIVE_INFO_RTC_ENABLED   0x0002

Definition at line 93 of file protocol.h.

◆ NILE_MCU_NATIVE_INFO_RTC_LSE

#define NILE_MCU_NATIVE_INFO_RTC_LSE   0x0001

Definition at line 92 of file protocol.h.

◆ NILE_MCU_NATIVE_INFO_USB_CONNECT

#define NILE_MCU_NATIVE_INFO_USB_CONNECT   0x0008

Definition at line 95 of file protocol.h.

◆ NILE_MCU_NATIVE_INFO_USB_DETECT

#define NILE_MCU_NATIVE_INFO_USB_DETECT   0x0004

Definition at line 94 of file protocol.h.

◆ NILE_MCU_NATIVE_IRQ_RTC_ALARM

#define NILE_MCU_NATIVE_IRQ_RTC_ALARM   0x0004

Definition at line 86 of file protocol.h.

◆ NILE_MCU_NATIVE_IRQ_TF_INSERT

#define NILE_MCU_NATIVE_IRQ_TF_INSERT   0x0001

Definition at line 84 of file protocol.h.

◆ NILE_MCU_NATIVE_IRQ_TF_REMOVE

#define NILE_MCU_NATIVE_IRQ_TF_REMOVE   0x0002

Definition at line 85 of file protocol.h.

◆ NILE_MCU_NATIVE_REG_IRQ_ENABLE

#define NILE_MCU_NATIVE_REG_IRQ_ENABLE   0x000

Definition at line 80 of file protocol.h.

◆ NILE_MCU_NATIVE_REG_IRQ_STATUS

#define NILE_MCU_NATIVE_REG_IRQ_STATUS   0x001

Definition at line 81 of file protocol.h.

◆ NILE_MCU_NATIVE_REG_IRQ_STATUS_AUTOACK

#define NILE_MCU_NATIVE_REG_IRQ_STATUS_AUTOACK   0x002

Definition at line 82 of file protocol.h.

◆ NILE_MCU_NATIVE_SAVE_ID_DOMAIN_RTC

#define NILE_MCU_NATIVE_SAVE_ID_DOMAIN_RTC   0x02

Definition at line 78 of file protocol.h.

◆ NILE_MCU_NATIVE_SAVE_ID_DOMAIN_SRAM2

#define NILE_MCU_NATIVE_SAVE_ID_DOMAIN_SRAM2   0x01

Definition at line 77 of file protocol.h.

Enumeration Type Documentation

◆ nile_mcu_native_cmd_t

Enumerator
NILE_MCU_NATIVE_CMD_ECHO 
NILE_MCU_NATIVE_CMD_MODE 
NILE_MCU_NATIVE_CMD_FREQ 
NILE_MCU_NATIVE_CMD_ID 
NILE_MCU_NATIVE_CMD_INFO 
NILE_MCU_NATIVE_CMD_REG_READ 
NILE_MCU_NATIVE_CMD_REG_WRITE 
NILE_MCU_NATIVE_CMD_VERSION 
NILE_MCU_NATIVE_CMD_EEPROM_MODE 
NILE_MCU_NATIVE_CMD_EEPROM_ERASE 
NILE_MCU_NATIVE_CMD_EEPROM_READ 
NILE_MCU_NATIVE_CMD_EEPROM_WRITE 
NILE_MCU_NATIVE_CMD_RTC_COMMAND 
NILE_MCU_NATIVE_CMD_EEPROM_GET_MODE 
NILE_MCU_NATIVE_CMD_SET_SAVE_ID 
NILE_MCU_NATIVE_CMD_GET_SAVE_ID 
NILE_MCU_NATIVE_CMD_USB_CDC_READ 
NILE_MCU_NATIVE_CMD_USB_CDC_WRITE 
NILE_MCU_NATIVE_CMD_USB_HID_WRITE 
NILE_MCU_NATIVE_CMD_USB_CDC_AVAILABLE 
NILE_MCU_NATIVE_CMD_USB_CDC_FLUSH 
NILE_MCU_NATIVE_CMD_ACCEL_POLL 
NILE_MCU_NATIVE_CMD_ACCEL_READ 

Definition at line 30 of file protocol.h.

◆ nile_mcu_native_mode_t

Enumerator
NILE_MCU_NATIVE_MODE_CMD 

Native command mode.

NILE_MCU_NATIVE_MODE_EEPROM 

EEPROM emulation mode.

NILE_MCU_NATIVE_MODE_RTC 

RTC emulation mode.

NILE_MCU_NATIVE_MODE_CDC 

CDC output-only mode.

NILE_MCU_NATIVE_MODE_STANDBY 

MCU standby mode - will not respond to further SPI messages until reset.

Definition at line 62 of file protocol.h.