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

物联网人体红外检测系统详解

/*------------------------------------------------------------------------------
* @文件名        : handle
* @描述          : 用户处理函数
* @作者          : 物联网项目组
* @日期          : 2023/04/01
* @版本          : V0.0.2
*******************************************************************************
功能介绍:
1、显示屏初始化显示;
2、人体红外检测状态并显示。

******************************************************************************/
#include "handle.h"
#include "gpio_api.h" 
#include "lcd.h" 
#include "stdio.h"
#include "string.h"
#include "body.h"

/********************************************************************************
* 名    称:LCD_Display_Init
* 功    能:显示屏上电初始化显示
* 入口参数:无
* 返 回 值:无
* 说    明:无
********************************************************************************/
void LCD_Display_Init(void)

/*显示屏初始化界面*/
LCD_Init();       
LCD_Fill(0,lcddev.height-20,lcddev.width,lcddev.height,BLUE);
LCD_Fill(0,0,lcddev.width,20,BLUE);
Gui_StrCenter(0,2, BLUE,BLUE," ",16,0);
Gui_StrCenter(0,40,BLUE,WHITE,"人体红外检测实验",24,1);    
Gui_StrCenter(0,lcddev.height-18,BLUE,BLUE," ",16,0); 
}

/********************************************************************************
* 名    称:Body_Handle
* 功    能:人体红外检测处理函数
* 入口参数:无
* 返 回 值:无
* 说    明:无
********************************************************************************/
void Body_Handle(void)
{
static uint8_t as312_state_rev = 2;
uint8_t as312_state = 0;
static  uint32_t tickstart;

if((HAL_GetTick() - tickstart) >= 1000) //1000ms检测一次
{
tickstart = HAL_GetTick();  
/*****************************code 2 start*************************************/        
as312_state =Infrared_Read_State();
if(as312_state==1)
{
LCD_draw_bmp(36,120,48,gImage_Body);
LCD_Fill(96,178,137,194,WHITE);
Show_Str(96,178,BLUE,WHITE,"someone",16,1);
}
else if(as312_state==0)
{
LCD_draw_bmp(96,120,48,gImage_Body_hui);
LCD_Fill(96,178,137,194,WHITE);
Show_Str(96,178,BLUE,WHITE,"no one",16,1);
}
if(as312_state != as312_state_rev)
{
if(as312_state==1)
{
printf("**读取人体红外传感器数据\r\n");
printf("**人体红外传感器数据:someone\r\n\r\n");
}
else if(as312_state==0)
{
printf("**读取人体红外传感器数据\r\n");
printf("**人体红外传感器数据no one\r\n\r\n");
}
as312_state_rev = as312_state;
}
/*****************************code  end***************************************/
led_toggle(LED1_PORT);
}         


http://www.dtcms.com/a/409824.html

相关文章:

  • 关于Unix Domain Socket的使用入门
  • 机器视觉系统中工业相机的常见类型及其特点、应用
  • RTT操作系统(4)
  • 基于卷积神经网络的 CIFAR-10 图像分类实验报告
  • 微服务项目->在线oj系统(Java-Spring)----[前端]
  • 做网站撘框架小米手机如何做游戏视频网站
  • 如何建自己网站做淘宝客黄骅港吧
  • 交叉口内CAV调度:轨迹优化与目标速度规划,助力智能交通无缝运行!
  • Navicat 技术指引 | KingbaseES 专用 AI 助手
  • 如何优化Android app耗电量
  • 面试复习题---Flutter 资深专家
  • 在 C# 中将邮件转换为 PDF | MSG 转 PDF | EML 转 PDF
  • 【LangChain4j+Redis】会话记忆功能实现
  • Android Handler的runWithScissors方法
  • 180课时吃透Go语言游戏后端开发3:Go语言中其他常用的数据类型
  • 在 Android 11 上实现 WiFi 热点并发支持(同时开启 STA + AP 模式)
  • 济南高新区网站建设wordpress举报插件
  • html 占位符
  • GPT-5 Codex正式上线 Azure AI Foundry(国际版)
  • C++设计模式之结构型模式:享元模式(Flyweight)
  • STM32 智能垃圾桶项目笔记(一):超声波模块(HC-SR04)原理与驱动实现
  • 全文 -- Vortex: Extending the RISC-V ISA for GPGPU and 3D-Graphics Research
  • 设计网站推荐理由公司网站备案电话
  • 事件驱动与CDS:基于FHIR R5 Subscriptions与Bulk Data的再考察(下)
  • Tigshop开源商城系统 Java v5.2.2 / PHP v5.1.6版本正式发布(ES搜索上新)
  • 仙游县住房和城乡建设局网站1元涨1000粉丝网站
  • 【Linux】进程概念(六):进程地址空间深度解析:虚拟地址与内存管理的奥秘
  • 网站怎么做微信登录界面wordpress restful
  • Linux下写一个简陋的shell程序
  • OpenSource - 异构数据库数据与结构同步工具dbswitch