lxw
2020-07-23 6de94fa782615702b7df64cca9cb27f526941db6
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
package com.dev.base.data;
 
import java.nio.ByteBuffer;
 
import com.base.ComBase;
 
public class Dynamicload_inf {
    
    public int dev_id;
    public String dev_name;                //É豸Ãû³Æ
    public String dev_ip;                //É豸ip
    public int dev_type;                //É豸ÀàÐÍ
    public int FZ_button_num;            //¸ºÔعñ°´Å¥ÊýÁ¿
    public String note;
    
    public Dynamicload_button button;
    public Dynamicload_control control;
    public Dynamicload_state state;
    
    //½âÎö·´À¡Êý¾ÝÐÅÏ¢[4013-4030]
    public boolean putReadIBackByteBuffer(ByteBuffer bf) {
        ByteBuffer tmpbf = bf;
        int datacount = ComBase.changeByteToInt(bf.get());
        if(datacount < 3) {
            return false;
        }
        int code = ComBase.changeByteToInt(bf.get());
        state.react_overtem = (code & ComBase.my_power_2(0));            //µç¿¹³¬ÎÂ4013
        state.water_overtem = (code & ComBase.my_power_2(1));            //ÀäÈ´Ë®³¬ÎÂ4014
        state.water_level_low = (code & ComBase.my_power_2(2));            //ÀäȴˮҺλµÍ4015
        state.water_pressure_high = (code & ComBase.my_power_2(3));        //Àäȴˮѹ¸ß4016
        int backup1 = (code & ComBase.my_power_2(4));                    //±¸ÓÃ4017
        int backup2 = (code & ComBase.my_power_2(5));                    //±¸ÓÃ4018
        int backup3 = (code & ComBase.my_power_2(6));                    //±¸ÓÃ4019
        button.FZ_fw1 = (code & ComBase.my_power_2(7));                    //°´Å¥1·´À¡4020
        code = ComBase.changeByteToInt(bf.get());
        button.FZ_fw2 = (code & ComBase.my_power_2(0));                    //°´Å¥2·´À¡4021
        button.FZ_fw3 = (code & ComBase.my_power_2(1));                    //°´Å¥3·´À¡4022
        button.FZ_fw4 = (code & ComBase.my_power_2(2));                    //°´Å¥4·´À¡4023
        button.FZ_fw5 = (code & ComBase.my_power_2(3));                    //°´Å¥5·´À¡4024
        button.FZ_fw6 = (code & ComBase.my_power_2(4));                    //°´Å¥6·´À¡4025
        button.FZ_fw7 = (code & ComBase.my_power_2(5));                    //°´Å¥7·´À¡4026
        button.FZ_fw8 = (code & ComBase.my_power_2(6));                    //°´Å¥8·´À¡4027
        button.FZ_fw9 = (code & ComBase.my_power_2(7));                    //°´Å¥9·´À¡4028
        code = ComBase.changeByteToInt(bf.get());
        button.FZ_fw10 = (code & ComBase.my_power_2(0));                //°´Å¥10·´À¡4029
        button.FZ_fw11 = (code & ComBase.my_power_2(1));                //°´Å¥11·´À¡4030
        return true;        
    }
    
    //¶ÁÈ¡MÇøÊý¾Ý³É¹¦[01-12]
    public boolean putReadMBackByteBuffer(ByteBuffer bf) {
        ByteBuffer tmpbf = bf;
        int datacount = ComBase.changeByteToInt(bf.get());
        if(datacount < 2) {
            return false;
        }
        int code = ComBase.changeByteToInt(bf.get());
        state.FZ_autostate1 = (code & ComBase.my_power_2(0))>0?1:0;            //FZ4_×Ô¶¯×´Ì¬1    01        
        state.FZ_autostate2 = (code & ComBase.my_power_2(1))>0?1:0;            //FZ4_×Ô¶¯×´Ì¬2    02    
        state.FZ_autostate3 = (code & ComBase.my_power_2(2))>0?1:0;            //FZ4_×Ô¶¯×´Ì¬3    03    
        state.FZ_autostate4 = (code & ComBase.my_power_2(3))>0?1:0;            //FZ4_×Ô¶¯×´Ì¬4    04    
        state.FZ_autostate5 = (code & ComBase.my_power_2(4))>0?1:0;            //FZ4_×Ô¶¯×´Ì¬5    05
        int backup1 = (code & ComBase.my_power_2(5))>0?1:0;                    //±¸ÓÃ1            06
        int backup2 = (code & ComBase.my_power_2(6))>0?1:0;                    //±¸ÓÃ2            07
        state.start_auto = (code & ComBase.my_power_2(7))>0?1:0;                //Æô¶¯×Ô¶¯¼ÓÔØ        08
        
        code = ComBase.changeByteToInt(bf.get());
        state.stop_auto = (code & ComBase.my_power_2(0))>0?1:0;                //Í£Ö¹×Ô¶¯¼ÓÔØ        09
        state.sudden_crease = (code & ComBase.my_power_2(1))>0?1:0;            //Í»¼Óͻж        10
        state.all_open = (code & ComBase.my_power_2(2))>0?1:0;                //È«²¿·ÖÕ¢        11
        state.fan_button = (code & ComBase.my_power_2(3))>0?1:0;
        return true;
    }
    
