一. 系统概述
系统由STM32单片机主控,具备人体识别、坐姿检测和光强检测功能。根据这些检测结果,系统能够控制LED灯的开关以及进行坐姿提醒。用户还可以通过按键操作直接调节桌子的升降高度。此外,系统支持手动与自动模式的切换。在手动模式下,用户可以直接控制灯光的开关。
二. 仿真功能简述
- 系统默认启动为自动模式,按下自动/手动切换按键可以切换到手动模式。在手动模式下,用户可以直接控制灯光的开关及桌子的升降。
- 在自动模式下,用户仍可以通过按键操作桌子的升降。同时,当检测到有人坐下并且环境光强低于设定阈值时,系统会自动开启灯光。
- 在自动模式中,系统会根据坐姿检测结果决定是否发出提醒。
三.程序设计
#include <main.h>
//
u8 key,m=0,m2=0;
//
//
void Init_Test(void);
void Test(void);
void Display(void);
//
int main(void)
{
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//2:2
Init_Test();
while(1)
{
u8 adc=Get_Adc(9);
u8 l=100;
if(Key3==0)Motor_414_Turn(0,255);
if(Key4==0)Motor_414_Turn(1,255);
if(Key1==0){ m2=~m2;}
if(m2)//手动
{
if(Key2==0){ m=~m;}
if(m)LedC1_1;
else LedC1_0;
}
else//自动
{
if(adc<l&&pc5==1) LedC1_1;
else LedC1_0;
if(pc6==0) LedC2_1;
else LedC2_0;
}
}
}
24-32f-43