diff --git a/Core/Src/gpio.c b/Core/Src/gpio.c
index 24ead0d..d48ba27 100644
--- a/Core/Src/gpio.c
+++ b/Core/Src/gpio.c
@@ -50,13 +50,14 @@ void MX_GPIO_Init(void)
__HAL_RCC_GPIOA_CLK_ENABLE();
__HAL_RCC_GPIOB_CLK_ENABLE();
__HAL_RCC_GPIOC_CLK_ENABLE();
-
+#if 1
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);
+#endif
//__HAL_RCC_GPIOA_CLK_DISABLE();
//__HAL_RCC_GPIOB_CLK_DISABLE();
__HAL_RCC_GPIOC_CLK_DISABLE();
@@ -67,6 +68,10 @@ void MX_GPIO_Init(void)
|LED3_Pin, GPIO_PIN_RESET);
#endif
/*Configure GPIO pin Output Level */
+
+
+ HAL_GPIO_WritePin(MEMS_POWER_GPIO_Port, MEMS_POWER_Pin, GPIO_PIN_RESET);
+
#if defined(TOF_1)
HAL_GPIO_WritePin(TOF_C_XSHUT_GPIO_Port, TOF_C_XSHUT_Pin, GPIO_PIN_SET);
#endif
@@ -141,7 +146,7 @@ void MX_GPIO_Init(void)
#if (defined(TOF_1) && defined(TOF_2))
GPIO_InitStruct.Pin = TOF_C_XSHUT_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
- GPIO_InitStruct.Pull = GPIO_PULLUP;
+ GPIO_InitStruct.Pull = GPIO_PULLDOWN;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
HAL_GPIO_Init(TOF_C_XSHUT_GPIO_Port, &GPIO_InitStruct);
#endif
@@ -149,7 +154,7 @@ void MX_GPIO_Init(void)
#if (defined(TOF_2)&&defined(TOF_1))
GPIO_InitStruct.Pin = TOF_L_XSHUT_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
- GPIO_InitStruct.Pull = GPIO_PULLUP;
+ GPIO_InitStruct.Pull = GPIO_PULLDOWN;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
HAL_GPIO_Init(TOF_L_XSHUT_GPIO_Port, &GPIO_InitStruct);
#endif
@@ -206,11 +211,12 @@ HAL_GPIO_Init(SOAP_SWITCH_GPIO_Port, &GPIO_InitStruct);
HAL_NVIC_SetPriority(EXTI1_IRQn, 0, 0);
HAL_NVIC_EnableIRQ(EXTI1_IRQn);
#endif
+#if 0
#if (defined(TOF_1) && defined(TOF_2))
HAL_NVIC_SetPriority(TOF_C_INT_EXTI_IRQn, 0, 0);
HAL_NVIC_EnableIRQ(TOF_C_INT_EXTI_IRQn);
#endif
-
+#endif
#if (defined(TOF_2)&&!defined(TOF_1))
HAL_NVIC_SetPriority(TOF_L_INT_EXTI_IRQn, 0, 0);
HAL_NVIC_EnableIRQ(TOF_L_INT_EXTI_IRQn);
diff --git a/Core/Src/main.c b/Core/Src/main.c
index 690c939..88a7413 100644
--- a/Core/Src/main.c
+++ b/Core/Src/main.c
@@ -108,11 +108,34 @@ int main(void)
/* Initialize all configured peripherals */
MX_GPIO_Init();
+
+
+
+ while (1)
+
+ {
+ HAL_GPIO_WritePin(MEMS_POWER_GPIO_Port, MEMS_POWER_Pin, GPIO_PIN_RESET);
+ HAL_Delay(5000);
+ HAL_GPIO_WritePin(MEMS_POWER_GPIO_Port, MEMS_POWER_Pin, GPIO_PIN_SET);
+ HAL_Delay(5000);
+ }
+
+
+
+
+
MX_DMA_Init();
MX_I2C2_Init();
+ while (1)
+ {
+ PME_OFF;
+ HAL_Delay(5000);
+ PME_ON;
+ HAL_Delay(5000);
+ }
MX_LoRaWAN_Init();
/* USER CODE BEGIN 2 */
diff --git a/Core/Src/stm32_lpm_if.c b/Core/Src/stm32_lpm_if.c
index 2e4254d..4093d86 100644
--- a/Core/Src/stm32_lpm_if.c
+++ b/Core/Src/stm32_lpm_if.c
@@ -81,7 +81,9 @@ const struct UTIL_LPM_Driver_s UTIL_PowerDriver =
void PWR_EnterOffMode(void)
{
/* USER CODE BEGIN EnterOffMode_1 */
-#if 1
+
+#if 0
+ PME_OFF;
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_All&(~GPIO_PIN_9), GPIO_PIN_RESET);
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_All&(~GPIO_PIN_5)&(~GPIO_PIN_3)&(~GPIO_PIN_4), GPIO_PIN_RESET);
HAL_GPIO_WritePin(GPIOC, GPIO_PIN_All, GPIO_PIN_RESET);
@@ -96,7 +98,7 @@ void PWR_EnterOffMode(void)
void PWR_ExitOffMode(void)
{
/* USER CODE BEGIN ExitOffMode_1 */
-#if 1
+#if 0
HAL_ResumeTick();
return;
#endif
@@ -107,8 +109,11 @@ void PWR_EnterStopMode(void)
{
/* USER CODE BEGIN EnterStopMode_1 */
//WORKABLE CONFIG
- HAL_GPIO_WritePin(GPIOA, GPIO_PIN_All&(~GPIO_PIN_9), GPIO_PIN_RESET);
- HAL_GPIO_WritePin(GPIOB, GPIO_PIN_All&(~GPIO_PIN_5)&(~GPIO_PIN_3)&(~GPIO_PIN_4), GPIO_PIN_RESET);
+ //PME_OFF;
+ //HAL_GPIO_WritePin(GPIOA, GPIO_PIN_All&(~GPIO_PIN_9), GPIO_PIN_RESET);
+ //HAL_GPIO_WritePin(GPIOB, GPIO_PIN_All&(~GPIO_PIN_5)&(~GPIO_PIN_3)&(~GPIO_PIN_4), GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(GPIOA, GPIO_PIN_All, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(GPIOB, GPIO_PIN_All, GPIO_PIN_RESET);
HAL_GPIO_WritePin(GPIOC, GPIO_PIN_All, GPIO_PIN_RESET);
/* USER CODE END EnterStopMode_1 */
@@ -140,7 +145,7 @@ 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();
diff --git a/Core/Src/stm32wlxx_it.c b/Core/Src/stm32wlxx_it.c
index 4396c0c..b879d94 100644
--- a/Core/Src/stm32wlxx_it.c
+++ b/Core/Src/stm32wlxx_it.c
@@ -358,6 +358,7 @@ 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 */
@@ -370,7 +371,7 @@ void EXTI3_IRQHandler(void)
/* USER CODE END EXTI3_IRQn 1 */
}
-
+#endif
#if 0
/**
* @brief This function handles EXTI Lines [4] Interrupt.
diff --git a/Core/Src/yunhorn_sts_process.c b/Core/Src/yunhorn_sts_process.c
index 8134663..3f13d52 100644
--- a/Core/Src/yunhorn_sts_process.c
+++ b/Core/Src/yunhorn_sts_process.c
@@ -521,9 +521,10 @@ void STS_SENSOR_Power_ON(uint8_t cnt)
case 0:
case 1:
case 2:
- PME_ON;
+ HAL_GPIO_WritePin(MEMS_POWER_GPIO_Port, MEMS_POWER_Pin, GPIO_PIN_SET);
break;
default:
+ HAL_GPIO_WritePin(MEMS_POWER_GPIO_Port, MEMS_POWER_Pin, GPIO_PIN_SET);
break;
}
@@ -534,9 +535,10 @@ void STS_SENSOR_Power_OFF(uint8_t cnt)
case 0:
case 1:
case 2:
- PME_OFF;
+ HAL_GPIO_WritePin(MEMS_POWER_GPIO_Port, MEMS_POWER_Pin, GPIO_PIN_RESET);
break;
default:
+ HAL_GPIO_WritePin(MEMS_POWER_GPIO_Port, MEMS_POWER_Pin, GPIO_PIN_RESET);
break;
}
}
diff --git a/STM32CubeIDE/.settings/language.settings.xml b/STM32CubeIDE/.settings/language.settings.xml
index 7418597..801f38f 100644
--- a/STM32CubeIDE/.settings/language.settings.xml
+++ b/STM32CubeIDE/.settings/language.settings.xml
@@ -5,7 +5,7 @@
-
+
@@ -16,7 +16,7 @@
-
+