【智能家居】7、主程序编写+实现语音、网络和串口功能

这篇具有很好参考价值的文章主要介绍了【智能家居】7、主程序编写+实现语音、网络和串口功能。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

需要毕业论文私信有偿获取

截止目前mainPro.c代码

#include <stdio.h>
#include <string.h>

#include "controlDevices.h"
#include "inputCmd.h"

struct Devices *findDevicesName(char *name,struct Devices *phead){

	struct Devices *tmp=phead;
	if(phead==NULL){

		return NULL;
	}else{

	while(tmp!=NULL){
		if(strcmp(tmp->devicesName,name)==0){
			return tmp;
		}
		tmp=tmp->next;
	}
	return NULL;
	}
}

int main(){
	if(wiringPiSetup()==-1){
		return -1;
	}
	
	struct Devices *pdevicesHead=NULL;
	struct InputCmd *pinputCmdHead=NULL;
	
	pdevicesHead=addbathroomLightToDevicesLink(pdevicesHead);
	pdevicesHead=addupstairLightToDevicesLink(pdevicesHead);
	pdevicesHead=addlivingroomLightToDevicesLink(pdevicesHead);
	pdevicesHead=addrestaurantLightToDevicesLink(pdevicesHead);
	pdevicesHead=addFireToDevicesLink(pdevicesHead);

	pinputCmdHead=addVoiceToInputCmdLink(pinputCmdHead);
	pinputCmdHead=addSocketToInputCmdLink(pinputCmdHead);
	
	char name[128]={'\0'};
	struct Devices *tmp=NULL;
	while(1){
	printf("INPUT:\n");
	scanf("%s",name);
	tmp=findDevicesName(name,pdevicesHead);
	
	if(tmp!=NULL){
		tmp->devicesInit(tmp->pinNum);
		tmp->open(tmp->pinNum);	
		tmp->readStatus(tmp->pinNum);
		}
	}

	
	return 0;
}

一、编写流程

1、工厂初始化

【智能家居】7、主程序编写+实现语音、网络和串口功能,基于RaspberryPi智能家居项目,智能家居

 将指令和设备结构体指针定义为全局变量文章来源地址https://www.toymoban.com/news/detail-836405.html

(1)指令工厂初始化

	/*指令工厂初始化*/
	pinputCmdHead=addVoiceToInputCmdLink(pinputCmdHead);
	pinputCmdHead=addSocketToInputCmdLink(pinputCmdHead);

(2)设备控制工厂初始化

/*设备工厂初始化*/
pdevicesHead=addbathroomLightToDevicesLink(pdevicesHead);
pdevicesHead=addupstairLightToDevicesLink(pdevicesHead);
pdevicesHead=addlivingroomLightToDevicesLink(pdevicesHead);
pdevicesHead=addrestaurantLightToDevicesLink(pdevicesHead);
pdevicesHead=addFireToDevicesLink(pdevicesHead);

2、查找指令名称函数

