6回答

0收藏

TYDE3.0 涂鸦智能 IoT开发板程序移植——温湿度控制仪

物联网 物联网 6345 人阅读 | 6 人回复 | 2018-02-27

本帖最后由 baomihuadexiaoqingdiao 于 2018-2-27 21:41 编辑

     敬告:本篇教程图片较多,警惕流量 !非常适合小白学习使用,同时还望大神不吝赐教!
     这段时间一直在研究TYDE3.0 开发板,因为过“
春劫”,并且有一个嗷嗷待哺的小娃娃,所以耽搁了一些时间,没有更新!抱歉了!
      收到TYDE3.0 已经很长时间了,因为板载的模块十分有限,所以考虑手上现有的模块,从简单的开始吧,因为除了彩灯的demo,还有一个空气净化器的demo,正好手上有一个DHT11,这个应用电路很简单,只需在1,2脚之间并联一个5.1k电路就可以了,电路图如下:



     接下来,开始做一个简单的程序移植!
1.创建产品,首先选择产品功能。



我全选上了,方便以后设计,就不用为重新添加功能而修改程序,当然功能虽然选上了,可以在app定制界面可以隐去,很方便,在编辑完页面后,可以用手机扫一下右面二维码预览一下,界面非常漂亮!接下来到硬件调试界面。



下载MCU开发包,接下来开始程序移植吧!
2.开发软件用的是keil 5,首先看一下,我们应该看一下应该修改哪些地方,我为大家一一标出!
1.修改产品ID,打开下载的文件包,解压后得到8个文件,其中需要我们修改的是protocol.h和protocol.c。首先打开空气净化器demo的protocol.h文件和下载protocol.h文件,接下来,开始从新产品的MCU一一对应移植到空气净化器demo中。需要移植的内容,我将截图出来



2.接下来修改protocol.c文件,分别打开这两个文件



值得注意的是,移植数据上报程序时,需要根据你想实现的功能编写程序。
eg:
  1. <b><font face="仿宋, 仿宋_GB2312" size="3">static unsigned char dp_download_switch_handle(const unsigned char value[], unsigned short length)
  2. {
  3.   unsigned char ret;
  4.   unsigned char power_switch;
  5.   
  6.   power_switch = mcu_get_dp_download_bool(value,length);
  7.   if(power_switch == 0)
  8.   {
  9.     //开关关
  10.   }
  11.   else
  12.   {
  13.     //开关开
  14.   }
  15.   ret = mcu_dp_bool_update(DPID_SWITCH,power_switch);
  16.   if(ret == SUCCESS)
  17.     return SUCCESS;
  18.   else
  19.     return ERROR;
  20. }</font></b>
复制代码
如果你想实现控制继电器
  1. <b><font size="3" face="仿宋, 仿宋_GB2312">static unsigned char dp_download_switch_handle(const unsigned char value[], unsigned short length)
  2. {
  3. unsigned char ret;
  4. unsigned char power_switch;

  5. power_switch = mcu_get_dp_download_bool(value,length);
  6. if(power_switch == 0)
  7. {
  8. //开关关
  9. <blockquote>FlashBuffer.power_switch = SET;</font></b>
复制代码
3.接下来,如果你编译的会,会出现很多错误,有很多提示未定义,需要修改include.h,在这里对一些变量进行定义。



4.定义输出引脚,需要修改hard文件夹内的文件,因为本次是在demo的基础上修改程序。所以直接修改hal_rgb.h文件即可。



在这里对输出引脚进行定义。至此,移植程序需要修改的几个文件已经修改完毕,剩下的需要大家多多试验,很容易就可以学会的!
5.接下来开始编译,需要对keil进行一些设置。



设置完成后,就可以编译了。完成后会在tuya_air_purifier_demo_stm32_v3.0.1\tuya_air_purifier_demo_stm32_v3.0.1\Project\MDK-ARM\obj文件夹内生成一个bin文件。
6.程序烧写方法,参考官方说明书,值得注意以下几个点。




    到此,一款新产品就可以通过手机控制使用了,是不是很简单!我会在文末附上我得源程序,大家可以直接下载使用!如果有疑问,欢迎留言!
    最后,再次感谢涂鸦科技和爱板网!谢谢!
温湿度显示仪.zip (5.43 MB, 下载次数: 98)





分享到:
回复

使用道具 举报

回答|共 6 个

倒序浏览

沙发

baomihuadexiaoqingdiao

发表于 2018-2-27 21:41:42 | 只看该作者

自己的楼自己坐。。。。
板凳

可乐丸子

发表于 2018-2-28 11:11:40 | 只看该作者

你的继电器是低电平触发还是高电平触发?
地板

baomihuadexiaoqingdiao

发表于 2018-2-28 13:25:23 | 只看该作者

可乐丸子 发表于 2018-2-28 11:11
你的继电器是低电平触发还是高电平触发?

继电器是低电平触发,,,,,15字啊啊啊
5#

baomihuadexiaoqingdiao

发表于 2018-2-28 13:29:42 | 只看该作者

可乐丸子 发表于 2018-2-28 11:11
你的继电器是低电平触发还是高电平触发?

继电器模块一般可以选择高电平/低电平触发!
6#

wfx777888

发表于 2020-5-9 09:29:08 | 只看该作者

师傅你那个温湿度传感器接到那个脚上了啊
回复 支持 反对

使用道具 举报

7#

onepiece120116

发表于 2020-8-26 11:53:44 | 只看该作者

楼主有bootload的源码分享一下吗
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条