泰凌微TLSR825x智能照明解决方案开发之实例解析
一 前记
前几天,看到了一个笑话,一个朋友在群里吼道,老婆送的皮带,用了半年之后,怎么里面掉出来一个电路板,这个是是啥?
笔者看了回复道,哥们,老婆不放心你啊。
在这个万物都可智能的时代,产品不加上智能,都不好意思说你的产品是高科技产品。这不来了,客户提出新的需求了,他要做
做一个智能的灯。咋个智能法呢?
1 有流光,冷白,暖白,渐变等灯光的效果可以切换。
2 可以根据时间和周围环境亮暗来调整灯光亮度。
3 可以通过手机APP和按键双重控制开关。
本着有求必应的态度,我这不就开始倒腾起来了。
二 代码解析
1 ble无线通信,这个就是通过APP下发命令进行解析,以前讲过ble的通信流程,这里不做赘述了。
2 灯光效果函数:
流光函数:
void app_fluxay_mode_set(void)
{
uint8_t tmp_rgb_a = OFF,tmp_rgb_b = OFF,tmp_rgb_c = OFF,tmp_rgb_d = OFF; #if 1
if(ON == fluxay_flow_four)
{
fluaxy_flow_mode_reset_out(); if(APP_MODE_ID_FLUXAY != app_xp_get_mode_id())
{
app_xp_set_mode_id_no_flash(APP_MODE_ID_FLUXAY); } }
渐变灯函数:
void app_pwm_led_loop(int data,uint8_t from_state)
{
printf("app_pwm_led_loop data :%d\r\n",data);
static uint8_t local_led_state = 0; //daylight
if (data>=0&&data<=100)
{
app_pwm_rgb_stop();
local_led_state = 1;
app_pwm_cw_on(100-data);
app_pwm_ww_on(data);
}
3 按键处理:
unsigned int key_debounce_filter( u32 mtrx_cur[], u32 filt_en ){
u32 kc = 0;
#if (LONG_PRESS_KEY_POWER_OPTIMIZE)
unsigned char matrix_differ = 0;
#endif
static u32 mtrx_pre[ARRAY_SIZE(drive_pins)];
static u32 mtrx_last[ARRAY_SIZE(drive_pins)];
foreach_arr(i, drive_pins){
u32 mtrx_tmp = mtrx_cur[i];
#if (STUCK_KEY_PROCESS_ENABLE)
stuckKeyPress[i] = mtrx_tmp ? 1 : 0;
#endif
if(
4 传感器处理
一个光敏传感器,通过ADC信号,来采集光线的强度,这个后期进行专门的讲解。
三 效果展示
初步的demo已经搭建好,接下来就是产品的细节打磨和PCBA的适配了。

四 总结备忘
825x系列作为一个mcu+ble的平台芯片,在氛围灯市场占有一定的市场份额。具有性价比高,功耗低,功能强大等特点。
加上自研的系统,开发这个产品真是速度快啊。
泰凌微TLSR825x智能照明解决方案开发之实例解析的更多相关文章
- [TLSR8267] 泰凌微 telink tlsr8267 ble ADC 用法浅谈
1.读 datasheet 在<DS_TLSR8267-E21_Datasheet for Telink BLE SoC TLSR8267.pdf>第11章详细介绍了ADC相关属性及参数. ...
- GVS智能照明再下一城,前方到站贵阳地铁2号线!
近期,"新基建"又频频刷屏,也为城轨交通建设快速发展提供了广阔的想象空间. 在新基建的导向作用下,越来越多城市加入地铁阵营.如果说普铁和高铁作为城市的发展窗口,那么地铁则是城市交通 ...
- 国内物联网平台(5):机智云IoT物联网云服务平台及智能硬件自助开发平台
国内物联网平台(5)——机智云IoT物联网云服务平台及智能硬件自助开发平台 马智 平台定位 机智云平台是致力于物联网.智能硬件云服务的开放平台.平台提供了从定义产品.设备端开发调试.应用开发.产测.运 ...
- 国内物联网平台初探(五) ——机智云IoT物联网云服务平台及智能硬件自助开发平台
平台定位 机智云平台是致力于物联网.智能硬件云服务的开放平台.平台提供了从定义产品.设备端开发调试.应用开发.产测.运营管理等覆盖智能硬件接入到运营管理全生命周期服务的能力. 机智云平台为开发者提供了 ...
- 理想的GVS智能照明体验,就在汕头迎宾花园酒店
汕头,依海而生,海在城中央是汕头特色. 汕头湾将汕头分为南北两岸,造就绝美市区海岸线,一碧万顷的海湾,焕然一新的海港,在市区就能直接看海. 在北山湾,动可结伴冲浪,静可观海吹风,动静都是一种快乐. 当 ...
- 【NetDIY智能主控】开发计划
经过一个轮回,硬件开发.硬件创业又被推到了历史的前台. 面向低端.初级的硬件爱好者,以Arduino和81单片开发板为核心的开源硬件越来越深入人心,参与的人群越来越多,相关硬件和周边模块也越来越便宜. ...
- WCF分布式开发步步为赢(2)自定义托管宿主WCF解决方案开发配置过程详解
上一节<WCF分布式框架基础概念>我们介绍了WCF服务的概念和通信框架模型,并给出了基于自定义托管服务的WCF程序的实现代码.考虑到WCF分布式开发项目中关于托管宿主服务配置和客户端添加引 ...
- 智能电视TV开发---直播视频客户端结构设计和实现
在智能电视TV开发---客户端和服务器通信里面我们实现了客户端和服务端的简单通信,接下来我们做一个简单的客户端界面,来实现手机端来操控智能电视的TV端. 一.存储视频的结构设计 我们在做客户端的时候, ...
- 微控工具xp模块-开发版[微信(wechat)二次开发模块]
http://repo.xposed.info/module/com.easy.wtool 微控工具xp模块-开发版[微信(wechat)二次开发模块] 基于xposed框架的微信二次开发模块,方 ...
- 智能家居APP开发
智能家居APP开发 APP开发技术qq交流群:347072638 前言,随着智能硬件设备的流行,智能家居開始红火,智能家居就是家用电器的智能化.包含智能锁,灯,空调,灯,音箱等等,移动设备通过WIFI ...
随机推荐
- .NET Core开发实战(第2课:内容综述)--学习笔记
02 | 内容综述 课程目标 掌握 .NET Core 微服务架构的最佳实践 成长为一个具备良好架构设计能力的架构师 课程内容 第一部分 .NET Core 的必备知识 第二部分 .NET Core ...
- MyBatis踩坑之单字符条件比较
背景 Mybatis中可以使用 <choose><when>...</when></choose> 语句来实现条件选择,<when> 标签含 ...
- NC24961 Hotel
题目链接 题目 题目描述 The cows are journeying north to Thunder Bay in Canada to gain cultural enrichment and ...
- SSD 接口简介——SATA/SAS
SSD盘和主机端通过各种各样的接口互联,这里种类比较多,而且有些既是接口又是协议,有些既是接口又是规范,所以很容易一头雾水,于是这篇文章主要目的是梳理好这些不同的概念,只是梳理并不做深入讲解. 一. ...
- ORA-16019 和 ORA-16018 错误的处理方法
一. ORA-16019 和 ORA-16018 错误产生描述 同事在修改归档目录,一不小心把参数设置错误了, 他设置的是log_archive_dest参数. 这个参数和默认log_archive_ ...
- Jsp+Servlet实现文件上传下载(二)--文件列表展示
接着上一篇讲: Jsp+Servlet实现文件上传下载(一)--文件上传 点击打开链接 本章来实现一下上传文件列表展示,同时优化了一下第一章中的代码. 废话少说,上代码 --------------- ...
- win32- 窗口模板
主要用于日常的win32窗口的测试 #include <Windows.h> #include <stdio.h> #include <iostream> usin ...
- 文心一言 VS 讯飞星火 VS chatgpt (202)-- 算法导论15.3 1题
一.对于矩阵链乘法问题,下面两种确定最优代价的方法哪种更高效?第一种方法是穷举所有可能的括号化方案,对每种方案计算乘法运算次数,第二种方法是运行RECURSIVE-MATRIX-CHAIN.证明你的结 ...
- pwd模块
# pwd模块提供了获取UNIX平台用户的账户与密码信息(通过文件/etc/passwd),在所有的UNIX版本平台都可以用. # pwd模块返回的是一个类似元组的对象,该对象的各个属性对应于pass ...
- 前端面试题(四)—— 事件委托(Event Delegation)
一.什么是事件委托 事件委托(Event Delegation)是一种常用的技术. 它利用事件冒泡的特性,在父元素上监听事件,而不是在子元素上直接添加事件监听器. 通过在父元素上捕获事件,然后根据事件 ...