本帖最后由 robe.zhang 于 2018-3-19 14:37 编辑
【涂鸦 TYDE3.0试用】5.涂鸦板sdk源码移植
涂鸦物联网开发教程目录
现在的环节还是在第三步<嵌入式开发>,所有的核心东西都在这里了,不再开贴,全部完整的都写进来。 涂鸦网页也有个说明,怎么用这个sdk源码,其实从上一个汇总可以看出来,协议初始化,然后uart服务一开,框架上的修改就结束了,然后是代码具体实现,码代码也很简单,有hal库,卡卡卡一调用,整个工程就结束了,然后debug调试,调试好就能连网络连上涂鸦云就可以用了,整个产品开发就结束了。
移植过程也可以按照官方的说明一步步开搞:https://docs.tuya.com/cn/mcu/mcu-sdk.html
小提示:说明文档也很有意思,有个 #error 提示,搜搜 #error 提示,按照说明照着做完就行,或者编译一下工程,有什么错,排查干净也行。 码完代码 #error提示,建议不要删,保留着注释掉,稍后还有用还可以搜搜
说一下我的开发环境: - Win10系统
- STM32CobeMX V4.23.0
- STM32Cube_FW_F1_V1.6.0
- mdk-V5.24.2.0
移植过一遍,没跑起来,现在从头开始再重新测试,当然也可以拿demo代码改,为了研究透彻,自己从0开撸: 现在已经发现的问题1:编译遇到了一个问题,四个宏定义和hal库的枚举重名冲突了编译不过,我把涂鸦的源码改了:
问题2:hal库串口中断函数太长,连续接受模式数据丢失,只能接受到大概50%的数据,不连续发送没事,准备重写串口接收中断函数,然后连续压力测试,测过了万无一失再继续。 这个问题还有一种解:单片机终端服务函数太长处理不过来,可以把单片机频率提升一倍,估计会好很多
(前面超频就用到了,没关系这个项目完了,直接拿我的 NUCLEO-F767 还是用hal库串口中断服务函数试试。涂鸦板中间有几个跳线帽,可以把WiFi模块和板载mcu断开,连接到NUCLEO-F767上,跑 216Mhz试试,是72Mhz的整整三倍)
这个问题还有另一种解:不让他连续发送,发送一字节delay一会,再发送,这样接受的数据也不会出问题,嘿嘿解:重新看了一遍源码,是我测试太严苛了。不用管他也没事。
协议中心跳,产品信息,都没事,现在调试 WiFi状态,这几天进度有点慢,嘿嘿 2018.3.19
<未完待续>
涂鸦物联网开发教程目录
|