WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "GPSView cancelButton new fail");\r
return;\r
}\r
- cancelButton->SetPosition(85, 400, 90, 90); // 85:x, 320:y, 90:width, 90:height\r
+ cancelButton->SetPosition(85, 350, 90, 90); // 85:x, 320:y, 90:width, 90:height\r
cancelButton->SetViewId(GPS_CANCEL_BUTTON);\r
cancelButton->SetImageSrc(ALARM_DELETE_ADD_PATH, ALARM_DELETE_ADD_PATH);\r
cancelButton->SetOnClickListener(clickListener);\r
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "GPSView confirmButton new fail");\r
return;\r
}\r
- confirmButton->SetPosition(279, 400, 90, 90); // 279:x, 320:y, 90:width, 90:height\r
+ confirmButton->SetPosition(279, 350, 90, 90); // 279:x, 320:y, 90:width, 90:height\r
confirmButton->SetViewId(GPS_CONFIRM_BUTTON);\r
confirmButton->SetImageSrc(ALARM_TRUE_ADD_PATH, ALARM_TRUE_ADD_PATH);\r
confirmButton->SetOnClickListener(clickListener);\r
#include "ui_resource_image.h"
#include "common/image_cache_manager.h"
#include <ctime>
-
+#include "custom_utils.h"
namespace OHOS {
static MainClockView *g_pMainClockView = nullptr;
return false;
}
batteryLabel->SetPosition(BATTERYP_LABEL_X, BATTERYP_LABEL_Y, TEXT_WIDTH, TEXT_HEIGHT);
- batteryLabel->SetText("90%");
+ uint8_t power=90;
+ battery_getvolpower(&power);
+ char tmp[16]={0};
+ sprintf(tmp,"%d%",power);
+ batteryLabel->SetText(tmp);
batteryLabel->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);
batteryLabel->SetFont(DEFAULT_VECTOR_FONT_FILENAME, FONT_DEFAULT_SIZE);
batteryLabel->SetStyle(STYLE_BACKGROUND_COLOR, OPA_TRANSPARENT);
#include "ScreenModels.h"
#include "SettingModel.h"
#include "ui_resource_image.h"
+#include "custom_utils.h"
namespace OHOS {
return;
}
batteryLable->SetPosition(BATTERY_LABEL_X, BATTERY_LABEL_Y, TEXT_WIDTH, TEXT_HEIGHT);
- batteryLable->SetText("90%");
+ uint8_t power=90;
+ battery_getvolpower(&power);
+ char tmp[16]={0};
+ sprintf(tmp,"%d%",power);
+ batteryLable->SetText(tmp);
batteryLable->SetFont(DEFAULT_VECTOR_FONT_FILENAME, FONT_DEFAULT_SIZE);
batteryLable->SetStyle(STYLE_BACKGROUND_COLOR, OPA_TRANSPARENT);
dateLable = new UILabel();
char *ptr = (char *)data;\r
uint32_t mode = strtoul(ptr, NULL, 10);\r
\r
- wstp_print("gnss cmd: 0 poweroff , 1 power on , 2 load_cfg , 3 start , 4 stop\r\n");\r
+ wstp_print("gnss cmd: 0 switch to download , 1 switch to gnss , 2 load_cfg ,3 poweron ,4 poweroff, 5 start , 6 stop\r\n");\r
if (mode == 0) {\r
// osDelay(500);\r
- wstp_print("0 gnss_power_off\r\n");\r
- gnss_power_off();\r
+ wstp_print("0 switch to download\r\n");\r
+ download_gnss_switch(SWITCH_TO_DOWNLOAD);\r
}else if (mode == 1) {\r
- wstp_print("1 gnss_power_on\r\n");\r
- gnss_power_on();\r
+ wstp_print("1 switch to gnss\r\n");\r
+ download_gnss_switch(SWITCH_TO_GNSS);\r
}else if (mode == 2) {\r
- \r
- wstp_print("2 gnss_load_cfg\r\n");\r
- gnss_load_cfg();\r
+ const char* msg="2 gnss_load_cfg\r\n";\r
+ wstp_print(msg);\r
+ gnss_write_cmd(msg,strlen(msg));\r
+\r
}else if (mode == 3) {\r
- wstp_print("3 gnss_start\r\n");\r
+ wstp_print("3 gnss_poweron\r\n");\r
+ gnss_power_on;\r
+ }else if (mode == 4) {\r
+ wstp_print("4 gnss_poweroff\r\n");\r
+ gnss_power_off();\r
+ }else if (mode == 5) {\r
+ wstp_print("5 gnss_start \r\n");\r
gnss_start();\r
+ \r
}else {\r
// osDelay(500);\r
- wstp_print("4 gnss_stop\r\n");\r
+ wstp_print("6 gnss_stop\r\n");\r
gnss_stop();\r
}\r
\r
'GNSS_UART1',
'SUPPORT_AUTO_OTA_SERVER',
'CONFIG_DFX_SUPPORT_DIAG_UP_MACHINE=1',
- 'GPS_CAT1_RESET_TEST',
'TPTYPE_CST86XX',
'TEST_4G_UI',
+ 'TEST_GPS_UI',
'NANDFLASH_F35UQA'
],
'ram_component': [
'brandy-native-js-lt22': {
'base_target_name': 'brandy-native-js',
'defines': ['CONFIG_EFUSE_READ_TO_RAM',
- 'FT_SINGLE_UART',
# 'WEARABLE_LOG_DEBUG',
'SUPPORT_RC_CALIBRATION',
- #'PPG_HX3695',
'VIB_USE_PWM',
'CONFIG_PWM_SUPPORT',
- # 'ACC_LIS2DOC',
'ENABLE_CYWEE',
'ENABLE_CUSTOM_I2C',
'SUPPORT_AT_CYWEE',
#'ENABLE_WEBSOCKET',
'SINGLE_USER_PARTITION',
'BOARD_L22',
+ # 'FT_SINGLE_UART',
'GNSS_UART1',
+ # 'DISABLE_UART_LOG',
+ # 'CONFIG_GNSS_UART_WITH_FLOWCTRL',
+ 'DOWNLOAD_GNSS_SWITCH',
'SUPPORT_AUTO_OTA_SERVER',
'CONFIG_DFX_SUPPORT_DIAG_UP_MACHINE=1',
- 'GPS_CAT1_RESET_TEST',
'TPTYPE_CST86XX',
'TEST_4G_UI',
+ 'TEST_GPS_UI',
'NANDFLASH_F35UQA',
'PPG_VC921X',
'ROTARYENCODER_HX3509',
],
'ram_component': [
- #'baidumapsdk',
'audio_at_service',
'media_at_service',
'bt_manager_at_service',
{ S_AGPIO_L14, HAL_GPIO_DIRECTION_OUTPUT, HAL_GPIO_LEVEL_LOW, 0, NULL },
#endif
- { S_AGPIO_L30, HAL_GPIO_DIRECTION_OUTPUT, HAL_GPIO_LEVEL_HIGH, 0, NULL },
-
-
- // S_AGPIO_L12 SDIO_BT 光电开关 sd
- { S_AGPIO_L12, HAL_GPIO_DIRECTION_OUTPUT, HAL_GPIO_LEVEL_LOW, 0, NULL },
- // S_AGPIO_L13 SCLK_BT 光电开关 sc
- { S_AGPIO_L13, HAL_GPIO_DIRECTION_OUTPUT, HAL_GPIO_LEVEL_LOW, 0, NULL },
-
- // // S_AGPIO_L26 心率复位 PPG reset
- // { S_AGPIO_L26, HAL_GPIO_DIRECTION_OUTPUT, HAL_GPIO_LEVEL_LOW, 0, NULL },
- // // S_AGPIO_R0 PRG_LED_POWER ON 心率等电源控制脚
- // { S_AGPIO_R0, HAL_GPIO_DIRECTION_OUTPUT, HAL_GPIO_LEVEL_LOW, 0, NULL },
-
+/*GPS power on*/
+ //GPS_CRYSTAL set_value S_HGPIO0 GPIO_LEVEL_HIGH
+ { S_HGPIO0, HAL_GPIO_DIRECTION_OUTPUT, HAL_GPIO_LEVEL_HIGH, 0, NULL },
+ //GPS_1V8 set_value S_AGPIO_L20 GPIO_LEVEL_HIGH
+ { S_AGPIO_L20, HAL_GPIO_DIRECTION_OUTPUT, HAL_GPIO_LEVEL_HIGH, 0, NULL },
+ //GPS_BAT_ON set_value S_AGPIO_R9 GPIO_LEVEL_HIGH
+ { S_AGPIO_R9, HAL_GPIO_DIRECTION_OUTPUT, HAL_GPIO_LEVEL_HIGH, 0, NULL },
+ //GPS_RESET set_value S_AGPIO_L32 GPIO_LEVEL_HIGH
+ { S_AGPIO_L32, HAL_GPIO_DIRECTION_OUTPUT, HAL_GPIO_LEVEL_LOW, 0, NULL },
+
// //S_AGPIO_L21 NTC_VDD_ON 给低打开 NTC上拉电源 ,默认关闭
// { S_AGPIO_L21, HAL_GPIO_DIRECTION_OUTPUT, HAL_GPIO_LEVEL_HIGH, 0, NULL },
-#if 0 //默认正常充电
-// #define GPIO_PIN_ENABLE_CHARGE S_AGPIO_R9 //low enable
-// #define GPIO_PIN_ENABLE_CHARGE_0_2C S_AGPIO_L20 //low 0.2c 低电流充电
- // { S_AGPIO_R9, HAL_GPIO_DIRECTION_OUTPUT, HAL_GPIO_LEVEL_LOW, 0, NULL },
- // { S_AGPIO_L20, HAL_GPIO_DIRECTION_OUTPUT, HAL_GPIO_LEVEL_LOW, 0, NULL },
-#else
- // { S_AGPIO_R9, HAL_GPIO_DIRECTION_OUTPUT, HAL_GPIO_LEVEL_LOW, 0, NULL },
- // { S_AGPIO_L20, HAL_GPIO_DIRECTION_OUTPUT, HAL_GPIO_LEVEL_HIGH, 0, NULL },
-#endif
//默认关闭马达
{ S_AGPIO_R2, HAL_GPIO_DIRECTION_OUTPUT, HAL_GPIO_LEVEL_LOW, 0, NULL },
#define CODELOADER_UART_TX_PIN S_MGPIO33
#define CODELOADER_UART_RX_PIN S_MGPIO34
+#if 0
#define LOG_UART_BUS UART_BUS_1
#define LOG_UART_TX_PIN S_MGPIO33
#define LOG_UART_RX_PIN S_MGPIO34
#define CHIP_FIXED_RX_PIN S_MGPIO34
#endif
#endif
+#endif
+#ifdef DISABLE_UART_LOG
+
+#define SW_DEBUG_UART_BUS UART_BUS_MAX_NUMBER
+#define CHIP_FIXED_TX_PIN PIN_NONE
+#define CHIP_FIXED_RX_PIN PIN_NONE
+
+#define LOG_UART_BUS UART_BUS_MAX_NUMBER
+#define LOG_UART_TX_PIN PIN_NONE
+#define LOG_UART_RX_PIN PIN_NONE
+#else
+
+#ifndef FT_SINGLE_UART
+#define SW_DEBUG_UART_BUS UART_BUS_0
+#define CHIP_FIXED_TX_PIN S_MGPIO19
+#define CHIP_FIXED_RX_PIN S_MGPIO20
+
+#define LOG_UART_BUS UART_BUS_0
+#define LOG_UART_TX_PIN S_MGPIO19
+#define LOG_UART_RX_PIN S_MGPIO20
+
+#else
+#define SW_DEBUG_UART_BUS UART_BUS_1
+#define CHIP_FIXED_TX_PIN S_MGPIO33
+#define CHIP_FIXED_RX_PIN S_MGPIO34
+
+#define LOG_UART_BUS UART_BUS_1
+#define LOG_UART_TX_PIN S_MGPIO33
+#define LOG_UART_RX_PIN S_MGPIO34
+
+#endif
+
+
+#endif
+
#define CHIP_FIXED_UART_BUS UART_BUS_0
#define QSPI_MAX_NUMBER 3
},
/* UART_BUS_1 is used to hso uart */
{
+ #ifdef GNSS_UART1
+ {
+ .tx_pin = PIN_NONE,
+ .rx_pin = PIN_NONE,
+ .cts_pin = PIN_NONE,
+ .rts_pin = PIN_NONE
+ },
+ {
+ .tx_pin_mode = (pin_mode_t)HAL_PIO_FUNC_MAX,
+ .rx_pin_mode = (pin_mode_t)HAL_PIO_FUNC_MAX,
+ .cts_pin_mode = (pin_mode_t)HAL_PIO_FUNC_MAX,
+ .rts_pin_mode = (pin_mode_t)HAL_PIO_FUNC_MAX
+ },
+ RESERVED_80_IRQn,
+ NULL,
+ NULL,
+ #else
{
.tx_pin = S_MGPIO33,
.rx_pin = S_MGPIO34,
#else
log_factory_at_callback,
#endif
+ #endif
{
.baud_rate = CUSTOM_UART_RATE,
.data_bits = UART_DATA_BIT_8,
pm_enter_wfi();
lpc_forbid_deepsleep();
#endif
+
+#ifndef GNSS_UART1
#ifndef FT_SINGLE_UART
uint16_t status = pmu_lpm_wakeup_get_status(LPM_EVT_ACTION, PMU_LPM_MCPU_UART_H1_RX_WAKEUP);
#else
if (status != 0) {
pm_wkup_event_by_uart_callback();
}
+#endif
+
pm_wkup_prepare(PM_SLEEP_DS);
pm_sleep_info_record(SLP_INFO_DEEPSLEEP);
reg16_setbit(0x520003e4, 0x3); // open mdam clock after deepsleep
#include "components/ui_label.h"\r
#include "common/image_cache_manager.h"\r
#include "MainClockView.h"\r
+#include "custom_utils.h"\r
\r
namespace OHOS {\r
static MainClockView *g_pMainClockView = nullptr;\r
return false;\r
}\r
batteryLabel->SetPosition(BATTERYP_LABEL_X, BATTERYP_LABEL_Y, TEXT_WIDTH, TEXT_HEIGHT);\r
- batteryLabel->SetText("90%");\r
+ uint8_t power=90;\r
+ battery_getvolpower(&power);\r
+ char tmp[16]={0};\r
+ sprintf(tmp,"%d%",power);\r
+ batteryLabel->SetText(tmp);\r
batteryLabel->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);\r
batteryLabel->SetFont(DEFAULT_VECTOR_FONT_FILENAME, FONT_DEFAULT_SIZE);\r
batteryLabel->SetStyle(STYLE_BACKGROUND_COLOR, OPA_TRANSPARENT);\r
#include "ScreenModel.h"\r
#include "ui_resource_image.h"\r
#include "common/image_cache_manager.h"\r
+#include "custom_utils.h"\r
\r
namespace OHOS {\r
\r
return;\r
}\r
batteryLable->SetPosition(BATTERY_LABEL_X, BATTERY_LABEL_Y, TEXT_WIDTH, TEXT_HEIGHT);\r
- batteryLable->SetText("90%");\r
+ uint8_t power=90;\r
+ battery_getvolpower(&power);\r
+ char tmp[16]={0};\r
+ sprintf(tmp,"%d%",power);\r
+ batteryLable->SetText(tmp);\r
batteryLable->SetFont(DEFAULT_VECTOR_FONT_FILENAME, FONT_DEFAULT_SIZE);\r
batteryLable->SetStyle(STYLE_BACKGROUND_COLOR, OPA_TRANSPARENT);\r
dateLable = new UILabel();\r
#define TIOT_LOG_DEBUG 4 /*!< Log level debug. */\r
\r
#ifndef TIOT_BOARD_LOG_LEVEL\r
-#define TIOT_BOARD_LOG_LEVEL TIOT_LOG_INFO\r
+#define TIOT_BOARD_LOG_LEVEL TIOT_LOG_DEBUG\r
#endif\r
\r
/* 宏定义 */\r
#define TIOT_BOARD_PIN_PORT_H\r
\r
#include "tiot_types.h"\r
-\r
+#include "gpio.h"\r
+#include "uart.h"\r
#ifdef __cplusplus\r
#if __cplusplus\r
extern "C" {\r
* @brief Pin none, board port should use this macro if pin is not connected.\r
*/\r
#define TIOT_PIN_NONE 0xFFFFFFFFU\r
-#define TIOT_PIN_UART_WAKEUP_NUM 0x80000000U /* 用于uart rx唤醒. */\r
\r
+#if defined(GNSS_UART1)\r
+#define TIOT_UART_PORT UART_BUS_1\r
+#else\r
+#define TIOT_UART_PORT UART_BUS_0\r
+#endif\r
+\r
+#ifdef BOARD_U8\r
+#define TIOT_PIN_UART_WAKEUP_NUM S_AGPIO_L31 /* 用于uart rx唤醒. */\r
+#define TIOT_PIN_POWER S_AGPIO_L30 /* 用于开启GNSS. */\r
+#elif defined(BOARD_L22) || defined(BOARD_W9)\r
+#define TIOT_PIN_UART_WAKEUP_NUM S_AGPIO_L15 /* 用于uart rx唤醒. */\r
+#define TIOT_PIN_POWER S_AGPIO_L32 /* 用于开启GNSS. */\r
+#else\r
+#define TIOT_PIN_POWER TIOT_PIN_NONE /* 用于开启GNSS. */\r
+#define TIOT_PIN_UART_WAKEUP_NUM 0x80000000U /* 用于uart rx唤醒. */\r
+#endif\r
/**\r
* @brief Pin level enum.\r
*/\r
{
/* 默认发送subsys为0的数据 */
const tiot_service_tx_param param = { 0 };
+ #if 0
+ printf("tiot_service_write 0x");
+ for( int i =0;i < len;i++)
+ {
+ printf("%01X",data[i]);
+ }
+ printf("\r\n");
+ printf("tiot_service_write %s \r\n",data);
+ #endif
return tiot_service_write_ext(handle, data, len, ¶m);
}
*/
#if defined(GNSS_UART1)
-static const gnss_board_hw_info g_gnss_board_hw_info = { UART_BUS_1, { S_AGPIO_L30, TIOT_PIN_NONE, TIOT_PIN_NONE } };
+static const gnss_board_hw_info g_gnss_board_hw_info = { UART_BUS_1, { S_AGPIO_L32, TIOT_PIN_NONE, TIOT_PIN_NONE } };
#else
static const gnss_board_hw_info g_gnss_board_hw_info = { UART_BUS_0, { S_AGPIO_L30, TIOT_PIN_NONE, TIOT_PIN_NONE } };
#endif
-
+//static const gnss_board_hw_info g_gnss_board_hw_info = { TIOT_UART_PORT, { TIOT_PIN_POWER, TIOT_PIN_UART_WAKEUP_NUM, TIOT_PIN_NONE } };
static const gnss_board_info g_gnss_board_info = {
.cfg_path = NULL, /* 如果使用文件系统,此处填写固件cfg文件完整路径,
例如 .cfg_path = "user/gnss_firmware/gnss_fw_cfg";
{\r
.flow_ctrl_bk = TIOT_UART_ATTR_FLOW_CTRL_ENABLE, /* MCU UART默认是否开启流控。 */\r
.rx_buff = { 0 },\r
+#if defined(CONFIG_GNSS_UART_WITH_FLOWCTRL)\r
#if defined(GNSS_UART1)\r
.pin_config_orig = { S_MGPIO33, S_MGPIO34, S_MGPIO35, S_MGPIO36 }, /* MCU UART管脚,按实际板级情况适配。 */\r
/* MCU UART管脚pinmux,按实际板级情况适配。 */\r
HAL_PIO_FUNC_UART1, HAL_PIO_FUNC_UART1,\r
HAL_PIO_FUNC_UART1, HAL_PIO_FUNC_UART1\r
}, \r
+#endif\r
+#else\r
+#if defined(GNSS_UART1)\r
+ .pin_config_orig = { S_MGPIO33, S_MGPIO34, PIN_NONE, PIN_NONE }, /* MCU UART管脚,按实际板级情况适配。 */\r
+ /* MCU UART管脚pinmux,按实际板级情况适配。 */\r
+ .pinmux = {\r
+ HAL_PIO_FUNC_UART_HS_UART, HAL_PIO_FUNC_UART_HS_UART,\r
+ HAL_PIO_FUNC_MAX, HAL_PIO_FUNC_MAX\r
+ }, \r
+#else \r
+ .pin_config_orig = { S_MGPIO19, S_MGPIO20, PIN_NONE, PIN_NONE }, /* MCU UART管脚,按实际板级情况适配。 */\r
+ /* MCU UART管脚pinmux,按实际板级情况适配。 */\r
+ .pinmux = {\r
+ HAL_PIO_FUNC_UART1, HAL_PIO_FUNC_UART1,\r
+ HAL_PIO_FUNC_MAX, HAL_PIO_FUNC_MAX\r
+ }, \r
+#endif\r
#endif\r
.rx_callback = tiot_board_rx_callback0 /* MCU UART管脚接收回调,按TIoT驱动使用UART个数适配增加。 */\r
}\r
#include "stdint.h"
#include "errcode.h"
-errcode_t gnss_init(void);
errcode_t gnss_power_on(void);
errcode_t gnss_power_off(void);
-errcode_t gnss_load_cfg(void);
errcode_t gnss_start(void);
errcode_t gnss_stop(void);
uint8_t is_gnss_on(void);
+
+typedef enum {
+ SWITCH_TO_DOWNLOAD=0,
+ SWITCH_TO_GNSS=1,
+} DOWNLOAD_GPS_SWITCH_T;
+
+errcode_t download_gnss_switch(DOWNLOAD_GPS_SWITCH_T download_gps_switch);
+
+
+int is_GnssLogEnabled(void);
+int GnssLogEnable(bool enable);
+
+/**test only */
+uint32_t gnss_write_cmd(uint8_t * cmdbuf,uint16_t cmdlen);
+
#ifdef __cplusplus
}
#endif /* __cplusplus */
#include "securec.h"\r
#include "tiot_service_interface.h"\r
#include "pm_definition.h"\r
+#include "gnss_ctl.h"\r
\r
#define COLDSTART_FIXMODEGPS_NMEAALL_SAMPLE 0\r
#define AUTOSTART_FIXMODEALL_NMEADEF_SAMPLE 1\r
int32_t i = 0;\r
// 写日志\r
for (;;) { // 写日志条件\r
+\r
+ if (i >= LISTEN_DATA_MAX_LINES) {\r
+ printf("\ncnt enough\n");\r
+ break;\r
+ }\r
+ if (g_gnss_stopflag == 1)\r
+ {\r
+ break;\r
+ }\r
// 监听\r
int32_t ret = tiot_service_read(handle, g_gnssServiceBuff, REPORT_MAX_BYTES, LISTEN_TIME_THR);\r
if (ret > 0) {\r
}\r
i++;\r
}\r
- if (i >= LISTEN_DATA_MAX_LINES) {\r
- printf("\ncnt enough\n");\r
- break;\r
- }\r
- if (g_gnss_stopflag == 1)\r
- {\r
- break;\r
- }\r
+\r
}\r
}\r
void GnssServerStop(void)\r
return g_is_gnss_poweron;\r
}\r
\r
+int is_GnssLogEnabled(void)\r
+{\r
+ return g_is_gnss_logon;\r
+}\r
+int GnssLogEnable(bool enable)\r
+{\r
+ if (enable)\r
+ g_is_gnss_logon = 1;\r
+ else\r
+ g_is_gnss_logon = 0;\r
+\r
+\r
+ return g_is_gnss_logon;\r
+}\r
+\r
+\r
void GnssServerStart(void)\r
{\r
printf("\nenter gnss samples\n");\r
return ;\r
}\r
uapi_pm_add_sleep_veto(PM_ID_SYS);\r
+\r
+ #ifdef DOWNLOAD_GNSS_SWITCH\r
+ download_gnss_switch(SWITCH_TO_GNSS);\r
+ #endif\r
g_is_gnss_poweron = 1;\r
g_gnss_stopflag = 0;\r
// Step1: init\r
int32_t ret = tiot_service_init();\r
if (ret != 0) {\r
printf("\ntiot service init fail\n");\r
+ g_is_gnss_poweron = 0;\r
+ g_gnss_stopflag = 1;\r
}\r
\r
// 打开日志文件\r
if (g_is_gnss_logon)\r
{\r
- g_gnssLogFp = fopen("/user/gnss.log", "w");\r
+ g_gnssLogFp = fopen("/user/log/gnss.log", "w");\r
if (g_gnssLogFp == NULL) {\r
printf("\nerror: open log file error\n");\r
return;\r
tiot_handle handle = tiot_service_open("gn71", NULL);\r
if (handle == 0) {\r
printf("\nopen tiot service fail\n");\r
+ g_is_gnss_poweron = 0;\r
+ g_gnss_stopflag = 1;\r
return;\r
}\r
printf("\nopen tiot service success\n");\r
}\r
// Step8: deinit\r
tiot_service_deinit();\r
+\r
+ #ifdef DOWNLOAD_GNSS_SWITCH\r
+ download_gnss_switch(SWITCH_TO_DOWNLOAD);\r
+ #endif\r
uapi_pm_remove_sleep_veto(PM_ID_SYS);\r
g_is_gnss_poweron=0;\r
printf("\nfinish gnss samples\n");\r
#include "uart_gnss.h"
#include "gnss_sample.h"
-errcode_t gnss_init(void)
-{
-
- return ERRCODE_SUCC;
-}
-
errcode_t gnss_power_on(void)
{
ret=uapi_gpio_set_val(S_AGPIO_L32, GPIO_LEVEL_LOW); //gps reset
PRINT("GPS_PWRON set_value S_AGPIO_L32 GPIO_LEVEL_LOW ret %d\n",ret);
- ret=uapi_gpio_set_val(S_AGPIO_L16, GPIO_LEVEL_LOW); // crystal sw
- PRINT("SWITCH uart to download set_value S_AGPIO_L16 GPIO_LEVEL_LOW ret %d\n",ret);
+ // ret=uapi_gpio_set_val(S_AGPIO_L16, GPIO_LEVEL_LOW); // crystal sw
+ // PRINT("SWITCH uart to download set_value S_AGPIO_L16 GPIO_LEVEL_LOW ret %d\n",ret);
#endif
return ERRCODE_SUCC;
static uint8_t g_gnss_status=0;
-errcode_t gnss_load_cfg(void)
-{
- // do_gnss_cmd(GNSS_CMD_WRITEDATA,g_cfg_all_nmea_cmd,sizeof(g_cfg_all_nmea_cmd));
- uint8_t cmd = GNSS_CMD_CFG_INIT;
- do_gnss_cmd(GNSS_CMD_WRITEDATA, &cmd,1);
- g_gnss_status = 1;
- return 0;
-}
-
-
errcode_t gnss_start(void)
{
// do_gnss_cmd(GNSS_CMD_WRITEDATA,g_cfg_all_nmea_cmd,sizeof(g_cfg_all_nmea_cmd));
uint8_t is_gnss_on(void)
{
return g_gnss_status;
+}
+
+
+errcode_t download_gnss_switch(DOWNLOAD_GPS_SWITCH_T download_gps_switch)
+{
+ errcode_t ret=ERRCODE_SUCC;
+ ret=uapi_gpio_set_dir(S_AGPIO_L16,GPIO_DIRECTION_OUTPUT);
+ PRINT("set_dir S_AGPIO_L16,GPIO_DIRECTION_OUTPUT ret %d\n",ret);
+
+ if (download_gps_switch == SWITCH_TO_GNSS)
+ {
+ ret=uapi_gpio_set_val(S_AGPIO_L16, GPIO_LEVEL_HIGH); // crystal sw
+ PRINT("SWITCH uart to GNSS set_value S_AGPIO_L16 GPIO_LEVEL_HIGH ret %d\n",ret);
+ }else{
+ ret=uapi_gpio_set_val(S_AGPIO_L16, GPIO_LEVEL_LOW); // crystal sw
+ PRINT("SWITCH uart to download set_value S_AGPIO_L16 GPIO_LEVEL_LOW ret %d\n",ret);
+ }
+ return ret;
}
\ No newline at end of file