void *shake_thread(void *datas) //震动线程
{
char msg[100];
int status;
struct Devices *shakeDeviceTmp = NULL;
struct Devices *buzzerDeviceTmp = NULL;
shakeDeviceTmp = findDeviceByName("shake", pdeviceHead); //在设备工厂找到火灾模块
buzzerDeviceTmp = findDeviceByName("buzzser", pdeviceHead);
shakeDeviceTmp->deviceInit(shakeDeviceTmp->pinNum); //震动模块初始化
buzzerDeviceTmp->deviceInit(buzzerDeviceTmp->pinNum);
printf("震动线程初始化成功\n");
while (1)
{
delay(5);
status = shakeDeviceTmp->readStatus(shakeDeviceTmp->pinNum); //读取震动模块实时数据
if (status == 0)
{
beep = 2; //震动传感器使用蜂鸣器
buzzerDeviceTmp->open(buzzerDeviceTmp->pinNum);
memset(Message[3], 0, sizeof Message[3]); //清空数组
sprintf(Message[3], "警报:发生震动 !");
delay(300);
}
else if ((
基于树莓派的智能家居系统(四十)——震动线程
最新推荐文章于 2024-03-22 22:04:06 发布