---- test in progress

This commit is contained in:
Yunhorn 2024-07-05 19:50:19 +08:00
parent 76eec8577a
commit 96aa9d199a
11 changed files with 73 additions and 35 deletions

View File

@ -82,6 +82,7 @@ void MX_TOF_Init(void);
#define LED1_GPIO_Port GPIOB
#define LED_ON HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_SET )
#define LED_OFF HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_RESET )
#define LED_TOGGLE HAL_GPIO_TogglePin(LED1_GPIO_Port, LED1_Pin)
#define BSP_BUTTON_EXTI_IRQn EXTI0_IRQn
#define LED2_Pin LED1_Pin

View File

@ -145,8 +145,8 @@ uint16_t SYS_GetBatteryLevel(void)
uint16_t batteryLevelmV = 0;
uint32_t measuredLevel = 0;
measuredLevel = ADC_ReadChannels(ADC_CHANNEL_VREFINT);
//measuredLevel = ADC_ReadChannels(ADC_CHANNEL_VREFINT);
measuredLevel = ADC_ReadChannels(ADC_CHANNEL_5); //ADC5, PA15 for VBAT measure 2024-07-04
if (measuredLevel == 0)
{

View File

@ -79,7 +79,7 @@ void MX_DMA_Init(void)
#endif
#if 0
/* DMA1_Channel7_IRQn interrupt configuration */
HAL_NVIC_SetPriority(DMA1_Channel7_IRQn, 0, 0);
HAL_NVIC_SetPriority(DMA1_Channel7_IRQn, 2, 0);
HAL_NVIC_EnableIRQ(DMA1_Channel7_IRQn);
// **** USART2
#endif

View File

@ -54,7 +54,7 @@ void MX_GPIO_Init(void)
GPIO_InitStruct.Pin = GPIO_PIN_All;
GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
GPIO_InitStruct.Pull = GPIO_NOPULL;
//HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
@ -62,22 +62,32 @@ void MX_GPIO_Init(void)
__HAL_RCC_GPIOB_CLK_DISABLE();
__HAL_RCC_GPIOC_CLK_DISABLE();
#endif
#if 1
__HAL_RCC_GPIOA_CLK_ENABLE();
__HAL_RCC_GPIOB_CLK_ENABLE();
__HAL_RCC_GPIOC_CLK_ENABLE();
//0b0000 0000 0000 0000
//0b0001 1010 0000 0000 INCLUDE PA9 PA11 PA12 --> 0x1A00
//0b1110 0101 1111 1111 exclude PA9 PA11 PA12 --> 0xE5FF
GPIO_InitStruct.Pin = 0xE5FF; // or ~0x1A00;
//GPIO_InitStruct.Pin = 0xE5FF; // or ~0x1A00;
//0b1001 1010 0000 0000 INCLUDE PA9 PA11 PA12 PA15--> 0x9A00
//0b0110 0101 1111 1111 exclude PA9 PA11 PA12 PA15--> 0x65FF
GPIO_InitStruct.Pin = 0x65FF; // or ~0x1A00;
GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
GPIO_InitStruct.Pin = GPIO_PIN_15; // PA15 ADC-5, BAT LEVEL INPUT
GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
//0b0000 0001 0011 1000 INCLUDE PB3 PB4 PB5 PB8 --> 0x0138
//0b1111 1110 1100 0111 exclude PB3 PB4 PB5 PB8 --> 0xFEC7
GPIO_InitStruct.Pin = 0xFEC7; // or ~0x0138;
//0b0000 0001 0011 1100 INCLUDE PB2 PB3 PB4 PB5 PB8 --> 0x013C
//0b1111 1110 1100 0011 exclude PB2 PB3 PB4 PB5 PB8 --> 0xFEC3
GPIO_InitStruct.Pin = 0xFEC3; // or ~0x013C;
GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
@ -92,7 +102,7 @@ void MX_GPIO_Init(void)
//__HAL_RCC_GPIOA_CLK_DISABLE();
//__HAL_RCC_GPIOB_CLK_DISABLE();
__HAL_RCC_GPIOC_CLK_DISABLE();
#endif
/*Configure GPIO pin Output Level */
#if defined(STM32WL55xx)
HAL_GPIO_WritePin(GPIOB, LED1_Pin|LED2_Pin|PROB2_Pin|PROB1_Pin
@ -103,13 +113,14 @@ void MX_GPIO_Init(void)
__HAL_RCC_GPIOB_CLK_ENABLE();
__HAL_RCC_GPIOA_CLK_ENABLE();
//HAL_GPIO_WritePin(MEMS_POWER_GPIO_Port, MEMS_POWER_Pin, GPIO_PIN_RESET);
#if 0
#if defined(TOF_1)
HAL_GPIO_WritePin(TOF_C_XSHUT_GPIO_Port, TOF_C_XSHUT_Pin, GPIO_PIN_SET);
#endif
#if defined(TOF_2)
HAL_GPIO_WritePin(TOF_L_XSHUT_GPIO_Port, TOF_L_XSHUT_Pin, GPIO_PIN_SET);
#endif
#endif
#if defined(STM32WL55xx)
/*Configure GPIO pins : PBPin PBPin PBPin */
GPIO_InitStruct.Pin = LED1_Pin|LED2_Pin|LED3_Pin;
@ -203,7 +214,7 @@ void MX_GPIO_Init(void)
HAL_GPIO_Init(LED1_GPIO_Port, &GPIO_InitStruct);
#endif
GPIO_InitStruct.Pin = MEMS_POWER_Pin;
GPIO_InitStruct.Pin = MEMS_POWER_Pin|LED1_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_PULLDOWN; // PULL DOWN TO DISABLE TPS
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
@ -217,10 +228,10 @@ void MX_GPIO_Init(void)
#endif
HAL_GPIO_WritePin(MEMS_POWER_GPIO_Port, MEMS_POWER_Pin, GPIO_PIN_SET);
#if 0
__HAL_RCC_GPIOB_CLK_DISABLE();
__HAL_RCC_GPIOA_CLK_DISABLE();
#endif
#if defined(SOAP_LEVEL_SENSOR)
/* ============== SOAP LEVEL DETECTION ========================= */

View File

@ -108,12 +108,30 @@ int main(void)
/* Initialize all configured peripherals */
MX_GPIO_Init();
HAL_UART_DeInit(&huart2);
MX_DMA_Init();
MX_I2C2_Init();
MX_LoRaWAN_Init();
LED_ON;
HAL_Delay(200);
LED_OFF;
#if 0
if(__HAL_PWR_GET_FLAG(PWR_FLAG_SB) == RESET)
{
//LED_ON;
MX_LoRaWAN_Init();
}
else {
LED_ON;
__HAL_PWR_CLEAR_FLAG(PWR_FLAG_SB);
__HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU);
__HAL_PWR_CLEAR_FLAG(PWR_FLAG_WPVD);
HAL_Delay(1000);
SystemApp_Init();
LED_OFF;
}
#endif
/* USER CODE BEGIN 2 */
/* USER CODE END 2 */
@ -126,7 +144,7 @@ int main(void)
/* USER CODE END WHILE */
MX_LoRaWAN_Process();
LED_TOGGLE;
/* USER CODE BEGIN 3 */
}
/* USER CODE END 3 */

