当前位置: 首页 > news >正文

百度网盘官方网站个人建购物网站 备案

百度网盘官方网站,个人建购物网站 备案,软文范例,夸克浏览器网页版STHS34PF80人体存在传感器.1--获取人体存在状态 概述视频教学样品申请完整代码下载主要特点硬件准备接口最小系统图生成STM32CUBEMX串口配置IIC配置CS设置串口重定向参考案例获取ID温度测量滤波方式智能识别算法使用块数据更新#xff08;BDU#xff09;功能设置ODR速率获取状… STHS34PF80人体存在传感器.1--获取人体存在状态 概述视频教学样品申请完整代码下载主要特点硬件准备接口最小系统图生成STM32CUBEMX串口配置IIC配置CS设置串口重定向参考案例获取ID温度测量滤波方式智能识别算法使用块数据更新BDU功能设置ODR速率获取状态测试结果 概述 STHS34PF80是一款高性能的红外(IR)传感器特别适用于检测存在感和运动。其主要特点是高灵敏度能在没有透镜的情况下探测到4米远的物体尺寸为70 x 25厘米并配有集成的硅红外滤波器。这款传感器能够区分静止和移动物体并具有80°的视场角。它出厂时已校准且设计为低功耗包含用于提高探测效果的智能算法。 其应用范围广泛不仅包括存在感和接近感应、报警/安全系统、智能家居、智能照明、物联网、智能储物柜和智能墙板还特别适用于检测人体的存在。由于其高灵敏度和精确度它能够有效地用于人体检测如在安保系统中探测潜在的入侵者或在智能家居系统中监测房间内的人员动态。 最近在弄ST的课程需要样片的可以加群申请615061293 。 视频教学 https://www.bilibili.com/video/BV1fN4y1e7gu/ STHS34PF80人体存在传感器(1)----获取人体存在状态 样品申请 https://www.wjx.top/vm/OhcKxJk.aspx# 完整代码下载 主要特点 高灵敏度探测: 专为探测红外线的存在和运动设计具有高灵敏度。 探测范围: 能够在没有透镜的情况下探测到70 x 25厘米大小的物体最远达4米。 集成硅红外滤波器: 通过滤除非红外波长确保精确探测。 静态和运动物体探测: 能够检测到静止和移动的物体。 视场角: 提供80°的视场角。 出厂校准: 出厂即校准保证了即插即用的可靠性和准确性。 低功耗设计: 设计注重能效确保低能耗。 嵌入式智能算法: 用于提升存在感和运动探测的效果。 硬件准备 首先需要准备一个开发板这里我准备的是自己绘制的开发板 接口 STHS34PF80模块接口的示意图如下所示支持IIC或者SPI通讯。 最小系统图 生成STM32CUBEMX 用STM32CUBEMX生成例程这里使用MCU为STM32WB55RG。 配置时钟树配置时钟为32M。 串口配置 查看原理图PB6和PB7设置为开发板的串口。 配置串口。 IIC配置 配置IIC为快速模式速度为400k。 CS设置 STS34PF80IO设置如下所示。 在IIC模式下CS需要给个高电平。 官方提供IIC接线如下所示。 设置PC0为输出口。 串口重定向 打开魔术棒勾选MicroLIB 在main.c中添加头文件若不添加会出现 identifier “FILE” is undefined报错。 /* USER CODE BEGIN Includes */ #include stdio.h /* USER CODE END Includes */函数声明和串口重定向 /* USER CODE BEGIN PFP */ int fputc(int ch, FILE *f){HAL_UART_Transmit(huart1 , (uint8_t *)ch, 1, 0xFFFF);return ch; } /* USER CODE END PFP */参考案例 https://github.com/STMicroelectronics/sths34pf80-pid 获取ID 参考例程序中对应的获取ID驱动程序,如下所示。 获取ID可以查看0x0F读出来的值应该为0xD3。 对应的获取ID驱动程序,如下所示。 printf(??????????);HAL_GPIO_WritePin(CS_GPIO_Port, CS_Pin, GPIO_PIN_SET); uint8_t whoami;sths34pf80_lpf_bandwidth_t lpf_m, lpf_p, lpf_p_m, lpf_a_t;/* Initialize mems driver interface */dev_ctx.write_reg platform_write;dev_ctx.read_reg platform_read;dev_ctx.handle SENSOR_BUS;/* Wait sensor boot time */platform_delay(BOOT_TIME);/* Check device ID */sths34pf80_device_id_get(dev_ctx, whoami);printf(STHS34PF80_ID0x%x,whoamI0x%x\n,STHS34PF80_ID,whoami);if (whoami ! STHS34PF80_ID)while(1); 温度测量滤波方式 首先需要设置AVG_TRIM (10h) 寄存器用于配置温度平均值滤波的参数以控制环境温度和目标温度测量的平滑度和稳定性。在温度测量中可能会受到噪声和干扰的影响这可能导致短期内测量值的波动。通过应用平均值滤波可以平滑这些波动从而得到更加稳定的温度数据。AVG_TRIM 寄存器中的设置会决定平均值滤波的级别从而影响滤波的时间常数以及平滑度。 这里默认参数如下 在AVG_TRIM10h寄存器中写入02h // AVG_T 8AVG_TMOS 32在CTRL120h寄存器中写入07h // ODR 15 Hz AVG_T[1:0]: 这个设置位用于选择环境温度的平均值滤波样本数。 AVG_TMOS[2:0]: 这个设置位用于选择目标温度的平均值滤波样本数以及与之相关的噪声水平。 对象温度的平均值数量 (sths34pf80_avg_tobject_num_set 函数): 这个函数设置用于测量对象温度的平均值数量。参数 val 可以是多种不同的值例如 AVG_TMOS_2, AVG_TMOS_8, AVG_TMOS_32, 等等表示不同的平均值数量。这些设置影响传感器输出的平滑程度和响应速度高的平均值数量会增加输出数据的平滑度但也可能增加响应时间。 环境温度的平均值数量 (sths34pf80_avg_tambient_num_set 函数): 类似地这个函数设置环境温度测量的平均值数量。参数 val 可以是 AVG_T_8, AVG_T_4, AVG_T_2, AVG_T_1 等用于设置不同的平均值数量。这也会影响传感器输出的平滑程度和响应速度。 在你提供的代码段中使用了 STHS34PF80_AVG_TMOS_32 和 STHS34PF80_AVG_T_8 作为参数分别用于设置对象温度和环境温度的平均值数量。这意味着传感器会对对象温度使用32个数据点的平均值对环境温度使用8个数据点的平均值。这样的设置有助于在传感器的测量中实现一定程度的数据平滑和过滤噪声同时保持适当的响应速度。 /* Set averages (AVG_TAMB 8, AVG_TMOS 32) */sths34pf80_avg_tobject_num_set(dev_ctx, STHS34PF80_AVG_TMOS_32);sths34pf80_avg_tambient_num_set(dev_ctx, STHS34PF80_AVG_T_8);智能识别算法 STHS34PF80嵌入了智能数字算法以支持以下三种检测模式 • 存在检测 • 运动检测 • 环境温度冲击检测 这些算法分别使用不同的低通滤波器LPF_P、LPF_M和LPF_A_T。此外存在和运动检测算法使用另一个共同的低通滤波器LPF_P_M。这些滤波器用于生成中间信号TPRESENCE、TMOTION和TAMB_SHOCK可以用于对算法本身进行微调。这些滤波器的截止频率值可以通过它们各自的位范围进行配置这些位范围可以在LPF10Ch和LPF20Dh寄存器中找到如下所示。 寄存器LPF1 (0Ch)和LPF2 (0Dh)如下所示。 案例中只是对滤波器进行了读取以及打印。 /* read filters */sths34pf80_lpf_m_bandwidth_get(dev_ctx, lpf_m);sths34pf80_lpf_p_bandwidth_get(dev_ctx, lpf_p);sths34pf80_lpf_p_m_bandwidth_get(dev_ctx, lpf_p_m);sths34pf80_lpf_a_t_bandwidth_get(dev_ctx, lpf_a_t);printf(lpf_m: %02d, lpf_p: %02d, lpf_p_m: %02d, lpf_a_t: %02d\r\n, lpf_m, lpf_p, lpf_p_m, lpf_a_t); 使用块数据更新BDU功能 在很多传感器中数据通常被存储在输出寄存器中这些寄存器分为两部分MSB和LSB。这两部分共同表示一个完整的数据值。例如在一个加速度计中MSB和LSB可能共同表示一个加速度的测量值。 连续更新模式BDU ‘0’在默认模式下输出寄存器的值会持续不断地被更新。这意味着在你读取MSB和LSB的时候寄存器中的数据可能会因为新的测量数据而更新。这可能导致一个问题当你读取MSB时如果寄存器更新了接下来读取的LSB可能就是新的测量值的一部分而不是与MSB相对应的值。这样你得到的就是一个“拼凑”的数据它可能无法准确代表任何实际的测量时刻。 块数据更新BDU模式BDU ‘1’当激活BDU功能时输出寄存器中的内容不会在读取MSB和LSB之间更新。这就意味着一旦开始读取数据无论是先读MSB还是LSB寄存器中的那一组数据就被“锁定”直到两部分都被读取完毕。这样可以确保你读取的MSB和LSB是同一测量时刻的数据避免了读取到代表不同采样时刻的数据。 简而言之BDU位的作用是确保在读取数据时输出寄存器的内容保持稳定从而避免读取到拼凑或错误的数据。这对于需要高精度和稳定性的应用尤为重要。 案例也是设置了BDU。 BDU在CTRL1 (20h)寄存器中。 /* Set BDU */sths34pf80_block_data_update_set(dev_ctx, 1);设置ODR速率 初始化完毕之后需要通过CTRL120h寄存器中的ODR[3:0]位范围选择其中一种操作模式连续模式或者在CTRL221h寄存器中将ONE_SHOT位设置为1单次触发模式。 当配置了寄存器LPF1 (0Ch)和LPF2 (0Dh) 的LPF_P、LPF_M和LPF_A_T、LPF_P_M滤波器之后可以去设置ODR速率。 这里设置速率为8Hz。 /* Set ODR */sths34pf80_odr_set(dev_ctx, STHS34PF80_ODR_AT_8Hz); 获取状态 STATUS (地址为0x23U) 用于表示传感器的状态。 drdy1位这个位用于指示数据就绪Data Ready状态。当传感器有新的数据可供读取时这个位会被设置。 FUNC_STATUS25h主要检测三个标志位PRES_FLAG、MOT_FLAG 和 TAMB_SHOCK_FLAG这些标志位用于检测不同类型的事件。 PRES_FLAG是存在检测标志位。当存在检测到人员存在时此位变为1。 MOT_FLAG运动检测标志位。当检测到运动时此位变为1。 TAMB_SHOCK_FLAG环境温度冲击检测标志位。当检测到环境温度冲击时此位变为1。 /* Infinite loop *//* USER CODE BEGIN WHILE */while (1){sths34pf80_drdy_status_t status;sths34pf80_func_status_t func_status;sths34pf80_drdy_status_get(dev_ctx, status);if (status.drdy){sths34pf80_func_status_get(dev_ctx, func_status);printf(TAmbient Shock: %d - Presence: %d - Motion: %d\r\n,func_status.tamb_shock_flag, func_status.pres_flag, func_status.mot_flag);} /* USER CODE END WHILE *//* USER CODE BEGIN 3 */}/* USER CODE END 3 */测试结果 在未有人的情况下。 在人体纯在情况下。
http://www.zqtcl.cn/news/381748/