struct InputCmd *findCmdName(char *name,struct InputCmd *phead){
	struct InputCmd *tmp=phead;
	if(phead==NULL){
		re

到了这里,关于【智能家居】7、主程序编写+实现语音、网络和串口功能的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 两星期自学:微信小程序+ESP8266实现智能家居控制(1)

    两星期自学:微信小程序+ESP8266实现智能家居控制(1)

    在开始前,我简单的介绍一下我的项目功能和原理。项目功能:支持一键配网、有完整的微信小程序注册登录流程、小程序控制ESP8266、ESP8266读温湿度显示到小程序上、支持50组自定义红外遥控和一键配置米家、天猫精灵。 项目原理:巴法云作为服务器,可以把他理解成一个

    2024年03月15日
    浏览(6)
  • STM32毕业设计——基于STM32+MQTT+WiFi技术的智能家居系统设计与实现(毕业论文+程序源码)——智能家居系统

    STM32毕业设计——基于STM32+MQTT+WiFi技术的智能家居系统设计与实现(毕业论文+程序源码)——智能家居系统

    大家好,今天给大家介绍基于STM32+MQTT+WiFi技术的智能家居系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。需要下载开题报告PPT模板及论文答辩PPT模板等的小伙伴,可以进入我的博客主页查看左侧最下面栏目中的自助下载方法哦 文章目录: 智能家居技术

    2024年02月10日
    浏览(43)
  • 微信小程序| 基于ChatGPT+明基屏幕挂灯实现超智能家居物联网小程序

    微信小程序| 基于ChatGPT+明基屏幕挂灯实现超智能家居物联网小程序

    在尝试了这么多次的 ChatGPT 在纯软方向的应用开发后,深感 LLM(大语言模型) 的能力之强大。俗话说得好: 心有多大舞台就有多大! 基于AI大模型,可以尝试的方面实在是数不胜数!轻轻松松就可以突破在移动互联网时代APP/平台所积累下的数据壁垒和优势!以及像一些高门槛

    2024年02月08日
    浏览(9)
  • 基于SpringBoot+Vue+uniapp微信小程序的智能家居系统的详细设计和实现

    基于SpringBoot+Vue+uniapp微信小程序的智能家居系统的详细设计和实现

    🌞 博主介绍 :✌全网粉丝15W+,CSDN特邀作者、211毕业、高级全栈开发程序员、大厂多年工作经验、码云/掘金/华为云/阿里云/InfoQ/StackOverflow/github等平台优质作者、专注于Java、小程序技术领域和毕业项目实战,以及程序定制化开发、全栈讲解、就业辅导✌🌞 👇🏻 精彩专栏

    2024年04月22日
    浏览(12)
  • 智能家电智能家居小程序APP定制开发

    智能家电智能家居小程序APP定制开发

           

    2024年02月13日
    浏览(10)
  • 【OrangePi Zero2 智能家居】智能家居项目的软件实现

    【OrangePi Zero2 智能家居】智能家居项目的软件实现

    一、项目整体设计 二、项目代码的前期准备 三、实现语音监听接口 四、实现socket监听接口 五、实现烟雾报警监听接口 六、实现设备节点代码 七、实现接收消息处理接口 整体的软件框架大致如下: 整个项目开启4个监听线程, 分别是: 语音监听线程:用于监听语音指令,

    2024年02月22日
    浏览(13)
  • 《86盒应用于家居中控》——实现智能家居的灵动掌控

    《86盒应用于家居中控》——实现智能家居的灵动掌控

    近年来,智能家居产品受到越来越多消费者的关注,其便捷、舒适的生活方式让人们对未来生活充满期待。作为智能家居方案领域的方案商,启明智显生产设计的86盒凭借出色的性能和良好的用户体验,成功应用于家居中控系统,让家庭变得更加智能便捷。 86盒作为智能家居

    2024年02月09日
    浏览(10)
  • qt实现智能家居系统

    qt实现智能家居系统

    一、项目介绍           通过TCP/IP协议实现客户端和和服务端的链接,服务端和下位机通过串口通信的方式链接,传递信息,客户端通过账号登录进入进入智能家居服务系统,账号登录和QQ登录类似,我采用的是数据库的方式实现数据的存储和调用,界面使用qt-ui的方式进

    2024年02月11日
    浏览(13)
  • 基于树莓派实现 --- 智能家居

    基于树莓派实现 --- 智能家居

    演示视频链接:基于树莓派实现的智能家居_哔哩哔哩_bilibili https://www.bilibili.com/video/BV1Tr421n7BM/?spm_id_from=333.999.0.0 ( PS:房屋模型的搭建是靠纸板箱和淘宝买的家居模型,户型参考了留学时短租的公寓~ )  到目前为止,对于linux的嵌入式软件开发,从底层到上层都有了一定的

    2024年04月08日
    浏览(11)
  • stm32智能家居+微信小程序接收控制

    stm32智能家居+微信小程序接收控制

    本项目芯片使用STM32F103ZET6,微信小程序开发使用微信开发者工具。 stm32作为下位机,功能是每过一段时间上传温湿度以及光照度给mqtt服务器,然后微信小程序从mqtt服务器订阅对应的主题来接收下位机发过来的数据并进行处理,并在微信小程序中设置LED开关,以及蜂鸣器开关。

    2024年01月21日
    浏览(18)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包