完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
`` 本帖最后由 feiji323 于 2015-11-20 13:54 编辑 本文来自tisan社区的青春无悔。 Tisan开发板+ WEBIDE组件堆积木教程 (设置LED颜色+读取LED当前设定颜色值+温度值+湿度值+开关(继电器)控制) ![]() 学习本课程前,看群里视频教程, ![]() 新手必看-webIDE 编译三色灯+开关(微信控制演示) 新手必看-webIDE自定义组件(电机+开关) 先学会如何添加自定义组件后 我们自己也自定义一个LED RGB传感器吧。 功能介绍 一、功能介绍 1、设置 2、读取LED当前颜色值+设定LED相关RGB颜色 备注:读取LED当前颜色值,通过点击刷新① 设定LED相关RGB颜色,通过点击刷新② 3、读取温度值 4、读取湿度值 5、开关(继电器)控制 ![]() ![]() WEBIDE修改 二、WEBIDE修改 第一步,你已经有一个模块是可以控制并在你的手机端FREEIOT上能互动控制基础上修改 ![]() 1 点击添加产品 ![]() 2 进入到当前页面状态 ![]() 3 添加产品组件 ![]() 4 公共组件库中添加三色灯到产品组件里面 ![]() 5 自定义组件 按上图右边这样创建lednum,然后选中lednum点击确定 到产品组件里面 6 添加完成后点击保存,就生成如上界面 ![]() ![]() ![]() ![]() 8 这样就完成上述WEBIDE的创建工作 tisan-demo-plug修改 三、tisan-demo-plug修改 第一步:到github上下载项目文件 https://github.com/tisan-kit/tisan-demo/archive/master.zip 第二步:如何添加工程请看文档 https://sw0813.gitbooks.io/tisan-doc/content/ 第三步: tisan-demo-master 拷贝一份 改名为 tisan-demo-plug ![]() ![]() ![]() ![]() ![]() --------->提示(背景色蓝色部分) #define LEDNUMB_OBJECT_NO 2 struct lednumb { uint8 R; uint8 G; uint8 B;}; void ICACHE_FLASH_ATTR lednumb_init() { // TODO: add your object init code here. struct PWM_APP_PARAM light_param; struct PWM_INIT light_init; light_param.pwm_freq=25000; light_param.pwm_duty[0]=255; light_param.pwm_duty[1]=255; light_param.pwm_duty[2]=255; light_init.io_num=3; light_init.io_id[0]=13; light_init.io_id[1]=14; light_init.io_id[2]=15; peri_rgb_light_init(light_param,light_init);} void ICACHE_FLASH_ATTR lednumb_set(struct lednumb* value) { // TODO: implement object set function here. // the set function read value and operate the hardware. struct PWM_APP_PARAM light_value; light_value.pwm_freq=25000; light_value.pwm_duty[0] = 255-(value->B); light_value.pwm_duty[1] = 255-(value->R); light_value.pwm_duty[2] = 255-(value->G); peri_rgb_light_param_set(light_value);} void ICACHE_FLASH_ATTR lednumb_get(struct lednumb* value) { // TODO: implement object get function here // get function retrieve hardware status and assign it to value. struct PWM_APP_PARAM light_value; light_value = peri_rgb_light_param_get(); value->R = 255 -light_value.pwm_duty[0]; value->G =255 - light_value.pwm_duty[1]; value->B = 255 -light_value.pwm_duty[2]; 。 。 。 lednumb_object_unpack(PARAMS* params) { struct lednumb* lednumb = create_lednumb(); lednumb->R = get_next_uint8(params); lednumb->G = get_next_uint8(params); lednumb->B = get_next_uint8(params); lednumb_set(lednumb); delete_lednumb(lednumb); } void ICACHE_FLASH_ATTR lednumb_object_init() { lednumb_init(); pando_object lednumb_object = { LEDNUMB_OBJECT_NO, lednumb_object_pack, lednumb_object_unpack, }; register_pando_object(lednumb_object); ![]() ![]() ①相关文件内容--------->提示(背景色蓝色部分) #include "../../peripheral/peri_dht1122.h" #include "../../pando/pando_object.h" #include "c_types.h" #include "user_interface.h" #include "humiture.h" // add your own includes below #define HUMITURE_OBJECT_NO 4 humiture_object_init() { humiture_init(); pando_object humiture_object = { HUMITURE_OBJECT_NO, humiture_object_pack, humiture_object_unpack, }; register_pando_object(humiture_object); ![]() ②相关文件内容--------->提示(背景色蓝色部分) #include "../../pando/pando_object.h" #include "../../peripheral/peri_jdq.h" #include "c_types.h" #include "user_interface.h" #include "plug.h" // add your own includes below #define PLUG_OBJECT_NO 5 plug_init() { // TODO: add your object init code here. peri_jdq_init(5); plug_object_init() { plug_init(); pando_object plug_object = { PLUG_OBJECT_NO, plug_object_pack, plug_object_unpack, }; register_pando_object(plug_object); ![]() ③相关文件内容--------->提示(背景色蓝色部分) #include "../../peripheral/peri_dht1122.h" #include "../../pando/pando_object.h" #include "c_types.h" #include "user_interface.h" #include "temperature.h" // add your own includes below #define TEMPERATURE_OBJECT_NO 3 void ICACHE_FLASH_ATTR temperature_object_init() { temperature_init(); pando_object temperature_object = { TEMPERATURE_OBJECT_NO, temperature_object_pack, temperature_object_unpack, }; register_pando_object(temperature_object); ![]() ![]() ①相关文件内容自己账户WEBIDE对应的产品Key--------->提示(背景色蓝色部分) #ifndef __DEVICE_CONFIG_H__ #define __DEVICE_CONFIG_H__ #define PANDO_PRODUCT_KEY "fa22b6061c61faf809c97de29f7d983612a4a1157cbf9b67e78d57da4259f412" #endif ![]() ②相关文件内容--------->提示(背景色蓝色部分) #include "../peripheral/driver/uart.h" #include "objects/led.h" #include "os_type.h" #include "user_interface.h" #include "../peripheral/peri_key.h" #include "wifi_config.h" #include "../pando/pando_framework.h" #include "objects/temperature.h" #include "objects/plug.h" #include "objects/lednumb.h" void user_init(void) { uart_init(115200, 115200); // serial bound rate:11520. //long press gpio4, enter into wifi config mode. peri_single_key_init(4, user_key_long_press_cb, NULL); // add you object init here. led_object_init(); lednumb_object_init(); temperature_object_init(); humiture_object_init(); plug_object_init(); pando_framework_init(); ![]() ![]() 控制板跳线连接 四、控制板跳线连接 ![]() ![]() ![]() |
|
相关推荐
9 个讨论
|
|
入门的好东西。
![]() |
|
|
|
|
|
只有小组成员才能发言,加入小组>>
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-12 12:41 , Processed in 0.769705 second(s), Total 63, Slave 52 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191