树莓派实现语音控制电磁锁

1.接线

  • 语音模块接线 

    

树莓派跟语音模块接上后,语音模块D2灯亮起 ,如果没亮请检查接线。

  • 继电器接线 

 继电器跟树莓派接上后,继电器电源灯亮起,如果没亮请检查接线。

  • 电磁锁接线 

 

 2.编写代码控制

#include<stdio.h>
#include<wiringPi.h>
#include <wiringSerial.h>
#include <unistd.h>
#include <string.h>
#define PIN 7

int main()
{
        int fd;
        int nread;
        char cmd[128]={'\0'};
        wiringPiSetup();
        pinMode(PIN,OUTPUT);                   //初始化引脚为输出口
        digitalWrite(PIN,HIGH);                //把引脚置为高电平,把锁初始化为开状态
        fd=serialOpen("/dev/ttyAMA0", 9600);   //打开并初始串口

        while(1){
                nread=read(fd,cmd,sizeof(cmd));      //获取串口内容
                if(strlen(cmd)==0){                  //一直没有内容读取,显示超时
                        printf("chaoShi\n");
                        continue;
                }
                if(nread!=0){
                        if(strstr(cmd,"open l")!=NULL){
                                printf("open clok\n");
                                digitalWrite(PIN,LOW);     //把引脚置为低电平,关锁
                        }else if(strstr(cmd,"close l")!=NULL){
                                printf("close clok\n");
                                digitalWrite(PIN,HIGH);     //把引脚置为高电平,开锁
                        }
                }
                memset(cmd,'\0',sizeof(128));
        }

        return 0;
}

3.运行效果 

当我们唤醒语音模块并对说关锁的时候,锁关上:        

 重新唤醒语音模块并对说开锁的时候,锁打开:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值