Kara 发表于 2022-10-24 19:24:03

超低代码IoT芯片App远程控制3路Led灯接入机智云

本帖最后由 Kara 于 2022-10-24 19:29 编辑

超低代码IoT芯片App远程控制3路Led灯接入机智云
一、实现的功能描述
App远程控制开发板上的红黄绿三路LED灯的亮灭。
二、 UI配置描述
本例程中所包含的UI配置代码如下:UI = ""例程中用了3个类型为 “3” 的控件,关于该类型控件的具体描述可以参看官网中关于ShineBlink云的教程。基于以上UI配置,当设备上电后,我们在小程序中可以看到系统为我们自动生成的小程序页如下:
三、本实验教学目的掌握基于ShineBlink的:
[*]基于WiFi或4G接入ShineBlink免开发云,并自动生成微信小程序
[*]GPIO控制开发板上的3个LED灯(D0接红灯,D8接黄灯,D9接绿灯)
四、本实验涉及的模块3个LED灯在开发板上的位置如下:
注意:D0端口同时接:蜂鸣器(BUZ)、3610震动电机(MOT)、红色LED_PWM(LED)。由于本实验用到红色LED,所以一定要将黄色跳线帽跳至上图指示的LED位置。

五、完整源代码(WiFi版本)--配置开发板上D0引脚为输出GPIO来控制红色Led灯
LIB_GpioOutputConfig("D0","STANDARD")
--配置开发板上D8引脚为输出GPIO来控制黄色Led灯
LIB_GpioOutputConfig("D8","STANDARD")
--配置开发板上D9引脚为输出GPIO来控制绿色Led灯
LIB_GpioOutputConfig("D9","STANDARD")
--设置UI配置,该配置决定了小程序页面显示的控件具体有哪些什么,名字是什么
UI = ""
--设置C2开发板自带的WiFi连接云
ssid = "MyWiFiName" --修改成您的WiFi路由器账号
pswd = "abc123" --修改成您的WiFi路由器密码
LIB_CloudConfig("S0", "WIFI_C2", 0, "SBK_01", UI, ssid, pswd)
while(GC(1) == true)
do
    --查询是否收到服务器下发的数据
    recv_flag, msg = LIB_CloudRecv()
    if recv_flag == 1 then
      --查看服务器是否下发控制名字为"LedRed"红灯的指令
      if string.find(msg, "LedRed") ~= nil then
            Json_Val = LIB_JsonParse(msg, "$.LedRed")
            if Json_Val == "0" then
                LIB_GpioWrite("D0",1) --红灯灭
            elseif Json_Val == "1" then
                LIB_GpioWrite("D0",0) --红灯亮
            end
      end
      --查看服务器是否下发控制名字为"LedYellow"黄灯的指令
      if string.find(msg, "LedYellow") ~= nil then
            Json_Val = LIB_JsonParse(msg, "$.LedYellow")
            if Json_Val == "0" then
                LIB_GpioWrite("D8",1) --黄灯灭
            elseif Json_Val == "1" then
                LIB_GpioWrite("D8",0) --黄灯亮
            end
      end
      --查看服务器是否下发控制名字为"LedGreen"红灯的指令
      if string.find(msg, "LedGreen") ~= nil then
            Json_Val = LIB_JsonParse(msg, "$.LedGreen")
            if Json_Val == "0" then
                LIB_GpioWrite("D9",1) --绿灯灭
            elseif Json_Val == "1" then
                LIB_GpioWrite("D9",0) --绿灯亮
            end
      end
    end
end

六、实验现象
将上面代码中的ssid和pswd改成您的路由器账号和密码,然后将代码复制到开发板中并运行十几秒之后,我们用微信扫描开发板背后的二维码,在弹出的微信小程序中我们就可以远程控制开发板上的继电器的闭合和断开了。七、4G版本
4G版本和WiFi版本的代码几乎一样,我们只需做如下两处调整即可实现4G远程:(1)将4G模块插入开发板上的4G插槽,如下图:(2)将代码中WIFI初始化改成4G初始化即可,调整如下:将原来WiFi的:--设置C2开发板自带的WiFi连接云
ssid = "abcdef" --修改成您的WiFi路由器账号
pswd = "123456" --修改成您的WiFi路由器密码
LIB_CloudConfig("S0", "WIFI_C2", 0, "SBK_01", UI, ssid, pswd)
调整成4G后的:
--设置外部4G模块连接云
LIB_CloudConfig("S0", "4G_ML302", 0, "SBK_01", UI, "NO_GPS")


页: [1]
查看完整版本: 超低代码IoT芯片App远程控制3路Led灯接入机智云