Details | Last modification | View Log | SVN | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 348 | eqlazer | 1 | /* |
| 2 | * Defines functs, funccs and other global definitions |
||
| 3 | * |
||
| 4 | * IDENT: <CLASS><TYPE><SID> DATA: <data7>...<data0> |
||
| 5 | * |
||
| 6 | * <CLASS>, 4 bits = Function type. |
||
| 7 | * <TYPE>, 17 bits = Function code. |
||
| 8 | * <SID>, 8 bits = Sender ID. |
||
| 9 | */ |
||
| 10 | |||
| 11 | |||
| 12 | /* Definitions for masking */ |
||
| 13 | #define CLASS_MASK 0x1E000000L /* bit[28..25] */ |
||
| 14 | #define TYPE_MASK 0x01FFFF00L /* bit[24..8] */ |
||
| 15 | #define SID_MASK 0x000000FFL /* bit[7..0] */ |
||
| 16 | |||
| 17 | #define CLASS_MASK_BITS 25 |
||
| 18 | #define TYPE_MASK_BITS 8 |
||
| 19 | #define SID_MASK_BITS 0 |
||
| 20 | |||
| 21 | /************************************************************** |
||
| 22 | * <CLASS> 4 bits 0xFL |
||
| 23 | *************************************************************/ |
||
| 24 | #define CLASS_SNS 0x4L |
||
| 25 | #define CLASS_ACT 0x5L |
||
| 26 | |||
| 27 | /**************************************************************** |
||
| 28 | * <TYPE> 17 bits 0x1FFFFL |
||
| 29 | ***************************************************************/ |
||
| 30 | |||
| 31 | /* SNS: Sensor data */ |
||
| 32 | |||
| 33 | /* <SNS_TYPE><SNS_ID> |
||
| 34 | * |
||
| 35 | * <SNS_TYPE>, 8 bits = Sensor type. |
||
| 36 | * <SNS_ID>, 9 bits = Sensor ID. Ex outdoor ds18s20, NodeRelay tc1047. |
||
| 37 | */ |
||
| 38 | /* SNS masking */ |
||
| 39 | #define SNS_TYPE_MASK 0x1FE0000L /* bit[24..17] */ |
||
| 40 | #define SNS_ID_MASK 0x001FF00L /* bit[16..8] */ |
||
| 41 | |||
| 42 | #define SNS_TYPE_BITS 17 |
||
| 43 | #define SNS_ID_BITS 8 |
||
| 44 | |||
| 45 | /* <SNS_TYPE> 8 bits 0xFFL */ |
||
| 46 | #define SNS_TEMP_DS18S20 0x08L |
||
| 47 | #define SNS_TEMP_TC1047 0x09L |
||
| 48 | #define SNS_IR_RECEIVE 0x0AL |
||
| 49 | #define SNS_ACT_STATUS_RELAY 0x0BL |
||
| 50 | #define SNS_ACT_STATUS_SERVO 0x0CL |
||
| 51 | #define SNS_ACT_STATUS_DIMMER 0x0DL |
||
| 52 | #define SNS_ACT_BUTTON 0x0EL |
||
| 53 | |||
| 54 | /* <SNS_ID> 9 bits 0x1FFL */ |
||
| 55 | //idn för alla sensorer |
||
| 56 | //eqlazers idn: |
||
| 57 | #define SNS_DS18S20_OUTSIDE 0x001L |
||
| 58 | #define SNS_DS18S20_FREEZER 0x002L |
||
| 59 | #define SNS_DS18S20_INSIDE1 0x003L |
||
| 60 | #define SNS_DS18S20_INSIDE2 0x004L |
||
| 61 | |||
| 62 | /* ACT: Actuator data */ |
||
| 63 | |||
| 64 | /* <ACT_TYPE><GROUP><NODE> |
||
| 65 | * |
||
| 66 | * <ACT_TYPE>, 5 bits = Actuator type, relay, dimmer etc. |
||
| 67 | * <GROUP>, 4 bits = To adress larger groups of actuators. |
||
| 68 | * <NODE>, 8 bits = Specific node. |
||
| 69 | */ |
||
| 70 | /* ACT masking */ |
||
| 71 | #define ACT_TYPE_MASK 0x1F000L /* bit[16..12] */ |
||
| 72 | #define ACT_GROUP_MASK 0x00F00L /* bit[11..8] */ |
||
| 73 | #define ACT_NODE_MASK 0x000FFL /* bit[7..0] */ |
||
| 74 | |||
| 75 | #define ACT_TYPE_BITS 12 |
||
| 76 | #define ACT_GROUP_BITS 8 |
||
| 77 | #define ACT_NODE_BITS 0 |
||
| 78 | |||
| 79 | /* <ACT_TYPE> 5 bits 0x1FL */ |
||
| 80 | #define ACT_TYPE_RELAY 0x01L |
||
| 81 | #define ACT_TYPE_DIMMER 0x02L |
||
| 82 | #define ACT_TYPE_SERVO 0x03L |
||
| 83 | #define ACT_TYPE_BLINDS ACT_TYPE_SERVO |
||
| 84 | #define ACT_TYPE_LCD 0x04L |
||
| 85 | #define ACT_TYPE_IRTRANS 0x05L |
||
| 86 | |||
| 87 | /* ACT LCD 12 bits <ACTION><SIZE> 0xFFFL |
||
| 88 | * |
||
| 89 | * <ACTION>, 4 bits = Type och action. |
||
| 90 | * <SIZE>, 8 bits = Size of display. |
||
| 91 | */ |
||
| 92 | #define LCD_ACTION_MASK 0xF00L /* bit[12..8] */ |
||
| 93 | #define LCD_SIZE_MASK 0x0FFL /* bit[7..0] */ |
||
| 94 | |||
| 95 | #define LCD_ACTION_BITS 8 |
||
| 96 | #define LCD_SIZE_BITS 0 |
||
| 97 | |||
| 98 | |||
| 99 | /* <ACTION> 4 bits 0xFL */ |
||
| 100 | |||
| 101 | #define LCD_ACTION_CLR 0x0L |
||
| 102 | #define LCD_ACTION_CURS 0x1L |
||
| 103 | #define LCD_ACTION_TEXT 0x2L |
||
| 104 | #define LCD_ACTION_GET_SIZE 0x3L |
||
| 105 | #define LCD_ACTION_SET_CONT 0x4L |
||
| 106 | #define LCD_ACTION_SET_BLIGHT 0x5L |
||
| 107 | #define LCD_ACTION_GET_CONT 0x6L |
||
| 108 | #define LCD_ACTION_GET_BLIGHT 0x7L |
||
| 109 | |||
| 110 | #define LCD_ACTION_SEND_CONT 0x8L |
||
| 111 | #define LCD_ACTION_SEND_BLIGHT 0x9L |
||
| 112 | |||
| 113 | |||
| 114 | |||
| 115 | /* <SIZE> 8 bits 0xFFL */ |
||
| 116 | #define LCD_SIZE_ALL 0x00L |
||
| 117 | #define LCD_SIZE_16x2 0x02L |
||
| 118 | #define LCD_SIZE_20x4 0x10L |
||
| 119 | |||
| 120 | /************************************************************* |
||
| 121 | * <SID> 8 bits 0xFFL |
||
| 122 | ************************************************************/ |
||
| 123 | |||
| 124 | |||
| 125 | //////////////////////////////////////////////////////////// |
||
| 126 | |||
| 127 | |||
| 128 | |||
| 129 | |||
| 130 | /* LCD: strings */ |
||
| 131 | #define LCD_SENSOR_TEMPERATURE_INSIDE "Inne " |
||
| 132 | #define LCD_SENSOR_TEMPERATURE_OUTSIDE "Ute " |
||
| 133 | #define LCD_SENSOR_TEMPERATURE_FREEZER "Frys " |
||
| 134 | #define LCD_SENSOR_TEMPERATURE_REFRIGERATOR "Kyl " |
||
| 135 | |||
| 136 | /* DS18S20 serial ID */ |
||
| 137 | #define DS18S20_FREEZER 0x10A7022601080005 |
||
| 138 | #define DS18S20_OUTSIDE 0x100901E50008001E |
||
| 139 | #define DS18S20_INSIDE_1 0x1061C125010800CC |
||
| 140 | //#define DS18S20_INSIDE_2 |
||
| 141 | //#define DS18S20_REFRIGERATOR |
||
| 142 | #define DS18S20_UNDEF 0x00 |
||
| 143 | |||
| 144 |