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