    //¶ÁÈ¡QÇøÊý¾Ý³É¹¦[0x8000-0x8013]
    public boolean putReadQBackByteBuffer(ByteBuffer bf) {
        ByteBuffer tmpbf = bf;
        int datacount = ComBase.changeByteToInt(bf.get());
        //System.out.println("$$$$$$$"+datacount);
        if(datacount < 2) {
            return false;
        }
        int code = ComBase.changeShortToInt(bf.get());
        button.FZ_ex1 = ((code & ComBase.my_power_2(0))>0)?1:0;
        button.FZ_ex2 = (code & ComBase.my_power_2(1))>0?1:0;
        button.FZ_ex3 = (code & ComBase.my_power_2(2))>0?1:0;
        button.FZ_ex4 = (code & ComBase.my_power_2(3))>0?1:0;
        button.FZ_ex5 = (code & ComBase.my_power_2(4))>0?1:0;
        button.FZ_ex6 = (code & ComBase.my_power_2(5))>0?1:0;
        button.FZ_ex7 = (code & ComBase.my_power_2(6))>0?1:0;
        button.FZ_ex8 = (code & ComBase.my_power_2(7))>0?1:0;
        
        code = ComBase.changeShortToInt(bf.get());
        button.FZ_ex9 = (code & ComBase.my_power_2(0))>0?1:0;
        button.FZ_ex10 = (code & ComBase.my_power_2(1))>0?1:0;
        button.FZ_ex11 = (code & ComBase.my_power_2(2))>0?1:0;
        state.all_open = (code & ComBase.my_power_2(3))>0?1:0;
        int backup1 = (code & ComBase.my_power_2(4))>0?1:0;
        state.fan_output = (code & ComBase.my_power_2(5))>0?1:0;
        //state.fan_output = ComBase.changeShortToInt(bf.getShort());                //·ç»úÊä³ö        8013
        return true;
    }
    
    //¶ÁÈ¡MÇø¿ØÖÆ¿ØÖƽڵãµÄ״̬[0040-0160]
    public boolean putReadMControlStateByteBuffer(ByteBuffer bf) {
        ByteBuffer tmpbf = bf;
        int datacount = ComBase.changeByteToInt(bf.get());            //×Ö½Ú¸öÊý
        if(datacount < 16) {        //121¼Ä´æÆ÷
            return false;
        }
        int code = ComBase.changeShortToInt(bf.get());                    
        state.local_control = (code & ComBase.my_power_2(0))>0?1:0;        //40
        state.back_control = (code & ComBase.my_power_2(1))>0?1:0;        //41
        state.central_control = (code & ComBase.my_power_2(2))>0?1:0;    //42
        
        
        code = ComBase.changeShortToInt(bf.get());                        //8        48
        
        code = ComBase.changeShortToInt(bf.get());                        //        56
        
        code = ComBase.changeShortToInt(bf.get());                        //        64
        
        code = ComBase.changeShortToInt(bf.get());                        //        72
        
        code = ComBase.changeShortToInt(bf.get());                        //        80
        button.FZ_b1 = (code & ComBase.my_power_2(0))>0?1:0;            //80            //FZ°´Å¥1    0080
        button.FZ_b2 = (code & ComBase.my_power_2(1))>0?1:0;            //81        //FZ°´Å¥2    0081
        button.FZ_b3 = (code & ComBase.my_power_2(2))>0?1:0;            //FZ°´Å¥3    0082
        button.FZ_b4 = (code & ComBase.my_power_2(3))>0?1:0;            //FZ°´Å¥4    0083
        button.FZ_b5 = (code & ComBase.my_power_2(4))>0?1:0;            //FZ°´Å¥5    0084
        button.FZ_b6 = (code & ComBase.my_power_2(5))>0?1:0;            //FZ°´Å¥6    0085
        button.FZ_b7 = (code & ComBase.my_power_2(6))>0?1:0;            //FZ°´Å¥7    0086
        button.FZ_b8 = (code & ComBase.my_power_2(7))>0?1:0;            //FZ°´Å¥8    0087
        code = ComBase.changeShortToInt(bf.get());                        //        88
        button.FZ_b9 = (code & ComBase.my_power_2(0))>0?1:0;            //FZ°´Å¥9    0088
        button.FZ_b10 = (code & ComBase.my_power_2(1))>0?1:0;            //FZ°´Å¥10    0089
        button.FZ_b11 = (code & ComBase.my_power_2(2))>0?1:0;            //FZ°´Å¥11    0090
        code = ComBase.changeShortToInt(bf.get());                        //        96
        code = ComBase.changeShortToInt(bf.get());                        //        104
        code = ComBase.changeShortToInt(bf.get());                        //        112
        code = ComBase.changeShortToInt(bf.get());                        //        120
        code = ComBase.changeShortToInt(bf.get());                        //        128
        code = ComBase.changeShortToInt(bf.get());                        //        136
        code = ComBase.changeShortToInt(bf.get());                        //        144
        code = ComBase.changeShortToInt(bf.get());                        //        152
        
        code = ComBase.changeShortToInt(bf.get());        
        state.inter_volume_M200 = (code & ComBase.my_power_2(0));        //ÖмäÁ¿M200    0160
        return false;
    }
    
    
    //¶ÁÈ¡VÇø¿ØÖÆ¿ØÖƽڵãµÄ״̬[0002-0018]
    public boolean putReadVBackByteBuffer(ByteBuffer bf) {
        ByteBuffer tmpbf = bf;
        int datacount = ComBase.changeByteToInt(bf.get());
        //System.out.println("¶ÁÈ¡¹¦ÂÊ"+datacount);
        if(datacount < 34) {
            return false;
        }
        state.actual_set_power = bf.getFloat();                        //É趨¹¦ÂÊ    0002
        //System.out.println("É趨¹¦ÂÊ:"+state.actual_set_power);
        state.output_power = bf.getFloat();                            //ÒÑÊä³ö¹¦ÂÊ    0004
        float value = bf.getFloat();                                //±¸Óà       0006
        state.set_power = bf.getFloat();                            //É趨¹¦ÂÊ    0008
        value = bf.getFloat();                                        //±¸Óà       0010
        int backup1 = ComBase.changeShortToInt(bf.getShort());        //±¸Óà       0012
        int backup2 = ComBase.changeShortToInt(bf.getShort());        //±¸Óà       0013
        value = bf.getFloat();                                        //±¸Óà       0014
        state.interval_time = ComBase.changeShortToInt(bf.getShort());//¼ä¸ôʱ¼ä    0016
        state.actual_curr = ComBase.changeShortToInt(bf.getShort());//ʵ¼ÊµçÁ÷    0017
        state.actual_mov = ComBase.changeShortToInt(bf.getShort());    //¼ä¸ôµçѹ    0018
        return true;
    }
    
