爱板网论坛

查看: 248|回复: 0

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

[复制链接]

主题

好友

152

积分

童生

  • TA的每日心情
    开心
    2018-3-18 11:45
  • 签到天数: 11 天

    连续签到: 2 天

    [LV.3]偶尔看看II

    发表于 2018-3-2 22:23:12 |显示全部楼层
    本帖最后由 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中了。

    2018-03-02_214421.png


    选择stm32f1包

    2018-03-01_182025.png

    包安装向导

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


    2018-03-02_214204.png

    工程下载



    2018-03-01_181851.png

    keil工程导入

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


    2018-03-02_214735.png

    选择stm32f103c8芯片

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

    2018-03-02_215234.png


    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函数内容进行了简单的介绍。

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    关闭

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

    手机版|爱板网

    GMT+8, 2018-6-18 17:39 , Processed in 0.101206 second(s), 13 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-5   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001056号

    Powered by Discuz!

    返回顶部