1 Star 0 Fork 6

anda/modules

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
net_manage.py 2.36 KB
一键复制 编辑 原始数据 按行查看 历史
JackSun 提交于 2023-04-10 18:45 . update: 1. led; 2. logging; 3. net_manage
# Copyright (c) Quectel Wireless Solution, Co., Ltd.All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
@file :net_manage.py
@author :Jack Sun (jack.sun@quectel.com)
@brief :<description>
@version :1.0.0
@date :2022-10-31 10:45:46
@copyright :Copyright (c) 2022
"""
import net
import utime
import ntptime
import dataCall
import checkNet
import usys as sys
class NetManage:
def __init__(self, project_name, project_version):
self.__checknet = checkNet.CheckNetwork(project_name, project_version)
self.__checknet.poweron_print_once()
@property
def status(self):
res = False
try:
data_call_info = dataCall.getInfo(1, 0)
net_state = net.getState()
if isinstance(data_call_info, tuple) and data_call_info[2][0] == 1 and \
isinstance(net_state, tuple) and len(net_state) >= 2 and net_state[1][0] in (1, 5):
res = True
else:
res = False
except Exception as e:
sys.print_exception(e)
return res
def wait_connect(self, timeout=60):
return self.__checknet.wait_network_connected(timeout)
def connect(self):
if net.setModemFun(1) == 0:
return True
return False
def disconnect(self):
if net.setModemFun(4) == 0:
return True
return False
def reconnect(self):
if self.disconnect():
utime.sleep_ms(200)
return self.connect()
return False
def sync_time(self, timezone=8):
return True if self.status and ntptime.settime(timezone) == 0 else False
def set_callback(self, callback):
if callable(callback):
res = dataCall.setCallback(callback)
return True if res == 0 else False
return False
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Python
1
https://gitee.com/andaai/modules.git
git@gitee.com:andaai/modules.git
andaai
modules
modules
master

搜索帮助