    public boolean putReadVLongBackByteBuffer(ByteBuffer bf) {
        ByteBuffer tmpbf = bf;
        int datacount = ComBase.changeByteToInt(bf.get());
        //System.out.println("¶ÁÈ¡¹¦ÂÊ"+datacount);
        if(datacount < 34) {
            return false;
        }
        bf.getShort();
        state.actual_set_power = ComBase.changeShortToInt(bf.getShort());                        //É趨¹¦ÂÊ    0001
        state.output_power = ComBase.changeShortToInt(bf.getShort());                        //É趨¹¦ÂÊ    0001
        bf.getShort();
        state.set_power = ComBase.changeShortToInt(bf.getShort());                        //É趨¹¦ÂÊ    0001
        bf.getShort();
        
        //state.actual_set_power = bf.getFloat();                        //É趨¹¦ÂÊ    0001
        //System.out.println("É趨¹¦ÂÊ:"+state.actual_set_power);
        //state.output_power = bf.getFloat();                            //ÒÑÊä³ö¹¦ÂÊ    0004
        //float value = bf.getFloat();                                //±¸Óà       0006
        //state.set_power = bf.getFloat();                            //É趨¹¦ÂÊ    0008
        //value = bf.getFloat();                                        //±¸Óà       0010
        //int backup1 = ComBase.changeShortToInt(bf.getShort());        //±¸Óà       0012
        //int backup2 = ComBase.changeShortToInt(bf.getShort());        //±¸Óà       0013
        //value = bf.getFloat();                                        //±¸Óà       0014
        state.interval_time = ComBase.changeShortToInt(bf.getShort());//¼ä¸ôʱ¼ä    0016
        state.actual_curr = ComBase.changeShortToInt(bf.getShort());//ʵ¼ÊµçÁ÷    0017
        state.actual_mov = ComBase.changeShortToInt(bf.getShort());    //¼ä¸ôµçѹ    0018
        return true;
    }
    
    public int getDev_id() {
        return dev_id;
    }
    public String getDev_name() {
        return dev_name;
    }
    public int getDev_type() {
        return dev_type;
    }
    public int getFZ_button_num() {
        return FZ_button_num;
    }
    public String getNote() {
        return note;
    }
    public void setDev_id(int dev_id) {
        this.dev_id = dev_id;
    }
    public void setDev_name(String dev_name) {
        this.dev_name = dev_name;
    }
    public void setDev_type(int dev_type) {
        this.dev_type = dev_type;
    }
    public void setFZ_button_num(int fZ_button_num) {
        FZ_button_num = fZ_button_num;
    }
    public void setNote(String note) {
        this.note = note;
    }
    
    public String getDev_ip() {
        return dev_ip;
    }
    public void setDev_ip(String dev_ip) {
        this.dev_ip = dev_ip;
    }
    @Override
    public String toString() {
        return "Dynamicload_inf [dev_id=" + dev_id + ", dev_name=" + dev_name + ", dev_type=" + dev_type
                + ", FZ_button_num=" + FZ_button_num + ", note=" + note + "]";
    }
 
    
 
    
}