View File

@ -145,12 +145,12 @@ void PWR_ExitStopMode(void)
SRAM ctrls, DMAx, DMAMux, AES, RNG, HSEM */
/* Resume not retained USARTx and DMA */
//vcom_Resume(); //DON'T REMOVE THIS, KKEP LOW POWER
vcom_Resume(); //DON'T REMOVE THIS, KKEP LOW POWER
/* USER CODE BEGIN ExitStopMode_2 */
MX_GPIO_Init();
MX_DMA_Init();
MX_I2C2_Init();
PME_ON;
/* USER CODE END ExitStopMode_2 */
}

View File

@ -358,20 +358,20 @@ void DMA1_Channel7_IRQHandler(void)
/* USER CODE END DMA1_Channel7_IRQn 1 */
}
#endif
#if 0
void EXTI3_IRQHandler(void)
{
/* USER CODE BEGIN EXTI3_IRQn 0 */
/* USER CODE END EXTI3_IRQn 0 */
#ifdef STM32WLE5xx
HAL_GPIO_EXTI_IRQHandler(TOF_INT_EXTI_PIN);
//HAL_GPIO_EXTI_IRQHandler(TOF_INT_EXTI_PIN);
#endif
/* USER CODE BEGIN EXTI3_IRQn 1 */
/* USER CODE END EXTI3_IRQn 1 */
}
#endif
#if 0
/**
* @brief This function handles EXTI Lines [4] Interrupt.
@ -426,7 +426,7 @@ void EXTI15_10_IRQHandler(void)
}
#endif
#if 0
/**
* @brief This function handles USART2 Interrupt.
*/
@ -440,7 +440,7 @@ void USART2_IRQHandler(void)
/* USER CODE END USART2_IRQn 1 */
}
#endif
/**
* @brief This function handles RTC Alarms (A and B) Interrupt.
*/

