加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入

【RT-Thread作品秀】家庭照明控制系统

2020/12/20
995
服务支持:
技术交流群

完成交易后在“购买成功”页面扫码入群,即可与技术大咖们分享疑惑和经验、收获成长和认同、领取优惠和红包等。

虚拟商品不可退

当前内容为数字版权作品,购买后不支持退换且无法转移使用。

加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论
放大
方块图(2)
  • 方案介绍
  • 相关文件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

【RT-Thread作品秀】家庭照明控制系统

作者:汪文龙

概述 

       普通的照明系统开关太多,整合到一处会方便一些

开发环境

        硬件:ART PI

        RT-Thread版本: 4.0.2

        开发工具及版本:RTT studio

RT-Thread使用情况概述

        内核: main进程,touchgfx进程,messagequeue,

        组件:touch设备驱动程序

        软件包:ft5426驱动包

        硬件:IIC

        库:TouchGFX Library

硬件框架 

        ART PI开发板引脚A1, A2,A3,A6,A7灌流方式驱动5个LED灯珠。灯珠共阳。

 

软件框架说明 

        RTT和TouchGFX初始化完成后,每当屏幕上的滑块滑动,都会调用相应的回调函数。在回调函数里改变相应灯珠的PWM

 

软件模块说明

        TouchGFX:在touchgfxdesigner里创建五个滑块,并且设置相应的 interaction。生成的虚函数在xxxviewbase.hpp, 将这个虚                            函数在 xxxview.hpp里继承,xxxview.cpp里实现即可。

        PWM调光:由于尝试使用PWM设备不成功,这里使用的是软件调光。开 一条进程刷就行。

演示效果

 

演示视频:

比赛感悟

        这次比赛, 是我第一次接触RTT这款国产操作系统。在此之前,我使用过,ucos,freertos,和cmsis封装过的freertos。在内核方面的区别,印象比较深刻的也只有RTT的消息队列多了一个发送紧急消息,这个功能在实际应用中应该是非常有效的。另一个区别是队列类的内核对象可以按优先级排列出队。其实总体来说,RTT内核和其他的操作系统感觉差别不大。让我感到惊艳的是RTT的生态环境太好了,适配了那么多的驱动,有那么多活跃的大佬在为我们这些入门小白服务,给RTT的“客服”们点赞。

       当然,问题也是有的,比如RTT在配置env控制台中未出现的选项时候,就比较头痛。我的项目里需要用到PWM,Kconfig文件修改卡了我好几天,最终还是选择放弃,pwm用进程实现(幸好不是什么非常精准的pwm控制)。希望RTT可以在这方面优化一下,简化一下操作。

 

PS:源码在Gitee里,链接已经放上了。

       电路过于简单,五颗用引脚驱动的LED。在代码里一目了然。就不放了。

        感谢RTT交流群里大佬,kk,王海靖,李子木,私聊不回,感谢你们的帮助。

  • RTT_TouchGFX.rar
  • 代码地址.txt
  • 【RT-Thread作品秀】家庭照明控制系统.docx

相关推荐

电子产业图谱