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,))