#ifndef __POV_H__ #define __POV_H__ // Operating modes (controlled via jumper on board) #define MODE_1 (char)0 #define MODE_2 (char)1 // Maximum number of characters (string length) which will fit on the wheel // (8-dot characters) #define MAX_LENGTH (char)30 #define DEFAULT_STYLE (char)0 #define INVERTED_TEXT (char)1 #define ADJACENT_CHARACTERS (char)2 #define CONST_26_INCH_WHEEL (float)18554.5 #define REVS_PER_MILE (int)776 // 776.090151886 /* #define CONST_24_INCH_WHEEL (float)20185.03 #define REVS_PER_MILE (int)713 // 713.4 */ #define EIGHTH_MILE (int)REVS_PER_MILE/8 //#define TWENTIETH_MILE (int)REVS_PER_MILE/50 #define MAX_SPEED (unsigned long)371 // 50 MPH #define MIN_SPEED (unsigned long)3092 // 6 MPH #define DIFF_SPEED (unsigned long)(MIN_SPEED-MAX_SPEED) // Speed at which we change our on/off time prescaler (TinyPause) up or down. #define SLOW_SPEED_TRANSITION (int)1854 // 10 MPH // Constants used for dynamically adjusting character width based on speed. // See spreadsheet "DynamicCharacterSizing.ods" for derivation details. //#define CONST_ONTIME (float)0.0653722 //#define CONST_OFFTIME (float)0.0408577 // Give user several display options, selectable with external jumper #define MODE_ROTATE_ALL (char)0 #define MODE_SPEEDO_ODO (char)1 #define MODE_SPACEINVADERS (char)2 #define MODE_BOXES (char)4 #define MODE_TEXT (char)8 #define MODE_MAX MODE_TEXT //#define MODE_EGYPT (char)2 // Doohickey modes #define DH_MODE_SI (char)0 // Space Invaders #define DH_MODE_SO (char)1 // Speedo/Odo #define DH_MODE_BOXES (char)2 // Boxes #define DH_MODE_TEXT (char)4 // Text #define DH_MODE_MAX (char)4 // Top of doohickey rotation //#define DH_MODE_DIAMONDS (char)1 // Double-bounce //#define DH_MODE_MSW (char)1 // Modified Square Wave // Prescale mnemonics #define PRESCALE_NONE (char)1 #define PRESCALE_8 (char)2 #define PRESCALE_64 (char)3 #define PRESCALE_256 (char)4 #define PRESCALE_1024 (char)5 // Strings to be displayed #define TEXT1 " " #define TEXT2 " " #endif // __POV_H__