| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- #include "stm32l1xx_hal.h"
- #include "core/csect.h"
- #include "core/config.h"
- #include "core/config_pins.h"
- #include "drivers/power_management/power_management.h"
- #include "drivers/adc/adc.h"
- #include "app/led/led.h"
- static bool PM_Init();
- static void PM_DeInit();
- static void INPTRG( bool state );
- static void INPTRG_1( bool state );
- static void INPTRG_EN( bool state );
- static void VRF_EN_5( bool state );
-
- const PM_Handle_t PMHandle = {
- PM_Init,
- PM_DeInit,
- INPTRG,
- INPTRG_1,
- INPTRG_EN,
- VRF_EN_5
- };
- static inline void INPTRG( bool state )
- {
- HAL_GPIO_WritePin( CONFIG_PORT__INPTRG, CONFIG_PIN__INPTRG, (state)?GPIO_PIN_SET:GPIO_PIN_RESET );
- }
- static inline void INPTRG_1( bool state )
- {
- HAL_GPIO_WritePin( CONFIG_PORT__INPTRG_1, CONFIG_PIN__INPTRG_1, (state)?GPIO_PIN_SET:GPIO_PIN_RESET );
- }
- static inline void INPTRG_EN( bool state )
- {
- HAL_GPIO_WritePin( CONFIG_PORT__INPTRG_EN, CONFIG_PIN__INPTRG_EN, (state)?GPIO_PIN_SET:GPIO_PIN_RESET );
- }
- static inline void VRF_EN_5( bool state )
- {
- HAL_GPIO_WritePin( CONFIG_PORT__5VRF_EN, CONFIG_PIN__5VRF_EN, (state)?GPIO_PIN_SET:GPIO_PIN_RESET );
- }
-
- static bool PM_Init()
- {
- bool bRet = true;
- DI();
- GPIO_InitTypeDef GPIO_CTRL = {0};
- GPIO_CTRL.Pin = CONFIG_PIN__INPTRG | CONFIG_PIN__INPTRG_1;
- GPIO_CTRL.Mode = GPIO_MODE_INPUT;
- GPIO_CTRL.Pull = GPIO_PULLUP;
- GPIO_CTRL.Speed = GPIO_SPEED_FREQ_MEDIUM;
- HAL_GPIO_Init(CONFIG_PORT__INPTRG, &GPIO_CTRL);
-
- GPIO_InitTypeDef GPIO_CTRL_PWR = {0};
- GPIO_CTRL_PWR.Pin = CONFIG_PIN__5VRF_EN | CONFIG_PIN__INPTRG_EN;
- GPIO_CTRL_PWR.Mode = GPIO_MODE_OUTPUT_PP;
- GPIO_CTRL_PWR.Pull = GPIO_PULLUP;
- GPIO_CTRL_PWR.Speed = GPIO_SPEED_FREQ_MEDIUM;
- HAL_GPIO_Init(CONFIG_PORT__5VRF_EN, &GPIO_CTRL_PWR);
-
- VRF_EN_5(false); // Âûêëþ÷àåì ïèòàíèå íà ïëàòó óïðàâëåíèÿ (FPGA)
- INPTRG_EN(true); // Çàïðåò òðèããåðà îò VNA
- //VRF_EN_5(true); // Âêëþ÷àåì ïèòàíèå íà ïëàòó óïðàâëåíèÿ (FPGA) ïîñëå çàïðåòà ðàáîòû òðèããåðîâ
- EI();
- // Ïîñëå èíèöèàëèçàöèè íåîáõîäèìà çàäåðæêà 0.5 ñåêóíä!!!
- return bRet;
- }
- static void PM_DeInit()
- {
-
- }
|