From 4619bf589dca444b867173ec409e0346836db587 Mon Sep 17 00:00:00 2001 From: yincheng.zhong <634916154@qq.com> Date: 星期三, 09 八月 2023 17:01:58 +0800 Subject: [PATCH] V2.71 1.增加随机时间片模式,标签初始不注册,直接进入搜索模式查找附近最近基站,然后随机挑选时间片,进行定位。 此模式标签和基站定位不需要基站下发时间片。 2.标签输出55AA0C报文,可以通过串口进入电脑上位机,进行定位。这种模式下定位延迟基本可忽略。 --- Src/stm32l0xx_it.c | 27 +++++++++++++++++++++++---- 1 files changed, 23 insertions(+), 4 deletions(-) diff --git a/Src/stm32l0xx_it.c b/Src/stm32l0xx_it.c index abed576..45a2638 100644 --- a/Src/stm32l0xx_it.c +++ b/Src/stm32l0xx_it.c @@ -43,6 +43,8 @@ /* Private variables ---------------------------------------------------------*/ /* USER CODE BEGIN PV */ float nomove_count=0; +float button_delay = 1; +u16 button_start; /* USER CODE END PV */ /* Private function prototypes -----------------------------------------------*/ @@ -93,6 +95,7 @@ while (1) { /* USER CODE BEGIN W1_HardFault_IRQn 0 */ + printf("HardFault_Handler.\r\n"); SCB->AIRCR = 0X05FA0000|(unsigned int)0x04; /* USER CODE END W1_HardFault_IRQn 0 */ } @@ -151,15 +154,31 @@ void EXTI0_1_IRQHandler(void) { /* USER CODE BEGIN EXTI0_1_IRQn 0 */ + static u16 lastcount=0; + u16 count_diff; + SystemClock_Config(); if(GET_IMUINT) { nomove_count = 0; } - if(!GET_USERKEY) + if(!GET_USERKEY) { userkey_state = 1; - + if(button_delay>=1) + { + button_start = GetLPTime(); + button_delay = 0; + }else{ + u16 button_time = GetLPTime()-button_start; + if(button_time<0) + button_time+=1000; + if(button_time>50&&button_time<300) + { + DoubleClickProcess(); + } + + } if(g_com_map[MOTOR_ENABLE]) { MOTOR_ON; @@ -167,8 +186,8 @@ MOTOR_OFF; } nomove_count = 0; - waitusart_timer = tag_frequency*USART_KEEPWAKE_TIME; - UsartInit(); +// waitusart_timer = tag_frequency*USART_KEEPWAKE_TIME; + // UsartInit(); // MOTOR_ON; } -- Gitblit v1.9.3