From ab5ef4f2500fcbe21156f1ea836e0f8fae90e809 Mon Sep 17 00:00:00 2001 From: tianjialong Date: Sat, 4 Mar 2023 16:54:43 +0800 Subject: [PATCH] =?UTF-8?q?esync=E8=A7=A6=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- usersrc/udpclient.c | 17 ++++++++++++++++- usersrc/udpclient.h | 1 + usersrc/usermain.c | 1 + 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/usersrc/udpclient.c b/usersrc/udpclient.c index a131022..264753e 100644 --- a/usersrc/udpclient.c +++ b/usersrc/udpclient.c @@ -18,6 +18,7 @@ } static bool udp_client_active_flag; +static bool genlock_and_esync_active_flag; /* 定义端口号 */ #define UDP_REMOTE_PORT 8881 /* 远端端口 */ @@ -186,7 +187,9 @@ void udp_client_parse(int recv_datalen) { if (recv_datalen >= adwin_config_protocol_size) { - // adwin_config_protocol_t *rxcmd = (adwin_config_protocol_t *)s_receBuf; + adwin_config_protocol_t *rxcmd = (adwin_config_protocol_t *)s_receBuf; + active_report_data_structer.time_stamp_s = rxcmd->time_stamp_s; + genlock_and_esync_active_flag = true; } else if (recv_datalen <= basic_report_data_size) { @@ -258,3 +261,15 @@ void udp_cllient_active(void) } } } + +void udp_cllient_genlock_and_esync_active(void) +{ + if (genlock_and_esync_active_flag) + { + active_report_data_structer_update(); + printf("encoder1:%d,encoder2:%d\r\n", active_report_data_structer.encoder_1_count, active_report_data_structer.encoder_2_count); + + active_report_data_structer.time_stamp_s = 0; + genlock_and_esync_active_flag = false; + } +} diff --git a/usersrc/udpclient.h b/usersrc/udpclient.h index 1bd7bdf..9218ec8 100644 --- a/usersrc/udpclient.h +++ b/usersrc/udpclient.h @@ -8,3 +8,4 @@ void udp_client_send_string(char *pData); void udp_client_recv(void); void udp_client_parse(int recv_datalen); void udp_cllient_active(void); +void udp_cllient_genlock_and_esync_active(void); diff --git a/usersrc/usermain.c b/usersrc/usermain.c index 3138c7e..780a2a8 100644 --- a/usersrc/usermain.c +++ b/usersrc/usermain.c @@ -94,6 +94,7 @@ void user_main() while (1) { + udp_cllient_genlock_and_esync_active(); udp_cllient_active(); zkey_schedule(); udp_client_recv();