chenyc
2024-11-15 ce5e351b48a0a8bb666a579324586caeba8eba8a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
from driver import GPIO
import app_network
import utime
import app_aliyunIot
import _thread
from driver import TIMER
import _thread
import tool
import app_uart
 
 
net_led=GPIO()
net_led.open("NET_LED")
 
 
 
def net_led_disp(id):
    while True:
        #网络是否链接
        net_connect_flag=app_network.getNetFlag()
        #阿里云是否链接
        mqtt_connect_flag=app_aliyunIot.get_mqtt_connect_flag()
        isDevice_flag=tool.getDeviceKeyFlag()
        #是否接受到数据
        isTakeOver=app_uart.getTakeOver()
        # 驻网失败/没有SIM卡/与基站脱离连接:300ms翻转一次电平
        if not net_connect_flag :
            net_led.write(1)
            utime.sleep_ms(300)
            net_led.write(0)
            utime.sleep_ms(300)  
        #已经联网/ http 获取三元组失败:1秒一次
        elif net_connect_flag and not isDevice_flag:
            net_led.write(1)
            utime.sleep_ms(1000)
            net_led.write(0)  
            utime.sleep_ms(1000) 
    # 已驻网,未连云/与云脱离连接但还有网:3s翻转一次     
        elif net_connect_flag and not mqtt_connect_flag:
            net_led.write(1)
            utime.sleep_ms(3000)
            net_led.write(0)  
            utime.sleep_ms(3000) 
        # 已驻网,链接云3s翻转一次 
        elif net_connect_flag and  mqtt_connect_flag and not isTakeOver:
            net_led.write(1)
            utime.sleep_ms(5000)
            net_led.write(0)  
            utime.sleep_ms(5000)      
        # 连着云:常亮    
        elif net_connect_flag and mqtt_connect_flag and isTakeOver:   
            net_led.write(1)
        # 勿删 
        utime.sleep_ms(10)    
  
       
def led_disp_thread():
    _thread.start_new_thread(net_led_disp,(2,))