mirror of
http://180.163.74.83:13000/zhangzhenghao/AP05.git
synced 2025-12-13 15:24:29 +00:00
jingdong first v2.1.1
This commit is contained in:
parent
ae491ab832
commit
b651108fc9
@ -22,13 +22,53 @@ AUX_SOURCE_DIRECTORY(escape_unescape DIR_SRC_ESCAPE_UNESCAPE)
|
||||
AUX_SOURCE_DIRECTORY(net_utils DIR_SRC_NET_UTILS)
|
||||
AUX_SOURCE_DIRECTORY(debug_print DIR_SRC_DEBUG_PRINT)
|
||||
|
||||
|
||||
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
|
||||
SET(MQTT_SRC_PATH ${CMAKE_CURRENT_LIST_DIR}/mqtt)
|
||||
|
||||
IF (PAHO_WITH_SSL)
|
||||
SET(OPENSSL_SEARCH_PATH "/home/hyx/work/openssl/output" CACHE PATH "Directory containing OpenSSL libraries and includes")
|
||||
|
||||
IF (${CMAKE_SYSTEM_NAME} STREQUAL "Darwin")
|
||||
SET(OPENSSL_SEARCH_PATH "/usr/local/opt/openssl")
|
||||
ENDIF (${CMAKE_SYSTEM_NAME} STREQUAL "Darwin")
|
||||
|
||||
IF (WIN32)
|
||||
SET(OPENSSL_SEARCH_PATH "C:/OpenSSL-Win64")
|
||||
SET(OPENSSL_SEARCH_LIB_PATH "${OPENSSL_SEARCH_PATH}/lib64")
|
||||
IF (DEFINED ENV{PAHO_WINDOWS_BUILD_BIT})
|
||||
IF ($ENV{PAHO_WINDOWS_BUILD_BIT} STREQUAL "x86")
|
||||
SET(OPENSSL_SEARCH_PATH "C:/OpenSSL-Win32")
|
||||
SET(OPENSSL_SEARCH_LIB_PATH "${OPENSSL_SEARCH_PATH}/lib32")
|
||||
ENDIF ()
|
||||
ENDIF ()
|
||||
ELSE()
|
||||
SET(OPENSSL_SEARCH_LIB_PATH "${OPENSSL_SEARCH_PATH}/lib")
|
||||
ENDIF ()
|
||||
|
||||
FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h
|
||||
HINTS ${OPENSSL_SEARCH_PATH}/include)
|
||||
FIND_LIBRARY(OPENSSL_LIB NAMES ssl libssl ssleay32
|
||||
HINTS ${OPENSSL_SEARCH_PATH}/lib ${OPENSSL_SEARCH_LIB_PATH})
|
||||
FIND_LIBRARY(OPENSSLCRYPTO_LIB NAMES crypto libcrypto libeay32
|
||||
HINTS ${OPENSSL_SEARCH_PATH}/lib ${OPENSSL_SEARCH_LIB_PATH})
|
||||
|
||||
MESSAGE(STATUS "OpenSSL hints: ${OPENSSL_SEARCH_PATH}")
|
||||
MESSAGE(STATUS "OpenSSL headers found at ${OPENSSL_INCLUDE_DIR}")
|
||||
MESSAGE(STATUS "OpenSSL library found at ${OPENSSL_LIB}")
|
||||
MESSAGE(STATUS "OpenSSL Crypto library found at ${OPENSSLCRYPTO_LIB}")
|
||||
|
||||
# INCLUDE_DIRECTORIES(
|
||||
# ${OPENSSL_INCLUDE_DIR}
|
||||
# )
|
||||
add_definitions(-DOPENSSL=1)
|
||||
ENDIF()
|
||||
|
||||
INCLUDE_DIRECTORIES(
|
||||
${CMAKE_CURRENT_LIST_DIR}/
|
||||
${CMAKE_BINARY_DIR}/
|
||||
${MQTT_SRC_PATH}/
|
||||
${OPENSSL_INCLUDE_DIR}/
|
||||
${CMAKE_CURRENT_LIST_DIR}/uart_utils
|
||||
${CMAKE_CURRENT_LIST_DIR}/uart_can
|
||||
${CMAKE_CURRENT_LIST_DIR}/queue
|
||||
@ -92,8 +132,8 @@ SET(SRC_TX_SERVER
|
||||
${CMAKE_CURRENT_LIST_DIR}/main.c
|
||||
)
|
||||
|
||||
ADD_EXECUTABLE(tx_server ${SRC_TX_SERVER})
|
||||
ADD_EXECUTABLE(jd_server ${SRC_TX_SERVER})
|
||||
|
||||
TARGET_LINK_LIBRARIES(tx_server pthread dl)
|
||||
TARGET_LINK_LIBRARIES(jd_server pthread dl "-L/home/hyx/work/openssl/output/lib" "-lssl" "-lcrypto")
|
||||
|
||||
|
||||
|
||||
13
cp.sh
13
cp.sh
@ -1,7 +1,10 @@
|
||||
#sshpass -p "&Over#B0Ost!" scp ./start.sh root@10.10.10.101:/root/
|
||||
#sshpass -p "&Over#B0Ost!" scp ./output/bin/tx_server root@10.10.10.101:/root/
|
||||
sshpass -p "&Over#B0Ost!" scp ./output/bin/tx_server root@10.10.10.101:/home/linaro/
|
||||
#sshpass -p "&Over#B0Ost!" scp ./output/bin/tx_server root@10.10.12.2:/root/
|
||||
#sshpass -p "&Over#B0Ost!" scp ./output/bin/tx_server root@10.10.10.101:/home/linaro/
|
||||
#sshpass -p "PddloTSecPwdOnly!" scp ./output/bin/tx_server root@192.168.0.148:/home/linaro/
|
||||
#sshpass -p "PddloTSecPwdOnly!" scp ./output/bin/tx_server root@10.10.10.132:/root/
|
||||
#sshpass -p "PddloTSecPwdOnly!" scp ./start.sh root@10.10.10.225:/root/
|
||||
#sshpass -p "PddloTSecPwdOnly!" scp ./start.sh root@10.10.10.132:/root/
|
||||
#sshpass -p "TxApPwd#2025!" scp ./output/bin/tx_server root@10.10.12.2:/root
|
||||
#sshpass -p "TxApPwd#2025!" scp ./*.zip root@10.10.12.4:/root/ota
|
||||
sshpass -p "TxApPwd#2025!" scp output/bin/jd_server root@10.10.12.2:/root
|
||||
#sshpass -p "TxApPwd#2025!" scp tx_ota/*.bin root@10.10.12.4:/root/ota
|
||||
#sshpass -p "PddloTSecPwdOnly!" scp ./output/bin/tx_server root@10.10.12.4:/root/
|
||||
#sshpass -p "PddloTSecPwdOnly!" scp tx_ota/*.bin root@10.10.12.6:/root/ota
|
||||
|
||||
21
d126ei4lj4cc00/ca.crt
Executable file
21
d126ei4lj4cc00/ca.crt
Executable file
@ -0,0 +1,21 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDYzCCAkugAwIBAgIJAIQKwCvFI20lMA0GCSqGSIb3DQEBDQUAMEcxGTAXBgNV
|
||||
BAMMEHRoaW5ndGFsay5qZGwuY24xCzAJBgNVBAoMAkpEMRAwDgYDVQQIDAdCZWlq
|
||||
aW5nMQswCQYDVQQGEwJDTjAgFw0yMTA0MjAwNzUyMzFaGA8yMTIxMDMyNzA3NTIz
|
||||
MVowRzEZMBcGA1UEAwwQdGhpbmd0YWxrLmpkbC5jbjELMAkGA1UECgwCSkQxEDAO
|
||||
BgNVBAgMB0JlaWppbmcxCzAJBgNVBAYTAkNOMIIBIjANBgkqhkiG9w0BAQEFAAOC
|
||||
AQ8AMIIBCgKCAQEAtoSsg0Qdzr/3vVIVNVrL8dHQNzwJvEDIkMapXfZ+KNxgEvwP
|
||||
G6Ym+XUwykQdM3MjPSVdX/vwWDkOOZKKI5Rn5XHgt3Yufc7aVjmsvLto3mBdStuz
|
||||
z3rh7PMPkFpW4Ie3zm0PCMbEsa6dT/ApPKElMZI5q4OSPNMmBLw8iDd9FPhi43bQ
|
||||
74gQHKNbPxpXaCzMgNFxm9nwHsP2muHyKWkX8ATMXa/lPEjnD8+0eAGxlo0VY0h8
|
||||
tWeipk1KFHRIdLJMhYOprKxWPqdY/pzqIyYNuOBqriO1/9FmxPXENlyGF/OUyvZt
|
||||
uu4UwiCvQ9eVlZuN3XCCvZUZFAf92qYGWSC57QIDAQABo1AwTjAdBgNVHQ4EFgQU
|
||||
hfVGDZhSn0yMTs2ZRXhXLVpTRRwwHwYDVR0jBBgwFoAUhfVGDZhSn0yMTs2ZRXhX
|
||||
LVpTRRwwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQ0FAAOCAQEAsZfBS1fn8vA5
|
||||
DU/IzYSSEFMQbp15fgGXrhcw5cgssX4EkxgoJebs1zllNCTmuUuZfZOMVx2BOq7y
|
||||
Av0pWXFv/8gGUY86ZCHdoXvqykQkLwfhBIRxuWjRycquHZaCtcM3rZtuHPvW1AfT
|
||||
cTjC3HwXn05ISi5mbz2ibPrXODkaxDEJ8m83hCyXXOdoI0P7r3zSokSDSCgMQYvA
|
||||
2N+bn+CdoRf46+xBSC2RHm7pssBtRDKTO/iOPeWuk+sKJ4piiZUzctuvxVh7OYno
|
||||
HH8NmepyB0N9NTBrrpup3pgOFf9ot5B3y2OWH4n8Q7ddQGrmj7SuW1HTW3LIl/HF
|
||||
tetXyNsX3w==
|
||||
-----END CERTIFICATE-----
|
||||
16
d126ei4lj4cc00/d126ei4lj4cc00.crt
Executable file
16
d126ei4lj4cc00/d126ei4lj4cc00.crt
Executable file
@ -0,0 +1,16 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDDTCCAfWgAwIBAgIHAycFFP4DADANBgkqhkiG9w0BAQsFADBHMRkwFwYDVQQDExB0aGluZ3Rh
|
||||
bGsuamRsLmNuMQswCQYDVQQKEwJKRDEQMA4GA1UECBMHQmVpamluZzELMAkGA1UEBhMCQ04wIBcN
|
||||
MjUwNDIzMDgyOTQ2WhgPMjA3NTA0MTEwODI5NDZaMEUxCzAJBgNVBAYTAkNOMRAwDgYDVQQIEwdC
|
||||
ZWlqaW5nMQswCQYDVQQKEwJKRDEXMBUGA1UEAxMOZDEyNmVpNGxqNGNjMDAwggEiMA0GCSqGSIb3
|
||||
DQEBAQUAA4IBDwAwggEKAoIBAQCcr3PanvsNozpBtKtmVv7w4/5DevWxR/XB2cyQO0jnzHsKUAUo
|
||||
JMsfCRcJWseQpHPGt+E+9S0VzJBEZmc//8aEJevVxGyBVPcWzs+G+bATOeHdPCROngZxePP01mDm
|
||||
vMhcg3wynlxSunEms3PX2isu8JTALb59srFUUjJnSeUp6ZgQ4Ol2qxy5UOmaQfrkpWZGFuUztXxi
|
||||
J1PTA4ghyE94dvag7B/9ao5Gknklev9xIDPcpFJnQEhkZgTHvSDpQ9/RqHo/EoitrLdAjThnhOiZ
|
||||
r5kjbsCf/XJDpds1O5ALaZBYkPlEc+LIbiH2dWFI6EeLqJya3Ht4OjFjL6rHsVQ/AgMBAAEwDQYJ
|
||||
KoZIhvcNAQELBQADggEBACc92CJ+XLbp9CHor9WWSuc/Medc4DLK2GK/R+PwaO5dFGB615N4UVGd
|
||||
GpigK5Yf/Cg4JD5r8waDSyxrm1o/3GhB9fwBjEfSLW4FA3Tj6LexOIxkUEqGP7NpHrFE0zfvc/hD
|
||||
SuoXFnwuaI3uZmw0ArMl9QNEvgcx8Bnd/p35KQjyeRvw7PT0DKuudYFmoIEJLW64FC5/b4/P6LDS
|
||||
fsTNuABCJyjoC0gbe/r0rmlucpa3K22l8NXO/pcIGPKVBP8URwdB1ibu803hbV5+a4knUy6Qghv6
|
||||
uvdL1fLIJo85byUm6wQ4hEqy6cOX4D3DS08STo+mLfsv5c90Wq83niP1fXw=
|
||||
-----END CERTIFICATE-----
|
||||
27
d126ei4lj4cc00/d126ei4lj4cc00.key
Executable file
27
d126ei4lj4cc00/d126ei4lj4cc00.key
Executable file
@ -0,0 +1,27 @@
|
||||
-----BEGIN RSA PRIVATE KEY-----
|
||||
MIIEogIBAAKCAQEAnK9z2p77DaM6QbSrZlb+8OP+Q3r1sUf1wdnMkDtI58x7ClAF
|
||||
KCTLHwkXCVrHkKRzxrfhPvUtFcyQRGZnP//GhCXr1cRsgVT3Fs7PhvmwEznh3Twk
|
||||
Tp4GcXjz9NZg5rzIXIN8Mp5cUrpxJrNz19orLvCUwC2+fbKxVFIyZ0nlKemYEODp
|
||||
dqscuVDpmkH65KVmRhblM7V8YidT0wOIIchPeHb2oOwf/WqORpJ5JXr/cSAz3KRS
|
||||
Z0BIZGYEx70g6UPf0ah6PxKIray3QI04Z4Toma+ZI27An/1yQ6XbNTuQC2mQWJD5
|
||||
RHPiyG4h9nVhSOhHi6icmtx7eDoxYy+qx7FUPwIDAQABAoIBAAh4d8Pu6lWfaGva
|
||||
75U1yMyPFtThFd1CraeQNb3qZpOZe2FgWBcGfjCsViF8VeOc8GFi2XuE164hA/+e
|
||||
paBRHJNSVYCWAOOxCzahcZizcPBpJavHL5NMeb6yskWfPVfcBtzxgspdw1H5oFpe
|
||||
Qzn9Im6ENRZ6opy7B1kupGjvFsOANr7SgYU2kijRdP006dqMUGBfYjXRy5iL3MxW
|
||||
m3kuedL01cO+f5Q//87c2mW41/g5bxDQrCPV5tShoslQi3axqwegWcKIMO4vgT13
|
||||
Mry56zZAZ6GVZklot/HynsKBiLHod6stw41oxQfw08EZn+U6aQDOaJUrBs//2zXx
|
||||
P+6yeSkCgYEAy+U92vt+/F1sRJ/u64tiDit7XjeGg+dT5bT9/QligOC3r/oFhZFp
|
||||
9ZayswWhIlMRimSo89oyFdG0TWJZ7nf/6nByNVoVJSuekHek34x81bH5L3ooASmY
|
||||
kgyeKQLz/9m3dKtGfHA9I2UKwxW8dgXVYT+2G4qsuz0xhGpJYAYpsAsCgYEAxLm+
|
||||
oh5j4WWH4fxISiGKz1j7JqeAAsmfhqtlS4app3izvD3Soy7VKrmCL0lO3frEgdrY
|
||||
i6x7wq78CWjCcgJ9Id4dGK7NTjzgKp3P1oNEMdFp1KwFE8xOFwIrs0Vn60ajU45D
|
||||
IxNXcoeZJoYoxTG14/gHgJaJfkKABqfLyI5YCR0CgYBDWnHJccSr9ux56t8QvhVh
|
||||
GuoA4JS14+ep/NTeDoiUjCcBobTLP5LiBqr3SkfFP+2OatwI2a4r2P8XhQKyLL/E
|
||||
IOsJRr2vbq5NiMhU9GKUcNsg3Nh0MdptfG+OmqQhgzj/+EgreSQpGgqpEPgVgK3R
|
||||
FyvAA1o16+v8kuO0LbT9qwKBgDZnV7zlwqF2vplUd3loxUaKSQprkA81SxSnGaBF
|
||||
YW2bB7mrLzFJplHmc4Y4M8NXsjhnGTOnQ6KXWcQQYJW+8nQHROyqisR0OVoPwoaE
|
||||
TruoOihCWjUbbw0V4Jf3PcHnCwv0b8SneKuHrGbm+ydtk+uzj/+Tofp00YsFpGmW
|
||||
U+pRAoGAeXskUwaWH1vzzIoB03SalKvOYfAeUdd6YtbwVkMTKo5j054NYnLCv/5V
|
||||
bsEGXiXXELk6pvbybw0Qq93aUWFDtG2yPZyxFkOu2UBmvLsvzX9YV5TK2I608tOk
|
||||
yuI4udmf85QhO1vrrEKPIRIj3rZFdDzsSf14G19K3GK5lCEMugo=
|
||||
-----END RSA PRIVATE KEY-----
|
||||
21
d126ei5emgcc00/ca.crt
Executable file
21
d126ei5emgcc00/ca.crt
Executable file
@ -0,0 +1,21 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDYzCCAkugAwIBAgIJAIQKwCvFI20lMA0GCSqGSIb3DQEBDQUAMEcxGTAXBgNV
|
||||
BAMMEHRoaW5ndGFsay5qZGwuY24xCzAJBgNVBAoMAkpEMRAwDgYDVQQIDAdCZWlq
|
||||
aW5nMQswCQYDVQQGEwJDTjAgFw0yMTA0MjAwNzUyMzFaGA8yMTIxMDMyNzA3NTIz
|
||||
MVowRzEZMBcGA1UEAwwQdGhpbmd0YWxrLmpkbC5jbjELMAkGA1UECgwCSkQxEDAO
|
||||
BgNVBAgMB0JlaWppbmcxCzAJBgNVBAYTAkNOMIIBIjANBgkqhkiG9w0BAQEFAAOC
|
||||
AQ8AMIIBCgKCAQEAtoSsg0Qdzr/3vVIVNVrL8dHQNzwJvEDIkMapXfZ+KNxgEvwP
|
||||
G6Ym+XUwykQdM3MjPSVdX/vwWDkOOZKKI5Rn5XHgt3Yufc7aVjmsvLto3mBdStuz
|
||||
z3rh7PMPkFpW4Ie3zm0PCMbEsa6dT/ApPKElMZI5q4OSPNMmBLw8iDd9FPhi43bQ
|
||||
74gQHKNbPxpXaCzMgNFxm9nwHsP2muHyKWkX8ATMXa/lPEjnD8+0eAGxlo0VY0h8
|
||||
tWeipk1KFHRIdLJMhYOprKxWPqdY/pzqIyYNuOBqriO1/9FmxPXENlyGF/OUyvZt
|
||||
uu4UwiCvQ9eVlZuN3XCCvZUZFAf92qYGWSC57QIDAQABo1AwTjAdBgNVHQ4EFgQU
|
||||
hfVGDZhSn0yMTs2ZRXhXLVpTRRwwHwYDVR0jBBgwFoAUhfVGDZhSn0yMTs2ZRXhX
|
||||
LVpTRRwwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQ0FAAOCAQEAsZfBS1fn8vA5
|
||||
DU/IzYSSEFMQbp15fgGXrhcw5cgssX4EkxgoJebs1zllNCTmuUuZfZOMVx2BOq7y
|
||||
Av0pWXFv/8gGUY86ZCHdoXvqykQkLwfhBIRxuWjRycquHZaCtcM3rZtuHPvW1AfT
|
||||
cTjC3HwXn05ISi5mbz2ibPrXODkaxDEJ8m83hCyXXOdoI0P7r3zSokSDSCgMQYvA
|
||||
2N+bn+CdoRf46+xBSC2RHm7pssBtRDKTO/iOPeWuk+sKJ4piiZUzctuvxVh7OYno
|
||||
HH8NmepyB0N9NTBrrpup3pgOFf9ot5B3y2OWH4n8Q7ddQGrmj7SuW1HTW3LIl/HF
|
||||
tetXyNsX3w==
|
||||
-----END CERTIFICATE-----
|
||||
16
d126ei5emgcc00/d126ei5emgcc00.crt
Executable file
16
d126ei5emgcc00/d126ei5emgcc00.crt
Executable file
@ -0,0 +1,16 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDDTCCAfWgAwIBAgIHAycFFRcCADANBgkqhkiG9w0BAQsFADBHMRkwFwYDVQQDExB0aGluZ3Rh
|
||||
bGsuamRsLmNuMQswCQYDVQQKEwJKRDEQMA4GA1UECBMHQmVpamluZzELMAkGA1UEBhMCQ04wIBcN
|
||||
MjUwNDIzMDgyOTUyWhgPMjA3NTA0MTEwODI5NTJaMEUxCzAJBgNVBAYTAkNOMRAwDgYDVQQIEwdC
|
||||
ZWlqaW5nMQswCQYDVQQKEwJKRDEXMBUGA1UEAxMOZDEyNmVpNWVtZ2NjMDAwggEiMA0GCSqGSIb3
|
||||
DQEBAQUAA4IBDwAwggEKAoIBAQCwezx2pe348VvFHfKqdV7u078uf15UoXLfRnLMWc+9BXOVRptd
|
||||
lssWSkgFtvpRfvCfpNBjD+UY1hBl//pOhRCkzpl9GrVrzfWdgp8zjX2XcoxFAjk0JxCFFObfvZFj
|
||||
C+NR+5mMP9eHtQamaoXcHYYo8+kAzrW8r7ZZbkLjqn+UFHLb9f9cd0L2r0nzwUgErBXGw2HLjnwF
|
||||
BVNGNSbmVXh6d2qFW1jzIC/mqjrFnbZIeiwTWd4hbM6CDoCHa6Rigl7V2T2LUgXCqt1fVubPG4/a
|
||||
scRHdq9Uh4VoLcoGzgfMiW30NPxHplx2QjUTCt5VHsIQtD9fdganvzwgtNyioP1DAgMBAAEwDQYJ
|
||||
KoZIhvcNAQELBQADggEBAG4eKbCKqVQ6Sffp6omXwD7cEU1t5vz5B7LBRU94J8AtGHWDslJwcGyi
|
||||
5QfaZoArAXp5KOTRXhrLTRTEsUeyys2uAOZ0Z/LlUJ1Tsc8150QfM50IvlSiefoSC9+nrhjmEO+r
|
||||
SuIeshvVmVK3BYHipMoKzyEbSkFFQ71d0ShiwhaOQLNrM+hi71yZ/yCQvllsd7HHrd7iocV+uJYJ
|
||||
IAeMTqew/+jlHk+lZWB1egkU7q4uYBEDrtbu5hlPNDg6fIeBuuw1she2yjBkOYj2H+Vucx1UNrdf
|
||||
UxjNBRqg6jpWNfOrMGkTBHAIbFOH8hEZQdhvo9za++IzQfSNkrM8moiJkZE=
|
||||
-----END CERTIFICATE-----
|
||||
27
d126ei5emgcc00/d126ei5emgcc00.key
Executable file
27
d126ei5emgcc00/d126ei5emgcc00.key
Executable file
@ -0,0 +1,27 @@
|
||||
-----BEGIN RSA PRIVATE KEY-----
|
||||
MIIEpAIBAAKCAQEAsHs8dqXt+PFbxR3yqnVe7tO/Ln9eVKFy30ZyzFnPvQVzlUab
|
||||
XZbLFkpIBbb6UX7wn6TQYw/lGNYQZf/6ToUQpM6ZfRq1a831nYKfM419l3KMRQI5
|
||||
NCcQhRTm372RYwvjUfuZjD/Xh7UGpmqF3B2GKPPpAM61vK+2WW5C46p/lBRy2/X/
|
||||
XHdC9q9J88FIBKwVxsNhy458BQVTRjUm5lV4endqhVtY8yAv5qo6xZ22SHosE1ne
|
||||
IWzOgg6Ah2ukYoJe1dk9i1IFwqrdX1bmzxuP2rHER3avVIeFaC3KBs4HzIlt9DT8
|
||||
R6ZcdkI1EwreVR7CELQ/X3YGp788ILTcoqD9QwIDAQABAoIBABHvNCHKkvhtbqoF
|
||||
dRelfdQ/aHpNL0Tic04FVr01k0reNvTAjCFipZjKS69o/N8zSziuAw9OGjX/6wKy
|
||||
lLlOBHb7F9YC1NTzxTYQhCU1B8JQPbj1lOKb5a3gheXO2et61csLCnuaMUj1OIvI
|
||||
33mS9oNK5i7S0t0t7hYAgoOoW/asQa5N0mTqH8uVGeq7eiHluk01q7VFnE0G6aYX
|
||||
E8Zr68B1ihgRT8Iv2eW39apG2uqtBX/G048VTRWI1EOvVS/VM0vAbuN9mcvKOLtf
|
||||
cMCCMUptbtSCFe8nvR8YZon1yrj53nOt2WVjTPn2G626VoBVn//UR7QvJMVHYD9p
|
||||
3/zZnaECgYEA9L14pWghJjzBBwlsjqD074laaUVmc9MfZSfoqrniJdgfi2oGJ72D
|
||||
zd+jq0XUAKOELfxG2KNCdmWg7QAbyA+5StjCAi6e9DogXV5LdS8XRPcQ/pEEyvZQ
|
||||
JhfquPW+SJaLLAtKcKTbbtNJUVvg5B5nK7PUDHiJkTYsJUMbo4/0hO0CgYEAuJnR
|
||||
vEBsr82TpI4tyo6eO85moRQslYwHMR3PQf9CMRnp/kHLSCNUROhbdNBVu7xVd4Zh
|
||||
J2YlkkZUSqEod1bYVUwhbpCmQemPF7KfqF0FTLXbw/Jfp73JbYDxg60b3gJPJ2eZ
|
||||
A7812Zmg4RukM+wkR0cIMVi+6TQ4n5lnbgNj9O8CgYEAnxHXLIr1oMi0HUK+0CVF
|
||||
jbsUjH+TC40ZRsIds3mFx1slhZOv1HyVAmZtFpEYLiIZc1oZIg1a0WFUqzX62Jl/
|
||||
sWoZDxoGLm7pQkZbfRrSYPzEivDu0Iwvo9K/uN/ggYV3h3T/OR+tj+a8LKkvDpXE
|
||||
MN98324o27z+DGoFuNWD9DECgYAhYwiQ4KIHpcm3MFPN1798l5buOSTbI0lFs9uB
|
||||
VzZUhRhR+PpYILOkBtZLqUZoPubCSFaX9pyC+R9TpBQaiWV0/+DoC1dWgnRz18WS
|
||||
gMhtmFKX/OUaBHRCzthfdVad75L7UHxXNiT6JxP2wrYPAf2Juqobqq5UpTI8g1U2
|
||||
i3xvlwKBgQDAb7zFOAc8eMOCVvNTJwaft73gF3y54AN5YOjc/L8W0jNE6bJBv1cY
|
||||
SiV6RTj+CIAeXiwGfaM6dZH0MtRZMm3wAX28Ze2Uc2aiFS2kd2FRRjyMMPTA+dar
|
||||
GDRx/hBOwX+s8ID6/wXTgCjB6TB4eXnlSdkM5zab96DKa4Myu2052w==
|
||||
-----END RSA PRIVATE KEY-----
|
||||
BIN
jd_ota/F8_20250517_V1.0.31_1838_W02CL0BSL_0x21.bin
Executable file
BIN
jd_ota/F8_20250517_V1.0.31_1838_W02CL0BSL_0x21.bin
Executable file
Binary file not shown.
BIN
jd_ota/jd_server
Executable file
BIN
jd_ota/jd_server
Executable file
Binary file not shown.
16
jd_ota/start.sh
Executable file
16
jd_ota/start.sh
Executable file
@ -0,0 +1,16 @@
|
||||
#!/bin/sh
|
||||
|
||||
cd /root
|
||||
filename=/root/ota/jd_server
|
||||
filesize=`ls -l $filename | awk '{ print $5 }'`
|
||||
maxsize=$((440000))
|
||||
if [ $filesize -gt $maxsize ]
|
||||
then
|
||||
echo "$filesize > $maxsize copy"
|
||||
cp $filename .
|
||||
chmod 777 jd_server
|
||||
./jd_server
|
||||
else
|
||||
echo "$filesize < $maxsize not copy"
|
||||
./jd_server
|
||||
fi
|
||||
BIN
libcrypto.so.3
Executable file
BIN
libcrypto.so.3
Executable file
Binary file not shown.
BIN
libssl.so.3
Executable file
BIN
libssl.so.3
Executable file
Binary file not shown.
3
main.h
3
main.h
@ -83,6 +83,7 @@ typedef struct
|
||||
{
|
||||
uint32_t name;
|
||||
uint16_t battery;
|
||||
uint16_t reserve;
|
||||
}__attribute__((packed)) jt_only_tag_t;
|
||||
|
||||
void hgz_init_db_multy(mqtt_parm_t *mqtt_parm);
|
||||
@ -163,5 +164,5 @@ void getDevRegisterStatus(char *devsn);
|
||||
void hgz_get_returninfo_by_cellname(char *cellname,int *userid,char *batchid,char *username,char *devsn);
|
||||
void getDevInfo(char *parm);
|
||||
void *actHandleQrcode(void *parm);
|
||||
void updateStationInfo(char *msg_id);
|
||||
void station_status_report(void);
|
||||
#endif
|
||||
|
||||
@ -57,13 +57,11 @@ trace_level_name_t trace_level_name_list[] = {
|
||||
{MQTTASYNC_TRACE_FATAL, "MQTTASYNC_TRACE_FATAL"},
|
||||
};
|
||||
|
||||
void mqtt_server_light_status_report(char *sn,char *msg_id,char *scene,json_object *lights){
|
||||
void mqtt_server_events_report(char *sn,char *msg_id,json_object *events){
|
||||
char topic[128] = "";
|
||||
const char *payload = NULL;
|
||||
char time_buffer[128] = "";
|
||||
char time_buffer[16] = "";
|
||||
json_object *root = NULL;
|
||||
json_object *data = NULL;
|
||||
json_object *msg = NULL;
|
||||
struct timeval tv;
|
||||
gettimeofday(&tv, NULL);
|
||||
snprintf(time_buffer,sizeof(time_buffer),"%ld",tv.tv_sec*1000+tv.tv_usec);
|
||||
@ -73,31 +71,13 @@ void mqtt_server_light_status_report(char *sn,char *msg_id,char *scene,json_obje
|
||||
LOG_I("json_object_new_object error\n");
|
||||
goto json_error;
|
||||
}
|
||||
msg = json_object_new_object();
|
||||
if(msg == NULL){
|
||||
LOG_I("msg: NULL\n");
|
||||
goto json_error;
|
||||
}
|
||||
|
||||
data = json_object_new_object();
|
||||
if(msg == NULL){
|
||||
LOG_I("msg: NULL\n");
|
||||
goto json_error;
|
||||
}
|
||||
|
||||
json_object_object_add(root, "deviceId", json_object_new_string(sn));
|
||||
json_object_object_add(root, "messageId", json_object_new_string(msg_id));
|
||||
json_object_object_add(root, "productId", json_object_new_string(mqtt_conf->productcode));
|
||||
json_object_object_add(root, "timestamp", json_object_new_string(time_buffer));
|
||||
json_object_object_add(root, "events", events);
|
||||
|
||||
json_object_object_add(data, "scene", json_object_new_string(scene));
|
||||
json_object_object_add(data, "lights", lights);
|
||||
|
||||
json_object_object_add(msg, "data", data);
|
||||
json_object_object_add(msg, "msgType", json_object_new_string("9007"));
|
||||
json_object_object_add(root, "msg", msg);
|
||||
|
||||
snprintf(topic, sizeof(topic), "iot/%s/message/report",mqtt_conf->productcode);
|
||||
snprintf(topic, sizeof(topic), "$iot/v1/device/%s/events/post",sn);
|
||||
LOG_I("publish topic:[%s]\n", topic);
|
||||
payload = json_object_to_json_string(root);
|
||||
LOG_I("payload[%d][%s]\n", strlen(payload), payload);
|
||||
@ -106,64 +86,15 @@ json_error:
|
||||
json_object_put(root);
|
||||
}
|
||||
|
||||
void mqtt_server_station_status_report(char *msg_id,char *product_id,char *sn,char *local_ip, char *base_version,
|
||||
char *status, char *duration){
|
||||
char topic[128] = "";
|
||||
const char *payload = NULL;
|
||||
char time_buffer[128] = "";
|
||||
json_object *root = NULL;
|
||||
json_object *msg = NULL;
|
||||
json_object *data = NULL;
|
||||
|
||||
struct timeval tv;
|
||||
gettimeofday(&tv, NULL);
|
||||
snprintf(time_buffer,sizeof(time_buffer),"%ld",tv.tv_sec*1000+tv.tv_usec);
|
||||
|
||||
//LOG_I("%s\n", __func__);
|
||||
root = json_object_new_object();
|
||||
if(root == NULL){
|
||||
LOG_I("json_object_new_object error\n");
|
||||
goto json_error;
|
||||
}
|
||||
|
||||
msg = json_object_new_object();
|
||||
if(msg == NULL){
|
||||
LOG_I("msg: NULL\n");
|
||||
goto json_error;
|
||||
}
|
||||
|
||||
data = json_object_new_object();
|
||||
if(msg == NULL){
|
||||
LOG_I("msg: NULL\n");
|
||||
goto json_error;
|
||||
}
|
||||
json_object_object_add(root, "deviceId", json_object_new_string(sn));
|
||||
json_object_object_add(root, "messageId", json_object_new_string(msg_id));
|
||||
json_object_object_add(root, "productId", json_object_new_string(mqtt_conf->productcode));
|
||||
json_object_object_add(root, "timestamp", json_object_new_string(time_buffer));
|
||||
|
||||
json_object_object_add(data, "ip", json_object_new_string(local_ip));
|
||||
json_object_object_add(data, "baseVersion", json_object_new_string(base_version));
|
||||
json_object_object_add(data, "status", json_object_new_string(status));
|
||||
json_object_object_add(data, "duration", json_object_new_string(duration));
|
||||
|
||||
json_object_object_add(msg, "data", data);
|
||||
json_object_object_add(msg, "msgType", json_object_new_string("9008"));
|
||||
json_object_object_add(root, "msg", msg);
|
||||
snprintf(topic, sizeof(topic), "iot/%s/message/report",mqtt_conf->productcode);
|
||||
LOG_I("publish topic:[%s]\n", topic);
|
||||
payload = json_object_to_json_string(root);
|
||||
LOG_I("payload[%d][%s]\n", strlen(payload), payload);
|
||||
mqtt_utils_publish(mqtt_conf, topic, 2, payload, strlen(payload));
|
||||
json_error:
|
||||
json_object_put(root);
|
||||
}
|
||||
|
||||
void mqtt_service_reply(char *sn,char *msg_id,char *msg,int success,char *product_id)
|
||||
void mqtt_server_reply(char *sn,char *msg_id,json_object *functions)
|
||||
{
|
||||
char topic[128] = "";
|
||||
const char *payload = NULL;
|
||||
json_object *root = NULL;
|
||||
struct timeval tv;
|
||||
char time_buffer[16] = "";
|
||||
gettimeofday(&tv, NULL);
|
||||
snprintf(time_buffer,sizeof(time_buffer),"%ld",tv.tv_sec*1000+tv.tv_usec);
|
||||
|
||||
//LOG_I("%s\n", __func__);
|
||||
root = json_object_new_object();
|
||||
@ -174,11 +105,12 @@ void mqtt_service_reply(char *sn,char *msg_id,char *msg,int success,char *produc
|
||||
|
||||
json_object_object_add(root, "deviceId", json_object_new_string(sn));
|
||||
json_object_object_add(root, "messageId", json_object_new_string(msg_id));
|
||||
json_object_object_add(root, "msg", json_object_new_string(msg));
|
||||
json_object_object_add(root, "success", json_object_new_boolean(success));
|
||||
json_object_object_add(root, "productId", json_object_new_string(mqtt_conf->productcode));
|
||||
json_object_object_add(root, "timestamp", json_object_new_string(time_buffer));
|
||||
json_object_object_add(root, "code", json_object_new_int(200));
|
||||
json_object_object_add(root, "message", json_object_new_string("success"));
|
||||
json_object_object_add(root, "payload", functions);
|
||||
|
||||
snprintf(topic, sizeof(topic), "iot/%s/adviceDevice/reply",mqtt_conf->productcode);
|
||||
snprintf(topic, sizeof(topic), "$iot/v1/device/%s/functions/call/response",sn);
|
||||
LOG_I("publish topic:[%s]\n", topic);
|
||||
payload = json_object_to_json_string(root);
|
||||
LOG_I("payload[%d][%s]\n", strlen(payload), payload);
|
||||
@ -203,7 +135,7 @@ int printVersionInfo(MQTTAsync_nameValue * info){
|
||||
int rc = 0;
|
||||
//LOG_I("MQTT library information:\n");
|
||||
while (info->name){
|
||||
//LOG_I("%s: %s\n", info->name, info->value);
|
||||
LOG_I("%s: %s\n", info->name, info->value);
|
||||
info++;
|
||||
rc = 1; /* at least one value printed */
|
||||
}
|
||||
@ -256,9 +188,7 @@ void mqtt_utils_connected(void *context, char *cause){
|
||||
connect_failure_times=0;
|
||||
mqtt_utils_subscribe(mqtt_conf,nativeInvokTopicName,2);
|
||||
system("echo 1 > /sys/class/gpio/gpio113/value");//yellow ok
|
||||
char myid[32]={0};
|
||||
myrand(myid,19);
|
||||
updateStationInfo(myid);
|
||||
station_status_report();
|
||||
}
|
||||
|
||||
void mqtt_utils_disconnected(void *context, MQTTProperties* props, enum MQTTReasonCodes rc){
|
||||
@ -344,7 +274,7 @@ int mqtt_utils_init(mqtt_utils_t *mqtt_config)
|
||||
MQTTAsync_setTraceLevel(mqtt_conf->tracelevel);
|
||||
|
||||
//snprintf(url, sizeof(url), "%s://%s:%d", mqtt_conf->protocol, mqtt_conf->host, mqtt_conf->port);
|
||||
snprintf(url, sizeof(url), "tcp://%s:%d", mqtt_conf->host, mqtt_conf->port);
|
||||
snprintf(url, sizeof(url), "ssl://%s:%d", mqtt_conf->host, mqtt_conf->port);
|
||||
LOG_I("mqtt url=%s\n", url);
|
||||
create_opts.sendWhileDisconnected = 0;
|
||||
rc = MQTTAsync_createWithOptions(&mqtt_conf->client,
|
||||
@ -406,14 +336,41 @@ int mqtt_utils_init(mqtt_utils_t *mqtt_config)
|
||||
conn_opts.will = &will_opts;
|
||||
}
|
||||
|
||||
//ssl_opts.keyStore = clientCrt; //客户端证书路径
|
||||
//ssl_opts.trustStore = CAFile; //ca证书路径
|
||||
//ssl_opts.privateKey = clientKey; //客户端密钥路径
|
||||
//ssl_opts.privateKeyPassword = mqtt_tls_port->clientKeyPasswd; //密钥,如果有客户端密钥路径该项可为空
|
||||
//ssl_opts.sslVersion = MQTT_SSL_VERSION_DEFAULT;
|
||||
//conn_opts.ssl = &ssl_opts;
|
||||
|
||||
|
||||
// 证书和密钥路径(根据实际位置修改)
|
||||
//const char* clientCrt = "/path/to/client.crt"; // 客户端证书
|
||||
//const char* CAFile = "/path/to/ca.crt"; // CA证书
|
||||
//const char* clientKey = "/path/to/client.key"; // 客户端私钥
|
||||
|
||||
// 配置SSL选项
|
||||
//MQTTClient_SSLOptions ssl_opts = MQTTClient_SSLOptions_initializer;
|
||||
//ssl_opts.keyStore = clientCrt;
|
||||
//ssl_opts.trustStore = CAFile;
|
||||
//ssl_opts.privateKey = clientKey;
|
||||
//ssl_opts.privateKeyPassword = "key_password"; // 若私钥未加密则设为NULL
|
||||
//ssl_opts.sslVersion = MQTT_SSL_VERSION_TLS_1_2; // 显式指定TLS 1.2
|
||||
|
||||
// 关联到连接选项
|
||||
//MQTTClient_connectOptions conn_opts = MQTTClient_connectOptions_initializer;
|
||||
//conn_opts.ssl = &ssl_opts;
|
||||
|
||||
|
||||
if (mqtt_conf->insecure){
|
||||
ssl_opts.verify = 0;
|
||||
ssl_opts.CApath = mqtt_conf->capath;
|
||||
LOG_I("use key file\n");
|
||||
ssl_opts.enableServerCertAuth = 1;
|
||||
//ssl_opts.CApath = mqtt_conf->capath;
|
||||
ssl_opts.keyStore = mqtt_conf->cert;
|
||||
ssl_opts.trustStore = mqtt_conf->cafile;
|
||||
ssl_opts.privateKey = mqtt_conf->key;
|
||||
ssl_opts.privateKeyPassword = mqtt_conf->keypass;
|
||||
ssl_opts.enabledCipherSuites = mqtt_conf->ciphers;
|
||||
//ssl_opts.privateKeyPassword = mqtt_conf->keypass;
|
||||
//ssl_opts.enabledCipherSuites = mqtt_conf->ciphers;
|
||||
ssl_opts.ssl_error_cb = mqtt_utils_on_ssl_error;
|
||||
ssl_opts.ssl_error_context = NULL;
|
||||
conn_opts.ssl = &ssl_opts;
|
||||
@ -434,8 +391,7 @@ int mqtt_utils_init(mqtt_utils_t *mqtt_config)
|
||||
mqtt_conf->sub_opts.onFailure = mqtt_utils_on_subscribe_failure;
|
||||
mqtt_conf->sub_opts.context = NULL;
|
||||
|
||||
//sprintf(nativeInvokTopicName,"iot/10025/%s/message/adviceDevice",mqtt_conf->clientid);
|
||||
sprintf(nativeInvokTopicName,"iot/%s/%s/message/adviceDevice",mqtt_conf->productcode,mqtt_conf->username);
|
||||
sprintf(nativeInvokTopicName,"$iot/v1/device/%s/functions/call",mqtt_conf->username);
|
||||
LOG_I("nativeInvokTopicName:%s\n",nativeInvokTopicName);
|
||||
|
||||
ret = 0;
|
||||
|
||||
@ -78,84 +78,29 @@ typedef struct{
|
||||
typedef struct
|
||||
{
|
||||
char msg_deviceId[32];
|
||||
char msg_messageId[32];
|
||||
char msg_type[32];
|
||||
char msg_zipPath[512];
|
||||
char msg_version[32];
|
||||
char msg_scene[32];
|
||||
char msg_timeout[32];
|
||||
char msg_label1[32];
|
||||
char msg_label2[32];
|
||||
char msg_label3[32];
|
||||
char msg_label1Rule[32];
|
||||
char msg_label2Rule[32];
|
||||
char msg_label3Rule[32];
|
||||
char msg_color[32];
|
||||
char msg_sound[32];
|
||||
char msg_flash[32];
|
||||
char msg_flashInterval[32];
|
||||
char msg_lightDuration[32];
|
||||
char msg_sn[32];
|
||||
char msg_lights[128];
|
||||
int msg_needWifi;
|
||||
int msg_installType;
|
||||
int msg_immediately;
|
||||
int msg_installTime;
|
||||
int msg_timestamp;
|
||||
char msg_messageId[64];
|
||||
char msg_key[32];
|
||||
char msg_devName[32];
|
||||
char msg_taskId[32];
|
||||
char msg_groupNo[4];
|
||||
char msg_time[32];
|
||||
char msg_ext1[32];
|
||||
char msg_ext2[32];
|
||||
char msg_sn[7];
|
||||
int msg_opNumber;
|
||||
int msg_action;
|
||||
int msg_color;
|
||||
int msg_duration;
|
||||
}mqtt_parm_t;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
char cabinetName[2];
|
||||
char cellName[32];
|
||||
char cellState[32];
|
||||
char cellVoltageType[32];
|
||||
char cellConnectorType[32];
|
||||
char cellRepairType[64];
|
||||
char devType[32];
|
||||
char devCheckType[32];
|
||||
char devSn[64];
|
||||
char devPvd[32];
|
||||
char devPro[64];
|
||||
char devMfg[64];
|
||||
char devState[32];
|
||||
char devRepairType[512];
|
||||
char batchId[64];
|
||||
char opType[64];
|
||||
char opTime[64];
|
||||
int devPwr;
|
||||
int userId;
|
||||
}db_parm_t;
|
||||
|
||||
typedef struct{
|
||||
char result[1024];
|
||||
char opTime[32];
|
||||
char opType[32];
|
||||
char status[32];
|
||||
int userId;
|
||||
}test_parm_t;
|
||||
|
||||
extern void mqtt_net_failure(int *failure_times);
|
||||
extern int mqtt_utils_init(mqtt_utils_t *mqtt_utils);
|
||||
extern int get_trace_level_by_name(char *name);
|
||||
extern int mqtt_utils_subscribe(mqtt_utils_t *mqtt_utils, char *topic, int qos);
|
||||
extern int mqtt_utils_publish(mqtt_utils_t *mqtt_utils, char *topic, int qos, const char *data, int datalen);
|
||||
extern int mqtt_utils_uninit(mqtt_utils_t *mqtt_utils);
|
||||
void mqtt_service_invoke_reply(char *msg_id, char *code, char *status, char *msg_type, char *json_name, struct json_object *json_val);
|
||||
void mqtt_service_cell_report(char *cellName,db_parm_t *db_parm);
|
||||
void mqtt_service_returndev_event_report(char *cellName,db_parm_t *db_parm);
|
||||
void mqtt_service_losedev_event_report(char *cellName,db_parm_t *db_parm);
|
||||
void mqtt_service_borrowdev_event_report(char *cellName,db_parm_t *db_parm);
|
||||
void mqtt_service_managedev_event_report(test_parm_t *test_parm,char *eventType);
|
||||
void mqtt_service_uploadlog_report(char *filename,char *fileurl,char *msg_id);
|
||||
void mqtt_service_downloadapp_report(char *msg_id,int task_id,char *code,char *message);
|
||||
void mqtt_service_softversion_report(char *fwversion);
|
||||
void mqtt_handle_error_event_report(char *cellname,char *batchid,char *optime,int userid,char *opType);
|
||||
void mqtt_server_station_status_report(char *msg_id,char *product_id,char *sn,char *local_ip, char *base_version,
|
||||
char *status, char *duration);
|
||||
void mqtt_service_reply(char *sn,char *msg_id,char *msg,int success,char *product_id);
|
||||
void mqtt_server_light_status_report(char *sn,char *msg_id,char *scene,json_object *lights);
|
||||
void mqtt_server_reply(char *sn,char *msg_id,json_object *functions);
|
||||
void mqtt_server_events_report(char *sn,char *msg_id,json_object *events);
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -1,7 +1,8 @@
|
||||
. compile.sh
|
||||
#rm -fr output
|
||||
#mkdir output
|
||||
rm -fr output
|
||||
mkdir output
|
||||
cd output
|
||||
cmake ..
|
||||
cmake .. -DPAHO_WITH_SSL=TRUE
|
||||
#cmake ..
|
||||
make
|
||||
cd ..
|
||||
|
||||
@ -40,7 +40,7 @@ pthread_mutexattr_t g_MutexAttr_m;
|
||||
* 其他说明: 无
|
||||
* 修改日期 版本号 修改人 修改内容
|
||||
****************************************************************/
|
||||
void PutDataIntoQueue(uint32_t tagname,uint16_t battery){
|
||||
void PutDataIntoQueue(uint32_t tagname,uint16_t battery,uint16_t reserve){
|
||||
T_StructInfo tQueueData = {0};
|
||||
|
||||
// 对结构体的变量进行赋值
|
||||
@ -48,6 +48,7 @@ void PutDataIntoQueue(uint32_t tagname,uint16_t battery){
|
||||
//memcpy(tQueueData.cmd,cmd,4);
|
||||
tQueueData.tagname=tagname;
|
||||
tQueueData.battery=battery;
|
||||
tQueueData.reserve=reserve;
|
||||
// 将数据加入队列(一直等到加入成功之后才退出)
|
||||
while (EnQueue(tQueueData) == -1){
|
||||
Sleep(1000); // 加入失败,1秒后重试
|
||||
@ -79,7 +80,7 @@ void PutDataIntoMQueue(char *payload){
|
||||
* 其他说明: 无
|
||||
* 修改日期 版本号 修改人 修改内容
|
||||
****************************************************************/
|
||||
int GetDataFromQueue(uint32_t *tagname,uint16_t *battery){
|
||||
int GetDataFromQueue(uint32_t *tagname,uint16_t *battery,uint16_t *reserve){
|
||||
T_StructInfo tQueueData = {0};
|
||||
if (DeQueue(&tQueueData) == -1){
|
||||
return -1;
|
||||
@ -88,6 +89,7 @@ int GetDataFromQueue(uint32_t *tagname,uint16_t *battery){
|
||||
//memcpy(cmd,tQueueData.cmd,4);
|
||||
*tagname=tQueueData.tagname;
|
||||
*battery=tQueueData.battery;
|
||||
*reserve=tQueueData.reserve;
|
||||
// 打印取出的数据
|
||||
//printf("GetDataFromQueue: cellNum=%s, cmd=%s\n", tQueueData.cellNum, tQueueData.cmd);
|
||||
return 0;
|
||||
|
||||
@ -10,6 +10,7 @@ typedef struct
|
||||
{
|
||||
uint32_t tagname;
|
||||
uint16_t battery;
|
||||
uint16_t reserve;
|
||||
} T_StructInfo;
|
||||
|
||||
typedef struct
|
||||
@ -17,8 +18,8 @@ typedef struct
|
||||
char payload[1024];
|
||||
} M_StructInfo;
|
||||
|
||||
void PutDataIntoQueue(uint32_t tagname,uint16_t battery);
|
||||
int GetDataFromQueue(uint32_t *tagname,uint16_t *battery);
|
||||
void PutDataIntoQueue(uint32_t tagname,uint16_t battery,uint16_t reserve);
|
||||
int GetDataFromQueue(uint32_t *tagname,uint16_t *battery,uint16_t *reserve);
|
||||
INT32 EnQueue(T_StructInfo tQueueData);
|
||||
INT32 DeQueue(T_StructInfo *tDqueueData);
|
||||
|
||||
|
||||
5
ssh.sh
5
ssh.sh
@ -1,3 +1,6 @@
|
||||
sshpass -p "&Over#B0Ost!" ssh root@10.10.10.101
|
||||
sshpass -p "&Over#B0Ost!" ssh root@10.10.12.2
|
||||
#sshpass -p "&Over#B0Ost!" ssh root@10.10.12.230
|
||||
#sshpass -p "&Over#B0Ost!" ssh root@10.10.10.150
|
||||
#sshpass -p "&Over#B0Ost!" ssh root@10.10.10.101
|
||||
#sshpass -p "PddloTSecPwdOnly!" ssh root@10.10.10.132
|
||||
#sshpass -p "PddloTSecPwdOnly!" ssh root@192.168.0.148
|
||||
|
||||
3921
uart_can/uart_can.c
3921
uart_can/uart_can.c
File diff suppressed because it is too large
Load Diff
1587
uart_can/uart_can.h
1587
uart_can/uart_can.h
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user