mirror of https://github.com/ARMmbed/mbed-os.git
Merge pull request #9555 from SeeedJP/hal-wio_bg96-9450
Wio BG96: Modified sequence of module startuppull/9774/head
commit
3f46c82136
targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F439xI/TARGET_WIO_BG96
|
@ -25,6 +25,7 @@ using namespace mbed;
|
|||
|
||||
ONBOARD_QUECTEL_BG96::ONBOARD_QUECTEL_BG96(FileHandle *fh) : QUECTEL_BG96(fh)
|
||||
{
|
||||
::onboard_modem_init();
|
||||
}
|
||||
|
||||
nsapi_error_t ONBOARD_QUECTEL_BG96::hard_power_on()
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* mbed Microcontroller Library
|
||||
* Copyright (c) 2018 Arm Limited
|
||||
* Copyright (c) 2017 Arm Limited
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*
|
||||
|
@ -23,6 +23,8 @@
|
|||
#include "platform/mbed_wait_api.h"
|
||||
#include "PinNames.h"
|
||||
|
||||
#define WAIT_AFTER_POWR_CHANGED (1000) // [msec.]
|
||||
|
||||
#if MODEM_ON_BOARD
|
||||
|
||||
static void press_power_button(int time_ms)
|
||||
|
@ -30,7 +32,6 @@ static void press_power_button(int time_ms)
|
|||
gpio_t gpio;
|
||||
|
||||
gpio_init_out_ex(&gpio, PWRKEY, 1);
|
||||
gpio_write(&gpio, 1);
|
||||
wait_ms(time_ms);
|
||||
gpio_write(&gpio, 0);
|
||||
}
|
||||
|
@ -38,35 +39,46 @@ static void press_power_button(int time_ms)
|
|||
void onboard_modem_init()
|
||||
{
|
||||
gpio_t gpio;
|
||||
// start with modem disabled
|
||||
gpio_init_out_ex(&gpio, RESET_MODULE, 0);
|
||||
gpio_init_in_ex(&gpio, MDMSTAT, PullUp);
|
||||
gpio_init_out_ex(&gpio, MDMDTR, 0);
|
||||
gpio_init_out_ex(&gpio, M_POWR, 1);
|
||||
|
||||
// gpio_write(&gpio, M_POWR, 1);
|
||||
wait_ms(500);
|
||||
// Power Supply
|
||||
gpio_init_out_ex(&gpio, M_POWR, 0);
|
||||
// Turn On/Off
|
||||
gpio_init_out_ex(&gpio, PWRKEY, 0);
|
||||
gpio_init_out_ex(&gpio, RESET_MODULE, 0);
|
||||
// Status Indication
|
||||
gpio_init_in_ex(&gpio, MDMSTAT, PullUp);
|
||||
// Main UART Interface
|
||||
gpio_init_out_ex(&gpio, MDMDTR, 0);
|
||||
|
||||
wait_ms(WAIT_AFTER_POWR_CHANGED);
|
||||
}
|
||||
|
||||
void onboard_modem_deinit()
|
||||
{
|
||||
// wio3g_mdm_powerOff();
|
||||
onboard_modem_power_down();
|
||||
}
|
||||
|
||||
void onboard_modem_power_up()
|
||||
{
|
||||
/* keep the power line HIGH for 200 milisecond */
|
||||
press_power_button(200);
|
||||
/* give modem a little time to respond */
|
||||
wait_ms(100);
|
||||
gpio_t gpio;
|
||||
|
||||
// Power supply ON
|
||||
gpio_init_out_ex(&gpio, M_POWR, 1);
|
||||
wait_ms(WAIT_AFTER_POWR_CHANGED);
|
||||
|
||||
// Turn on
|
||||
wait_ms(100);
|
||||
press_power_button(200);
|
||||
}
|
||||
|
||||
void onboard_modem_power_down()
|
||||
{
|
||||
/* keep the power line low for 1 second */
|
||||
// press_power_button(1000);
|
||||
gpio_t gpio;
|
||||
|
||||
// gpio_write(&mpowr, M_POWR, 0);
|
||||
// Power supply OFF
|
||||
gpio_init_out_ex(&gpio, M_POWR, 0);
|
||||
wait_ms(WAIT_AFTER_POWR_CHANGED);
|
||||
}
|
||||
#endif //MODEM_ON_BOARD
|
||||
|
||||
#endif //MBED_CONF_NSAPI_PRESENT
|
||||
|
|
Loading…
Reference in New Issue