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

网站建设拍金手指谷哥12在淘宝做网站和网络公司做网站区别

网站建设拍金手指谷哥12,在淘宝做网站和网络公司做网站区别,网站转移服务器需要重新备案吗,阿里巴巴网站制作辛辛苦苦配了成功让树莓派开始工作了#xff0c;开始搞智能家居#xff01;大体思路#xff1a;基于工厂模式#xff0c;分模块来实现上图分为三部分#xff1a;主控、外设、控制主控我采用的是树莓派的4b4G版本#xff0c;外设包括四个区域的灯#xff08;我的和上图有…辛辛苦苦配了成功让树莓派开始工作了开始搞智能家居大体思路基于工厂模式分模块来实现上图分为三部分主控、外设、控制主控我采用的是树莓派的4b4G版本外设包括四个区域的灯我的和上图有略微差异火灾报警器摄像头人脸识别的锁先实现这么多功能、控制部分主要有语音控制和网络控制业务代码采用工厂模式来编写一个工厂代表一个结构体结构体的具体对象可以有多种这样代码更便于管理代码部分主要包括两个工厂多个设备和主函数两个工厂分别是contrlDevices和socket工厂每个工厂包括一个头文件定义整个工厂的成员属性和多个成员然后通过主函数来调用注多个设备放到主函数上采用的是链表的形式下面先通过实现点亮房间的灯来开启工厂模式的第一步一、编辑contrlDevices.h头文件确定该工厂的成员属性#include wiringPi.h//设备在使用的过程当中需要对引脚进行操作所以要包含此头文件在这里包含了设备的.c文件就不需要再包含struct Devices//定义一个名字叫Devices的结构体属性尽可能全面包含所有设备要用到的属性可定义不调用 {char devicesName[128];//设备名字int status;//设备状态int pin;//引脚名int (*open)(int pin);//灯的开启函数注意要用函数指针的形式因为访问结构体的时候是以访问地址的形式int (*close)(int pin);int (*deviceInit)(int pin);//初始化int (*readStatus)();int (*changeStatus)(int status);struct Devices *next;//链表的下一个链接地址放置位置}struct Devices *addroomLightToDeviceLink(struct Devices *phead);//链表成链方式的函数 二、编辑卧室灯的代码#include contrlDevices.h//上述的头文件 #include stddef.h//NULL的头文件int roomLightOpen(int pin)//具体的卧室灯打开函数 {digitalWrite(pin,LOW);}int roomLightClose(int pin)//关闭函数 {digitalWrite(pin,HIGH);}int roomLightInit(int pin)//初始化函数 {pinMode(pin,OUTPUT);digitalWrite(pin,HIGH);}struct Devices roomLight {//编辑成员卧室灯的结构体对Devices结构体内的属性按需写入.devicesName roomLight,.pin 29,.open roomLightOpen,//注意这里函数的调用不同于一般情况不需要带括号以及里面的内容.close roomLightClose,.deviceInit roomLightInit};//按需的意思是在实现控制灯的功能的过程中需要用到什么东西 struct Devices *addroomLightToDeviceLink(struct Devices *phead) {//主函数中传入链表头的地址头插法成链if(phead NULL){return roomLight;//如果是第一个把该设备的结构体地址该设备的头放上去作为链表头}else{//如果不是第一个roomLight.next phead;//原链表头地址传给该设备的nextphead roomLight;//链表头重新更换为该设备的结构体地址} }三、编写主函数#include stdio.h #include contrlDevices.h #include string.h struct Devices *findDeviceByName(char *name,struct Devices *phead)//通过比较名字来开启对应设备 {struct Devices *tmpphead;if(phead NULL){return NULL;}else{while(tmp ! NULL){//不断判断if(strcmp(tmp-devicesName,name)0){//比较设备名称是否等于main中的namereturn tmp;//如果是则返回tmp}tmp tmp-next;转换到下一个设备判断}return NULL;}}int main() {char *name roomLight;//设备名称if(wiringPiSetup() -1){//判断wiringPi库是否初始化成功return -1;//不成功直接退出程序}struct Devices *pdeviceHead NULL;//设置一个链表头初始化为空pdeviceHead addroomLightToDeviceLink(pdeviceHead);调用头插成链函数把roomLight设备放入链表struct Devices *tmp findDeviceByName(name,pdeviceHead);定义一个tmp接收判断结果if(tmp ! NULL){//如果不为空tmp-deviceInit(tmp-pin);//设备初始化tmp-open(tmp-pin);//设备开启}return 0; } 编写完成在树莓派上编译运行gcc main.c roomLight.c -lwiringPi :./a.out运行结果未接灯这里的继电器1亮了代表继电器接通到时候接入灯泡就
http://www.laogonggong.com/news/108409.html

相关文章:

  • 移动应用开发技术seo网站优化流程
  • 建设银行网站为什么登不上去网站建设 中企动力
  • 做网站没赚到钱wordpress商城微信支付
  • wordpress导入微信整站快速排名优化
  • 北京网站建设管庄重庆市建设工程信息网证书查询
  • 网站国外空间蜀通建设集团
  • 自己怎做网站后台天元建设集团有限公司邮编
  • 哈尔滨 建设网站 科技c 网站开发中间层怎么写
  • 男科是去私立还是公立微博seo排名优化
  • 中卫网站推广软件qq是哪个公司开发出来的
  • 如何推广我的网站北京网站设计公司兴田德润信任高
  • 建设网站财务分析重庆建设厅的网站
  • 网站建设会计分录东莞经济贸易学校网络营销
  • 企业合作的响应式网站网站后台标签切换
  • 电商网站商品页的优化目标是什么用手机怎么制作动漫视频
  • 做网站的岗位叫什么问题wordpress 文章模块
  • 哈尔滨专业官网建站企业房地产做网站怎样吸引客户
  • 仿新浪微博网站代码河南app网站建设
  • 官方网站建设最重要的是wordpress查用户ip
  • 好利蛋糕店官方网站项目网上备案
  • 网站备案怎么关闭网站垂直电商网站有哪些
  • 金华网站建设大型网页建设什么网站可以做锦鲤活动
  • 重庆推广网站排名怎么做盈利的网站
  • 站群系统有哪些seo推广的步骤
  • 怎么验证网站郑州医疗网站建设
  • 网站开发工程师证书南京模板做网站
  • 去哪个网站做吃播网站广告赚钱怎么做
  • ptp网站开发专业的食品行业网站开发
  • 运输房产网站建设深圳网站建设的基本知识
  • 网站建设规范布局有网站想修改里面的内容怎么做