View File

@ -116,8 +116,8 @@ void HAL_UART_MspInit(UART_HandleTypeDef* uartHandle)
GPIO_InitStruct.Pin = USARTx_RX_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
GPIO_InitStruct.Alternate = GPIO_AF7_USART2;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
//GPIO_InitStruct.Alternate = GPIO_AF7_USART2;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);

View File

@ -301,7 +301,7 @@ void STS_YunhornSTSEventP3_Process(void)
*/
void STS_YunhornSTSEventP4_Process(void)
{
STS_SENSOR_Power_ON(0);
//STS_SENSOR_Power_ON(0);
//HAL_Delay(10);
#ifdef LED_ONBOARD
LED_ON;
@ -319,7 +319,7 @@ void STS_YunhornSTSEventP4_Process(void)
STS_TOF250_Range_Process();
#endif
STS_SENSOR_Power_OFF(0);
//STS_SENSOR_Power_OFF(0);
}

View File

@ -806,10 +806,13 @@ static void SendTxData(void)
#endif
#if defined(YUNHORN_STS_R0_ENABLED)||defined(YUNHORN_STS_R5_ENABLED)
STS_SENSOR_Power_ON(1);
HAL_Delay(1000);
MX_TOF_Init();
MX_TOF_Process();
STS_R0_SENSOR_Read(&r0_data);
HAL_Delay(1000);
STS_SENSOR_Power_OFF(1);
r0_data.battery_Pct = (uint8_t)(99*batteryLevel/254);
#endif
// EnvSensors_Read(&sensor_data);
@ -1010,9 +1013,11 @@ static void OnJoinRequest(LmHandlerJoinParams_t *joinParams)
APP_LOG(TS_OFF, VLEVEL_M, "###### U/L FRAME:JOIN | DR:%d | PWR:%d\r\n", joinParams->Datarate, joinParams->TxPower);
}
//heart_beat_timer = 1;
//UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_LoRaSendOnTxTimerOrButtonEvent), CFG_SEQ_Prio_0);
heart_beat_timer = 1;
UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_LoRaSendOnTxTimerOrButtonEvent), CFG_SEQ_Prio_0);
//STS_SENSOR_Upload_Message(LORAWAN_USER_HTBT_PORT, 12,"Yunhorn88STS");
//STS_SENSOR_Upload_Message(LORAWAN_USER_HTBT_PORT, 12,"Yunhorn88STS");
/* USER CODE END OnJoinRequest_1 */
}

View File

@ -102,8 +102,9 @@ void MX_TOF_Process(void)
STS_TOF_VL53L1X_Range_Process();
#endif
#ifdef STS_USE_TOF_VL53L0X
STS_SENSOR_Power_ON(1);
#if defined(TOF_1)||defined(TOF_2)
STS_TOF_VL53L0X_Range_Process();
@ -111,8 +112,10 @@ void MX_TOF_Process(void)
#ifdef TOF_3
STS_TOF250_Range_Process();
#endif
STS_SENSOR_Power_OFF(1);
#endif
#if defined(STS_TOF_VL53L1X_PeopleCount) && defined(STS_USE_TOF_VL53L1X)
//STS_TOF_VL53LX_PeopleCounting_Process();