Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
A
ademco_hb
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
captainwong
ademco_hb
Commits
8931d61e
Commit
8931d61e
authored
Dec 02, 2023
by
captainwong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
release 1.1.0
parent
80489de5
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
57 additions
and
27 deletions
+57
-27
CHANGELOG.md
CHANGELOG.md
+11
-0
ademco.h
ademco.h
+2
-1
ademco_version.h
ademco_version.h
+1
-1
hb_com.c
hb_com.c
+25
-10
hb_com.h
hb_com.h
+13
-11
win_csharp.bat
swig/win_csharp.bat
+1
-1
win_java.bat
swig/win_java.bat
+1
-1
win_node.bat
swig/win_node.bat
+1
-1
clean.sh
tools/clean.sh
+1
-1
copy_from_hb.bat
tools/copy_from_hb.bat
+1
-0
No files found.
CHANGELOG.md
0 → 100644
View file @
8931d61e
# Ademco Change Log
## 1.1.0
-
ADEMCO_PACKET_ACCT_MAX_LEN changed from 64 to 18
-
add ADEMCO_PACKET_ACCT_MAX_LEN
-
hb_com 读写主机账号命令
## 1.0.0
initial version
ademco.h
View file @
8931d61e
...
...
@@ -37,7 +37,8 @@ extern "C" {
#define ADEMCO_OK 0
#define ADEMCO_ERR -1
#define ADEMCO_PACKET_ACCT_MAX_LEN 64 // #acct之acct最大长度
#define ADEMCO_PACKET_ACCT_MAX_LEN 18 // #acct之acct最大长度
#define ADEMCO_PACKET_ACCT_MAC_LEN 12 // WiFi主机账号使用MAC地址
#define ADEMCO_PACKET_DATA_SEGMENT_EMPTY_LEN 2 // 空data段[]长度
#define ADEMCO_PACKET_DATA_SEGMENT_FULL_LEN 21 // 非空data段长度,acct长度6
#define ADEMCO_PACKET_DATA_SEGMENT_FULL_LEN_MAX 64 // 非空data段长度,acct长度未知
...
...
ademco_version.h
View file @
8931d61e
...
...
@@ -8,7 +8,7 @@
#define ADEMCO_VERSION_MAJOR 1
#define ADEMCO_VERSION_MINOR 0
#define ADEMCO_VERSION_PATCH
0
#define ADEMCO_VERSION_PATCH
1
#define ADEMCO_VERSION_IS_RELEASE 1
#define ADEMCO_VERSION_SUFFIX ""
...
...
hb_com.c
View file @
8931d61e
...
...
@@ -560,8 +560,8 @@ HbComRequestType hbComParseRequest(const uint8_t* data,
case
0xBA
:
{
if
(
data
[
2
]
!=
0x3F
)
{
break
;
}
if
(
len
==
HbComReq_RD_acct_len
&&
memcmp
(
data
,
HbComReq_RD_acct_data
,
len
)
==
0
)
{
if
(
len
==
HbComReq_R
EA
D_acct_len
&&
memcmp
(
data
,
HbComReq_R
EA
D_acct_data
,
len
)
==
0
)
{
copy_data_to_com
;
return
HbComReq_RD_acct
;
}
...
...
@@ -581,7 +581,7 @@ HbComRequestType hbComParseRequest(const uint8_t* data,
}
}
else
if
(
data
[
3
]
==
0x0F
&&
data
[
4
]
==
0x4D
&&
len
==
HbComReq_WR_acct_len
)
{
len
==
HbComReq_WR
ITE
_acct_len
)
{
if
(
hbCheckSum
(
data
,
len
))
{
copy_data_to_com
;
return
HbComReq_WR_acct
;
...
...
@@ -760,6 +760,21 @@ HbComResponseType hbComParseResponse(const uint8_t* data,
}
}
while
(
0
);
// 处理读写主机账号回应
do
{
if
(
len
>=
HbComResp_WRITE_acct_len
&&
memcmp
(
HbComResp_WRITE_acct_data
,
data
,
HbComResp_WRITE_acct_len
)
==
0
)
{
return
HbComResp_WA
;
}
if
(
len
>=
HbComResp_READ_acct_len
&&
memcmp
(
HbComResp_READ_acct_head
,
data
,
sizeof
(
HbComResp_READ_acct_head
)
-
1
)
==
0
&&
hbCheckSum
(
data
,
len
))
{
copy_data_to_com
;
return
HbComResp_RA
;
}
}
while
(
0
);
return
HbComResp_Invalid
;
}
...
...
@@ -848,15 +863,15 @@ void hbComMakeReqB0_get3SectionMachineStatus(HbComData* data) {
data
->
len
=
HbComReq_B0_len
;
}
void
hbComMakeReqR
D
_acct
(
HbComData
*
data
)
{
memcpy
(
data
->
data
,
HbComReq_R
D_acct_data
,
HbComReq_R
D_acct_len
);
data
->
len
=
HbComReq_RD_acct_len
;
void
hbComMakeReqR
ead
_acct
(
HbComData
*
data
)
{
memcpy
(
data
->
data
,
HbComReq_R
EAD_acct_data
,
HbComReq_REA
D_acct_len
);
data
->
len
=
HbComReq_R
EA
D_acct_len
;
}
void
hbComMakeReqW
R
_acct
(
HbComData
*
data
,
const
char
*
acct
)
{
memcpy
(
data
->
data
,
HbComReq_WR_acct_head
,
5
);
ademcoDecStrToHiLoArray
(
data
->
data
+
5
,
9
,
acct
);
data
->
len
=
HbComReq_WR_acct_len
;
void
hbComMakeReqW
rite
_acct
(
HbComData
*
data
,
const
char
*
acct
)
{
memcpy
(
data
->
data
,
HbComReq_WR
ITE
_acct_head
,
5
);
ademcoDecStrToHiLoArray
2
(
data
->
data
+
5
,
ADEMCO_PACKET_ACCT_MAX_LEN
/
2
,
acct
);
data
->
len
=
HbComReq_WR
ITE
_acct_len
;
hbSum
(
data
->
data
,
data
->
len
);
}
...
...
hb_com.h
View file @
8931d61e
...
...
@@ -162,6 +162,8 @@ typedef enum HbComResponseType {
HbComResp_AD
,
// 索要防区探头遗失/失联回应
HbComResp_AF
,
// 三区段主机布撤防命令回应
HbComResp_B1
,
// 三区段主机状态回应
HbComResp_RA
,
// 读取主机账号回应
HbComResp_WA
,
// 写入主机账号回应
HbComResp_Invalid
=
-
1
,
}
HbComResponseType
;
...
...
@@ -340,20 +342,20 @@ typedef enum HbCom_3sec_which {
((((d)[6]) & 0x03) == HbCom_3sec_arm ? HMS_ARM : HMS_DISARM)
//! 读取主机账号
#define HbComReq_RD_acct_len 7
#define HbComReq_RD_acct_data "\xEB\xBA\x3F\x07\x00\x4C\x37"
#define HbComReq_R
EA
D_acct_len 7
#define HbComReq_R
EA
D_acct_data "\xEB\xBA\x3F\x07\x00\x4C\x37"
//! 读取主机账号回应
#define HbComResp_RD_acct_len 15
#define HbComResp_RD_acct_head "\xEB\xCB\x3F\x0F\x4C"
#define HbComResp_R
EA
D_acct_len 15
#define HbComResp_R
EA
D_acct_head "\xEB\xCB\x3F\x0F\x4C"
//! 写入主机账号
#define HbComReq_WR_acct_len 15
#define HbComReq_WR_acct_head "\xEB\xCB\x3F\x0F\x4D"
#define HbComReq_WR
ITE
_acct_len 15
#define HbComReq_WR
ITE
_acct_head "\xEB\xCB\x3F\x0F\x4D"
//! 写入主机账号回应(与读取
主机账号
命令相同)
#define HbComResp_WR
_acct_len HbComReq_R
D_acct_len
#define HbComResp_WR
_acct_head HbComReq_WR_acct_head
//! 写入主机账号回应(与读取命令相同)
#define HbComResp_WR
ITE_acct_len HbComReq_REA
D_acct_len
#define HbComResp_WR
ITE_acct_data HbComReq_READ_acct_data
static
const
HbZoneProperty
hbZoneProperties
[
12
]
=
{
HZP_BUGLAR
,
HZP_EMERGENCY
,
HZP_FIRE
,
HZP_DURESS
,
...
...
@@ -470,8 +472,8 @@ ADEMCO_EXPORT_SYMBOL void hbComMakeReqAE_set3SectionMachineStatus(HbComData* dat
HbCom_3sec_status
status
);
ADEMCO_EXPORT_SYMBOL
void
hbComMakeReqB0_get3SectionMachineStatus
(
HbComData
*
data
);
ADEMCO_EXPORT_SYMBOL
void
hbComMakeReqR
D
_acct
(
HbComData
*
data
);
ADEMCO_EXPORT_SYMBOL
void
hbComMakeReqW
R
_acct
(
HbComData
*
data
,
const
char
*
acct
);
ADEMCO_EXPORT_SYMBOL
void
hbComMakeReqR
ead
_acct
(
HbComData
*
data
);
ADEMCO_EXPORT_SYMBOL
void
hbComMakeReqW
rite
_acct
(
HbComData
*
data
,
const
char
*
acct
);
ADEMCO_EXPORT_SYMBOL
void
hbComResp_A2_Iter_init
(
HbComResp_A2_Iter
*
iter
,
const
HbComData
*
com
);
...
...
swig/win_csharp.bat
View file @
8931d61e
mkdir com\hb3344\ademco
"
C:\Users\Jack\Downloads\swigwin-4.0.2
\swig.exe" -csharp -namespace com.hb3344.ademco -outdir com/hb3344/ademco -o libademco_csharp_wrap.c libademco.swig
"
E:\local_program\swig\swigwin-4.1.1
\swig.exe" -csharp -namespace com.hb3344.ademco -outdir com/hb3344/ademco -o libademco_csharp_wrap.c libademco.swig
cl -c ../ademco.c ../hb_com.c libademco_csharp_wrap.c -I"../"
cl -LD ademco.obj hb_com.obj libademco_csharp_wrap.obj -o libademco.dll
csc CSharpDemo.cs -recurse:com/hb3344/ademco/*.cs
...
...
swig/win_java.bat
View file @
8931d61e
mkdir com\hb3344\ademco
"
C:\Users\Jack\Downloads\swigwin-4.0.2
\swig.exe" -java -package com.hb3344.ademco -outdir com/hb3344/ademco -o libademco_java_wrap.c libademco.swig
"
E:\local_program\swig\swigwin-4.1.1
\swig.exe" -java -package com.hb3344.ademco -outdir com/hb3344/ademco -o libademco_java_wrap.c libademco.swig
cl -c ../ademco.c ../hb_com.c libademco_java_wrap.c -I"../" -I"%JAVA_HOME%include" -I"%JAVA_HOME%include/win32"
cl -LD ademco.obj hb_com.obj libademco_java_wrap.obj -o ademco_java.dll
javac -encoding utf-8 JavaDemo.java
...
...
swig/win_node.bat
View file @
8931d61e
C:\Users\Jack\Downloads
\swigwin-4.1.1\swig.exe -c++ -javascript -node libademco.swig
E:\local_program\swig
\swigwin-4.1.1\swig.exe -c++ -javascript -node libademco.swig
node-gyp configure build
rem node nodejs-demo.js
tools/clean.sh
View file @
8931d61e
...
...
@@ -12,4 +12,4 @@ rm -rf win_java
rm
-rf
server_demo
rm
-rf
win_node
cd
../swig
rm
-rf
*
.exp
*
.lib
*
.dll
*
.exe
*
.obj
*
.class com/ build/
rm
-rf
*
.exp
*
.lib
*
.dll
*
.exe
*
.obj
*
.class com/ build/
*
_wrap.c
*
tools/copy_from_hb.bat
View file @
8931d61e
...
...
@@ -3,3 +3,4 @@ xcopy /i /s /y G:\dev_libs\ademco\hb\ademco.c ..\
xcopy /i /s /y G:\dev_libs\ademco\hb\hb_com.h ..\
xcopy /i /s /y G:\dev_libs\ademco\hb\hb_com.c ..\
xcopy /i /s /y G:\dev_libs\ademco\hb\ademco_version.h ..\
xcopy /i /s /y G:\dev_libs\ademco\hb\CHANGELOG.md ..\
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment