Subversion Repositories HomeAutomation

Rev

Rev 73 | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | SVN | RSS feed

Rev 73 Rev 79
1
Vanligt paket:
1
Vanligt paket:
2
 
-
 
3
 
2
 
4
__________I D E N T____       _____D A T A_____
3
__________I D E N T____       _____D A T A_____
5
<FUNCT><FUNCC><NID><SID>      <data7>...<data0>
4
<FUNCT><FUNCC><NID><SID>      <data7>...<data0>
6
 
5
 
7
<FUNCT>, 4 bitar = Function Type, funktionstyp.
6
<FUNCT>, 4 bitar = Function Type, funktionstyp.
8
<FUNCC>, 10 bitar = Function Code, funktionskod.
7
<FUNCC>, 10 bitar = Function Code, funktionskod.
9
<NID>, 6 bitar = Network ID, nätverksid.
8
<NID>, 6 bitar = Network ID, nätverksid.
10
<SID>, 9 bitar = Sender ID, sändarid.
9
<SID>, 9 bitar = Sender ID, sändarid.
11
 
10
 
12
 
11
 
-
 
12
Bootloader.
13
 
13
 
14
Kontrollpaket:
14
Paketstruktur för Kontrollpaket:
15
 
15
 
16
__________I D E N T______     _______________D A T A________
16
__________I D E N T______     _______________D A T A________
17
<FUNCT><FUNCC><NID><SID>      <RESVD><RID>ADDRU><ADDRH><ADDRL>
17
<FUNCT><FUNCC><NID><SID>      <RESVD><RID_HIGH><RID_LOW>ADDRU><ADDRH><ADDRL>
18
 
18
 
19
 
19
 
20
<FUNCT> = 0000, funktionskod för bootloadern, högprioriterat.
20
<FUNCT> = 0000, funktionskod för bootloadern, högprioriterat.
21
<FUNCC> = kommando. 
21
<FUNCC> = kommando. 
22
 - 0000000001 för att initiera en programmering.
22
 - 0000000001 för att initiera en programmering.
23
 - 0000000010 for att ändra adress.
23
 - 0000000010 for att ändra adress.
24
 - 0000000101 för att avsluta en programmering.
24
 - 0000000101 för att avsluta en programmering.
25
 
25
 
26
<NID> = nätverksid.
26
<NID> = nätverksid.
27
<SID> = hostens id.
27
<SID> = hostens id.
28
 
28
 
29
<RID>[3] = mottagarens id, den som ska programmeras.
29
<RID_LOW>[4] = mottagarens id (låga 8 bitar), den som ska programmeras.
-
 
30
<RID_HIGH>[5] = mottagarens id (höga 8 bitar), den som ska programmeras.
30
 
31
 
31
<ADDRU>[2], 8 bitar = program adress bit 23-16
32
<ADDRU>[2], 8 bitar = program adress bit 23-16
32
<ADDRH>[1], 8 bitar = program adress bit 15-08
33
<ADDRH>[1], 8 bitar = program adress bit 15-08
33
<ADDRL>[0], 8 bitar = program adress bit 07-00
34
<ADDRL>[0], 8 bitar = program adress bit 07-00
34
 
35
 
35
 
36
 
36
Paketstruktur för programpaketet:
37
Paketstruktur för programpaketet:
37
 
38
 
38
__________I D E N T_____      _____D A T A_____
39
__________I D E N T_____      _____D A T A_____
39
<FUNCT><FUNCC><NID><SID>      <data7>...<data0>
40
<FUNCT><FUNCC><NID><SID>      <data7>...<data0>
40
 
41
 
41
 
42
 
42
<FUNCT> = 0000, funktionskod för bootloadern, högprioriterat.
43
<FUNCT> = 0000, funktionskod för bootloadern, högprioriterat.
43
<FUNCC> = kommando. 
44
<FUNCC> = kommando. 
44
 - 00000xxx11 för att indikera att detta är programdata som ska skrivas.
45
 - 00000xxx11 för att indikera att detta är programdata som ska skrivas.
45
 
46
 
46
 Där xxx är 0-7 indikerar vilka av de 8*8 bytes det är.
47
 Där xxx är 0-7 indikerar vilka av de 8*8 bytes det är.
47
 
48
 
48
 
49
 
49
Paketstruktur för ackpaketen:
50
Paketstruktur för ackpaketen:
50
 
51
 
51
__________I D E N T_____      _______D A T A_______
52
__________I D E N T_____      _______D A T A_______
52
<FUNCT><FUNCC><NID><SID>      <RESVD><ERR><RESVD>
53
<FUNCT><FUNCC><NID><SID>      <RESVD><ERR><RESVD>
53
 
54
 
54
<FUNCT> = 0000, funktionskod för bootloadern, högprioriterat.
55
<FUNCT> = 0000, funktionskod för bootloadern, högprioriterat.
55
<FUNCC> = kommando. 
56
<FUNCC> = kommando. 
56
 - 0000000100 för att indikera att detta är en ACK.
57
 - 0000000100 för att indikera att detta är en ACK.
57
 
58
 
58
<ERR>[4] 8 bitar feltyp
59
<ERR>[4] 8 bitar feltyp
59
0x00 = inget fel
60
0x00 = inget fel
60
0x01 = fel
61
0x01 = fel
61
 
62