相关文章:

  • 苏州网站的建设哪个网站上做自媒体最好
  • 传送门网站是怎么做的wordpress seo标题
  • 曲靖 曲靖网站建设软件(app)开发视频一页网站怎么做
  • 互联网公司网站建设ppt模板下载wordpress 图片2m
  • 箱包官方网站模板平台开发软件
  • 佛山网站改版动漫视频制作软件
  • 易企互联网站建设创办公司需要多少资金
  • wordpress主题页脚添加联系信息百度seo优化排名软件
  • 深圳微信商城网站设计价格广东省自然资源厅事务中心
  • 云服务器做网站视屏工程建设最好的网站
  • 宁夏建设工程质量安全监督网站电商网站需求分析
  • wordpress函数教程十堰seo优化哪家公司好
  • 直播app开发哪家好东莞整站优化火速公司
  • 平江高端网站建设wordpress如何添加广告
  • 网站建设得多钱搜索引擎推广网站
  • 建立网站的流程多少钱网站建设不用备案的
  • 广州城市建设档案网站扬州工程建设招标网
  • 邦策网站建设dedecms医院网站wap模板(橙色)4512345
  • 阿里云空间可以做网站吗专业的传媒行业网站开发
  • 网站制作新报价橄榄树网站建设
  • 网站建设及服务合同小程序代码教程
  • 晋城网站建设公司淘宝店铺网站建设
  • 赣州网站建设流程上海重大新闻
  • html网站架设ui设计用的软件有哪些
  • 有没有做培养基的网站58同城淄博网站建设
  • 承德做网站的公司专业平台建设网站关了吗
  • 自己做网站的成本要哪些东西wordpress resize
  • 网站建设总体流程wordpress 浮窗音乐
  • 福州网站建设公司哪个网站可以做前端项目
  • 十二冶金建设集团有限公司网站wordpress安装在哪里