摘要:使用库读写环境光照度传感器本文将教大家如何快速使用库读取光照度数据。五实验样机测试展示通过之前配置好的面板,通过涂鸦智能进行配网实时采集光照度传感器的数据。
本文将教大家如何快速使用STM32HAL库读取光照度数据。
实现功能:通过App实时监测光照度数据。
程序下载路径:demo程序。
1.如下图创建一个新工程:
2.如下图选择自己现有的STM32开发板进行开发:
3.配置时钟源
如果选择使用外部高速时钟(HSE),则需要在System Core中配置RCC;
如果使用默认内部时钟(HSI),这一步可以略过;
下面工程我使用的是内部时钟,因此这一步是不需要的。
4.配置串口
NUCLEO-L476RG板载ST-Link并且虚拟了一个串口,原理图如下:
使PC的串口与USART2之间连接。(打印日志口,同时也作为程序下载口)
接下来开始如下图配置USART2:
使用串口1和涂鸦模组WB3S通信(单片机和WB3S串口通信,采用透传的模式),串口1配置如下图所示:
5.配置IIC口
为了采集光照度数据(BH1750),单片机采用I2C协议和光照度模块进行通信,采用I2C1,配置如下图所示:
6.配置时钟树
STM32L4的最高主频到80M,所以配置PLL,最后使HCLK=80Mhz即可:
7.生产工程设置
8.代码生成设置
最后设置生成独立的初始化文件:
9.生成代码
点击GENERATE CODE即可生成MDK-V5工程如下:
10.用KEIL5打开生成的代码,然后开始添加自己要实现的功能函数。
BH1750 照度检测模块搭载一个BH1750FVI,BH1750FVI是两线式串行总线接口(IIC)的16位数字输出型环境光强度传感器,利用它的高分辨率可以探测较大范围内的光照强度变化(1lx - 65535lx)。
管脚介绍
名称 | VCC | GND | SCL | SDA | ADDR |
---|---|---|---|---|---|
功能描述 | 3~5V供电 | 参考地 | IIC时钟线 | IIC数据线 | 地址线 |
参考BH1750FVI数据手册进行编程。
驱动程序设计完成之后就可以开始进行联网功能的设计了。
进入涂鸦智能IoT平台点击“创建产品”。这里不用纠结产品品类的选择,重点是为了拿到MCU-SDK文件,实际使用时可以根据具体的产品修改sdk内部的pid即可适配自己的产品。
例如:点击创建产品,选择标准类目>电工>开关。(当时为了测试用,所以选择一个标准类目,也可以在平台上选择其它品类去创建也是可以的)
选择自定义方案,输入产品名称,选择通讯协议为WIFI+蓝牙,点击创建产品。
根据要实现的设备功能,创建好DP功能点。
创建好DP点之后,点击设备面板,选择自由配置面板,方便开发调试,也可以选择其它的面板。
面板创建好之后,点击硬件开发,对接方式选择“涂鸦标准模组MCU SDK开发”,模组选择WB3S Wi-Fi&Bluetooth模组(在实际开发过程中可选择手上已有的涂鸦模组即可),固件选择通用固件。
平台产品创建完之后,我们会获取到一个MCU SDK包,之后就可以快速移植到MCU了。
然后在stm32l4xx_it.c文件中添加中断处理函数,然后包含 mcu_api.h文件并将uart_receive_input()
接口添加进去,添加完成后,删除error注释即可:
这里我们可以直接注释掉error提示,在实际开发过程中再实现该功能即可。
一般开发者不涉及生产测试的话直接删除注释不用管就行。
下图这个红色标出的函数是进行配网的,通过NUCLEO-L476开发板上的用户按键进行配网连接。
修改完上述几处地方后,再次编译,显示error全部消除,至此涂鸦MCU SDK就已移植完毕,后续可使用涂鸦模组调试助手进行测试。涂鸦模组调试助手的使用方法可参考调试助手文档。
通过之前配置好的面板,通过涂鸦智能APP进行配网实时采集光照度传感器的数据。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/121372.html
摘要:本节我们介绍总线,并使用的总线来访问加速度传感器。主循环内添加循环读取的代码编译下载运行,可以看到数据输出变换传感器方向,可以看到测出的重力加速度的数值变化。 本节我们介绍I2C总线,并使用stm32的I2C总线来访问加速度传感器ADXL345。 1)I2C基础知识 I2C总线通信比较适合...
摘要:带中文字库的是一种具有位位并行线或线串行多种接口方式,内部含有国标一级二级简体中文字库的点阵图形液晶显示模块其显示分辨率为。贴片按键模块支持标准的协议,完整的协议栈。以最低成本提供最大实用性,为功能嵌入其他系统提供无限可能。 项目简介 开发环境: Keil5.14,CubeMX6.0.1,主...
摘要:如图所示在了解起始条件和停止条件后,我们再来看看在这个过程中数据的传输是如何进行的。四参考资料通过接口实现温湿度的采集硬件和软件区别 stm32通过I2C接口实现...
摘要:总线挂载的外设有等。外设地址映射片上外设区分为三条总线,根据外设速度的不同,不同总线挂载着不同的外设,挂载低速外设,和挂载高速外设。 第二章 STM32资源介绍 2...
摘要:基于开发的软件包导师汪礼超学员崔林威摘要腾讯物联网操作系统是腾讯面向物联网领域开发的实时操作系统,具有低功耗,低资源占用,模块化,可裁剪等特性。图中断函数处理进行生成工程配置,按如下界面进行配置,最后点击,并点击。 ...
阅读 3370·2023-04-25 14:07
阅读 3435·2021-09-28 09:35
阅读 2078·2019-08-30 15:55
阅读 1394·2019-08-30 13:48
阅读 2494·2019-08-30 13:16
阅读 3195·2019-08-30 12:54
阅读 3229·2019-08-30 11:19
阅读 1866·2019-08-29 17:17