#ifndef __MAIN_H__ #define __MAIN_H__ #define L_DIV 8 #define CLK_Prescaler CLK_MasterPrescaler_HSIDiv8 typedef enum { WAIT = 0x80, RESETCMD = 0x40, GETCMD = 0x81, WRITEBYTE = 0x02, ENUMERATION = 0x03, MATCH_DEVICE = 0x84, SEND_ACCEL_DATA = 0x05, WRITE_SCRATCHPAD= 0x86, SEND_CRC16 = 0x07, COPY_SCRATCHPAD = 0x88, READ_MEMORY = 0x89, SEND_SLOT = 0x0A, SEND_INFO = 0x0B, SEND_UID = 0x0C //INC_COUNTER = 0x0D // SEND_COUNTER = 0x0E }_1WireModes; typedef enum { Enumeration = 0xF0, MatchDevice = 0x55, GetVersion = 0x82, GetUid = 0x83, GetCounter = 0x84, InitAccel = 0x85, PingByte = 0x81, //GetCounter = 0x82, OverdriveSkip = 0x3C, StartAccel = 0x08, StopAccel = 0x09, GetAccelData = 0x0A, WriteScratchpad = 0x0F, // ReadScratchpad = 0xAA, CopyScratchpad = 0x55, ReadMemory = 0xF0, IncrementCounter = 0xA5, // Resume = 0xA5 InvalidRead = 0xFF }_1WireCommands; /* Enumeration = 0xF0, MatchDevice = 0x55, GetVersion = 0x82, GetUid = 0x83, GetCounter = 0x84, PingByte = 0x81, //WriteByte = 0x80, OverdriveSkip = 0x3C, StartAccel = 0x08, StopAccel = 0x09, GetAccelData = 0x0A, WriteScratchpad = 0x0F, // ReadScratchpad = 0xAA, CopyScratchpad = 0x55, ReadMemory = 0xF0, IncrementCounter = 0xA5, // Resume = 0xA5 InvalidRead = 0xFF */ typedef enum { NormalSpeed, OverdriveSpeed }SpeedMode; //#define MAX_SLOT_NUMBER 9 #define max_reset_normal 0x2760 #define min_reset_normal 0x23A0 #define max_reset_overdrive 0x500 #define min_reset_overdrive 0x400 #define presence_overdrive 0xF0 #define presence_normal 0x600 #define presence_delay_overdrive 0x10 #define presence_delay_normal 0xA0 #define bit_range_normal 0xE0 #define null_slot_normal 0x1C0 #define bit_range_overdrive 0x30 #define null_slot_overdrive 0x60 #define ping_byte 0x5A #endif