def human_check_init(): global gpioirDev,gpioledDev,irDev gpioirDev = GPIO() gpioirDev.open("ir") irDev = ir.IR(gpioirDev) gpioledDev = GPIO() gpioledDev.open("led")
def __init__(self): self.spi = SPI() self.spi.open('SPI0') self.rst = GPIO() self.rst.open('rst') self.rst.write(0) self.rst.write(1) self.init()
def on_props(request): from driver import GPIO import ujson ON = 0 OFF = 1 #服务端返回的json 转换成dict payload = ujson.loads(request) #获取dict 中的led 状态字段 stat = payload["LEDSwitch"] gpio = GPIO() # open 函数支持的参数列表如下: # led1;led2;led3;led4;led5 gpio.open('led1') if stat == 1: gpio.write(ON) else: gpio.write(OFF) utime.sleep_ms(200) gpio.close()
# 上传温度和湿度信息到物联网平台 device.postProps(upload_data) utime.sleep(2) if __name__ == '__main__': # 硬件初始化 i2cObj = I2C() i2cObj.open( "sht3x" ) # 按照board.json中名为"sht3x"的设备节点的配置参数(主设备I2C端口号,从设备地址,总线频率等)初始化I2C类型设备对象 print("sht3x inited!") humitureDev = sht3x.SHT3X(i2cObj) # 初始化SHT3X-DIS传感器 # 初始化 GPIO airconditioner = GPIO() humidifier = GPIO() humidifier.open('led_g') # 加湿器使用board.json中led_g节点定义的GPIO,对应esp32外接的的绿灯 airconditioner.open( 'led_b') # 空调使用board.json中led_b节点定义的GPIO,对应esp32外接的上的蓝灯 # 请替换物联网平台申请到的产品和设备信息,可以参考文章:https://blog.csdn.net/HaaSTech/article/details/114360517 get_wifi_status() connect_lk(productKey, deviceName, deviceSecret) upload_temperature_and_Humidity() i2cObj.close()
# "alarmLight" - 代表报警灯的当前状态 uploadData = {'params': data} # 上传燃气传感器检测电压信息和报警信息到物联网平台 device.postProps(uploadData) # 每2秒钟上报一次 utime.sleep(2) if __name__ == '__main__': # 硬件初始化 # 初始化 ADC adcObj = ADC() # ADC通道对象 adcObj.open("mq2") # 按照board.json中名为"mq2"节点的配置初始化ADC设备对象 mq2Dev = mq2.MQ2(adcObj) # 初始化MQ2设备对象 # 初始化LED所连接GPIO alarmLed = GPIO() alarmLed.open('led') # 加湿器使用board.json中led_r节点定义的GPIO,对应LED灯 led_control(alarmOn) # 关闭报警灯 # 请替换物联网平台申请到的产品和设备信息,可以参考文章:https://blog.csdn.net/HaaSTech/article/details/114360517 # global productKey, deviceName, deviceSecret ,on_request, on_play get_wifi_status() connect_lk(productKey, deviceName, deviceSecret) upload_gas_detector_state() adcObj.close() alarmLed.close()
# 上传火焰传感器检测电压信息和报警信息到物联网平台 device.postProps(upload_data) # 每2秒钟上报一次 utime.sleep(2) if __name__ == '__main__': global fireDev alarm_on = 0 # 硬件初始化 # 初始化 ADC adcDev = ADC() adcDev.open("fire") fireDev = fire.Fire(adcDev) # 初始化LED所连接GPIO ledDev = GPIO() ledDev.open("led") alarm_control(alarm_on) # 关闭报警灯 wlan = network.WLAN(network.STA_IF) #创建WLAN对象 # 请替换物联网平台申请到的产品和设备信息,可以参考文章:https://blog.csdn.net/HaaSTech/article/details/114360517 get_wifi_status() connect_lk(productKey, deviceName, deviceSecret) upload_fire_detector_state() adcDev.close() ledDev.close()
import sh1106 import utime from driver import SPI from driver import GPIO spi0 = SPI() spi0.open("oled_spi") gpio_dc = GPIO() gpio_dc.open("oled_dc") gpio_res = GPIO() gpio_res.open("oled_res") display = sh1106.SH1106_SPI(width=132, height=64, spi=spi0, dc = gpio_dc, res = gpio_res) # display.init_display() display.fill(1) display.show() display.test()
# coding=utf-8 # This is a sample Python script. import utime from driver import GPIO def cb(obj): print("gpio callback test") print(obj) print("start led test") gpio = GPIO() gpio.open("GPIO23") gpio.enableIrq(cb) utime.sleep_ms(200) gpio.disableIrq(cb) gpio.clearIrq(cb) gpio.close() print("end led test")
from driver import GPIO import utime as time import audio import radar #创建并打开一个GPIO实例 gpiorDev=GPIO() gpiorDev.open('radar') #创建一个radar实例 radarDev=radar.RADAR(gpiorDev) #创建并打开一个Audio实例 aud=audio.Audio() #开启音频播放使能 aud.set_pa() #设置音量 aud.setVolume(5) #循环检测是否有人经过 while True: if radarDev.detect()==1: print("detect body") aud.play('/data/pyamp/detect_body.mp3') else: print("no body") time.sleep(2)
def ledInit(): global ledDev ledDev = GPIO() ledDev.open("led")
wdt = WDT() wdt.open('wdt') wdt.feed() global g_connect_status, net, device, deviceSecret, deviceName, productKey, productSecret, device_dyn_resigter_succed, cloud_led g_connect_status = False net = None device = None deviceSecret = None deviceName = None #input your productKey and productSecret productKey = "yourProductKey" productSecret = "yourProductSecret" device_dyn_resigter_succed = False led1 = GPIO() #当iot设备连接到物联网平台的时候触发'connect' 事件 def on_connect(data): print('***** connect lp succeed****') #当iot云端下发属性设置时,触发'props'事件 def on_props(request): print('clound req data is {}'.format(request)) #当iot云端调用设备service时,触发'service'事件 def on_service(id, request): print('clound req id is {} , req is {}'.format(id, request))