# IOT_4G.py 函数文档
4G网络连接和NTP时间同步模块。
## 全局变量
- connect_status_4g: 4G连接状态标志
- lte: LTE网络对象实例
- version: LTE模块版本信息
- iccid: SIM卡ICCID号码
## 核心函数
### connect_4g()
python
def connect_4g()
- 功能: 建立4G网络连接
- 实现流程:
1. 检查LTE对象是否存在
2. 检查当前连接状态
3. 激活LTE模块
4. 尝试建立连接
5. 等待连接结果
- 返回值:
- True: 连接成功
- False: 连接失败
- 连接特性:
- 自动重试机制
- 状态检查
- 超时保护(一次重试)
- 输出信息:
- 连接状态
- 模块版本
- ICCID信息
### synchronous_timer()
python
def synchronous_timer()
- 功能: NTP网络时间同步
- 实现细节:
- NTP服务器: pool.ntp.org
- 自动异常处理
- 时间同步状态反馈
- 返回值:
- True: 同步成功
- False: 同步失败
- 输出信息:
- 同步结果
- 当前本地时间
### Sync_Timer()
python
def Sync_Timer()
- 功能: 综合网络连接和时间同步
- 执行流程:
1. 建立4G网络连接
2. 同步网络时间
3. 异常处理保护
- 返回值:
- True: 全部成功
- False: 任一步骤失败
- 错误处理:
- 网络连接失败处理
- 时间同步失败处理
- 异常捕获和日志
## 使用示例
### 基本网络连接
python
from IOT_4G import connect_4g
if connect_4g():
print("4G网络连接成功")
else:
print("4G网络连接失败")
### 时间同步
python
from IOT_4G import Sync_Timer
if Sync_Timer():
print("网络连接和时间同步成功")
else:
print("同步失败,请检查网络")
## 网络状态检查
### 连接状态查看
python
from IOT_4G import lte
if lte and lte.isconnected():
print("网络状态:", lte.status())
print("模块版本:", lte.version())
print("ICCID:", lte.iccid())
## 技术规格
1. 网络连接
- 类型: 4G LTE
- 重试次数: 1次
- 连接超时: 默认等待时间
2. 时间同步
- 协议: NTP
- 服务器: pool.ntp.org
- 备用服务器: time.aliyun.com(注释中提供)
## 错误处理
1. LTE模块初始化错误
python
try:
lte = network.LTE()
except Exception as e:
print(f"LTE模块初始化失败: {e}")
2. 网络连接错误
python
if not lte.isconnected():
print("网络连接失败")
3. NTP同步错误
python
try:
ntptime.settime()
except OSError as e:
print(f"时间同步失败: {e}")
## 注意事项
1. 网络连接
- 确保SIM卡正确安装
- 检查信号强度
- 注意连接超时处理
2. 时间同步
- 需要成功的网络连接
- 可能受网络延迟影响
- 建议定期重新同步
3. 资源管理
- 及时处理连接异常
- 避免频繁重连
- 合理设置重试间隔
4. 调试建议
- 使用status()检查详细状态
- 记录重要错误信息
- 监控连接稳定性
5. 性能优化
- 按需连接
- 避免死循环等待
- 合理的超时设置