蓝牙mesh初尝试--空气净化器的小升级

发布时间:2024-01-23  
是基于BLE开发的,所以BLE的SDK包我们也需要,这里我使用的是SDK16

本文引用地址:



由于Nordic提供的工程是在SES下建立的,所以我预先在电脑中安装好了SES,这里不多赘述。下载这两个文件之后,我在电脑中新建了一个文件夹,把这两个文件放到了同一目录下,接着打开了SDK for 的example文件夹,这里面存放着许多例程,这里我基于light-lightness例程来修改,以达到最终目的。


light-lightness例程实际上就是控制led亮度的一个例程,使用的pwm来控制led亮度,这其实和我的空气净化器需要的一路电机转速控制很是类似,故我在这个例程上修改,添加其他模型。点开light-lightness文件夹之后,发现里面还有两个文件夹,一个是server一个是client,我们使用server来修改,点开之后打开NRF52832的SES工程,如下


观察左侧的工程树,我们可以发现其实和BLE的工程还是有比较多的类似之处,各个层级分层目录很是明显,首先我编译一下工程,发现没有错误没有警告。接着就可以开始修改例程了,首先我把OLED屏幕以及光线传感器的代码移植过来,在工程中新建一个文件夹放入代码,并且添加对应的头文件路径。




接着修改一下pwm的对应引脚,由于在mesh工程中,pwm使用的是软件pwm库,所以pwm的引脚可以任意定义。这里对应我的电路板,修改为第五脚


熟悉Nordic的SDK的同学应该都知道,大部分事情都是在回调函数中处理的,对于light-lightness模型,当模型的状态更新的时候,会调用set_lightness_cb这个回调函数,于是我在回调函数中添加了一个转速的显示函数,用来在改变转速的时相应的显示。


编译工程,然后接上jlink,点击target工具栏下面的连接之后,依次执行擦除和下载指令,程序以及协议栈就会被下载到芯片当中了。下载完成后控制台显示如下


接着给电路板接上电源,手机上安装NRF mesh软件之后,就可以搜索到我的电路板的信号了,此时显示屏也有了显示数据。


此时的电路板处在未配网状态,需要使用手机先对其进行配置,按照手机上的提示依次操作即可,配置好之后点开element目录,发现其中有很多模型,点击generic level server模型,绑定app key之后,就可以使用最下方的滑动条来控制电机转速了。



下面我需要添加的是控制负离子发生器功能,其需要的控制量是开关量,所以我选择添加一个最基本的模型:generic on-off。在工程中新建一个文件夹, 添加generic on-off模型的相关文件,添加好之后如下所示


由于新加入了模型,我们就需要修改一下配置头文件,在工程树中找到nrf_mesh_config_app.h文件,修改其中的ACCESS_MODEL_COUNT(模型总数)以及ACCESS_ELEMENT_COUNT(元素总数)以及
ACCESS_SUBSCRIPTION_LIST_COUNT(订阅列表)


修改好之后就可以在main.c文件中添加generic on-off模型的相关初始化以及回调函数了



由于需要传输pm2.5传感器的数据,我还需要添加sensor模型,和以上添加generic on-off模型类似,添加sensor模型相关文件以及相关初始化以及回调函数,由于sensor模型的回调函数有很多,我用到的只有一个,所有我只贴上用到的那个回调函数的代码,其余函数都参考sensor例程编写,并无改动。




由于pm2.5传感器使用串口发送数据,还需要添加串口的相关代码,并且在app_config.h函数中声明相关外设的宏



接着在main.c文件的initialize函数中添加创建软件定时器相关代码,在其回调函数中周期性更新显示数据以及发布数据



编译工程并且下载到电路板上,可以看到pm2.5数据显示正常,重新对电路板进行配网之后,可以看到其中有了3个元素,新添加的generic on-off模型以及sensor模型都可以正常显示。点击generic on-off模型,绑定app-key之后,即可控制负离子发生器的开启和关闭。


为了测试mesh通信是否正常,我制作了一个小的测试板,将其烧录light-lightness的client工程以及配置之后,我们需要配置一下两者的订阅以及发布地址。给电路板的light-lightness模型下添加一个订阅组地址,以及给测试板的light-lightness模型下添加一个发布组地址,注意两者地址需要相同,接着就可以使用测试板的按键来控制空气净化器的电机转速。



文章来源于:电子产品世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    有光就能充电!——BESTEK太阳能车载空气净化器体验评测; 对于车友而言,最困扰的就是车内360度难以祛除的异味,因此,一款好的车载空气净化器是品质生活的必需品。本次我们评测的是一款智能变频车内净化......
    超清新出行 “绿肺”来了 惠而浦车净宝车载空气净化器体验评测; 如若车内环境是森林,那么车载空气净化器就是森林里的绿肺。全民抗霾的时代,相信每个车友都希望车内环境萦绕着健康、新鲜的空气......
    ,因为小米本身做加湿器和空气净化器”。事实上,从小米的生态链布局上不难看出,这家消费电子巨头正想尽办法将产品潜入人们的日常生活场景并提供服务。 有关小米车内智能化的问题,雷军......
    恐怖!小米空气净化器销量公布:国内第一;在1月12日小米公司年会上,小米科技联合创始人、小米生态链负责人刘德公布了小米生态链最新的数据。 按照刘德的说法,小米生态链目前已经有3家企业年销售额超过10......
    质量。 每一份建议,张才庭他们都会虚心采纳,以便推进下一代产品的升级。据他透露,素净将致力于为客户提供一个完整的智能家庭环保健康解决方案,基于不同的应用场景开发系列新品。比如车载空气净化器......
    创新科技赋能更高精准度;全新米家空气净化器4MAX与全效空气净化器Ultra搭载盛思锐(Sensirion)固态甲醛传感器SFA系列,可随时读取甲醛数据,精准度高达0.001mg/m³,其专业的除醛效果与净化实力能够有效提高室内空气......
    创新科技赋能更高精准度,盛思锐甲醛传感器助力米家空气净化器4MAX 与全效空气净化器Ultra;全新米家空气净化器4MAX与全效空气净化器Ultra搭载盛思锐(Sensirion)固态......
    空气净化器和新风系统的区别是什么;随着我们对室内空气污染认知度的不断提高,我们逐渐意识到看似窗明几净的室内,实则潜藏着大量的污染物。并且这些污染物都会对我们的身体健康造成极大的危害,所以可以持续改善室内空气质量的空气净化器......
    耗、小型化传感器,利用非色散红外(NDIR)原理对空气中存在的CO2 进行探测,用于监测驾舱CO2浓度,避免疲劳驾驶。 PM2.5传感器 应用于汽车空调、汽车空气净化器,主要利用米氏散射原理,对车......
    Jya将Sensirion纳入新推出的先进空气净化器;3月18日,Sensirion自豪地宣布,智米科技(Smartmi Tech)旗下高端空气净化器品牌Jya在其 Fjord系列空气净化器......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>