回答

收藏

[原创] TYDE3.0开发板使用体验(二)

物联网 物联网 2775 人阅读 | 0 人回复 | 2018-03-02

本帖最后由 caonima123 于 2018-3-2 22:24 编辑

本篇介绍stm32开发环境搭建以及涂鸦官方stm32工程解析。
一,keil mdk5安装
keil mdk是开发stm32非常常见的工具软件,国内多数stm32教程编写者也都采用此软件进行教学,所以大多数stm32学习者应该都很熟悉。
keil mdk可以在多个渠道下载,目前keil mdk4和keil mdk5是用的比较多版本,这里以keil mdk5.15作演示。
将下载到的安装包按照提示安装即可,keil mdk5软件不再内置众多的芯片库,而是将二者分离,用户可以根据个人需求安装所需的芯片包,为了开发TYDE3.0我们需要安装stm32f1_DFP_LIB包。这个包可以在Keil官网下载到(http://www.keil.com/dd2/),下载完成后双击此文件就可以自动安装到keil mdk中了。



选择stm32f1包


包安装向导

二,涂鸦stm32工程导入
从涂鸦官网下载彩灯demo工程文件,解压后用keil mdk打开uvproject文件。



工程下载




keil工程导入

注意,导入工程后还需对工程进一步设置才可以编译成功——需要对工程选项中的DEVICE选项卡进行设置。



选择stm32f103c8芯片

三,tuya 彩灯demo工程初步分析。
分析单片机c语言工程可以从main函数入手,因为c语言用户程序都是是从main函数开始执行的。



main函数

彩灯工程的main函数中前几行(159-174行)是对flash中存储的信息进行处理,如果magic_code代码不为0或0xff则对flash相应地址的数据清空。因为正常情况下magic_code应该为0或者0xff,所以检测到magic_code不为0或0xff则需要对flash清零。
RCC_Configuration();函数中对本工程用到的时钟进行了配置。
NVIC_Configuration();函数中配置了中断向量组。
Bsp_Init();函数中对串口,定时器等资源进行了初始化。
wifi_protocol_init();函数中对wifi模组进行了初始化。
RGB_Power_Control();函数中对RGB灯相关函数进行初始化,主要是从flash中读取RGB值,开关值然后操作RGB灯。
最后是while死循环,在这个循环中wifi_uart_service,wifi模组串口服务函数,Key_Scan();wifi_work_state_led();按键扫描以及
wifi工作模式指示灯处理函数一直轮流执行。
四,小结一下
本帖对stm32开发环境进行了简单介绍,且对本TYDE3.0开发板要用到的包安装方法进行了演示,然后对tuya 彩灯工程的导入进行了演示,最后对tuya 彩灯工程的main函数内容进行了简单的介绍。

分享到:
回复

使用道具 举报

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

本版积分规则

关闭

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