lv17 安防监控项目实战 3

代码目录

框架 

our_storage 编译最终生成的目标文件obj 编译生成中间的.o文件
data_global.c 公共资源定义(使用在外extern即可)定义了锁定义了条件变量消息队列id、共享内存id、信号量id及key值发送短信、接收短信的号码向消息队列发送消息的函数(与cgi进程通信)data_global.h 设备节点通信协议

 

 main.c引用data_global的互斥锁和条件变量,并初始化信号处理函数(捕获ctrl+c,线程回收处理函数,因为这个程序一但运行不会停止释放锁和条件变量,分离线程资源,进程退出后把线程清理)创建线程分配资源,线程处理函数在其他文件中实现配合创建使用,等待线程结束并收回线程资源(虽然不会执行)
pthread_buzzer.c 线程操作思路蜂鸣器驱动,向上提供接口,设备节点打开蜂鸣器,关闭蜂鸣器,通过ioctl控制设备节点pthread_led.c思路led驱动,向上提供接口,设备节点5.    open(dev_led,  )6.    pthread_cond_wait (cond_led,  ); //等待条件表里7.    获取dev_led_mask(控制标志)//互斥锁8.    通过ioctl()控制ledpthread_sqlite.c 保存数据、更新数据pthread_transfer.czigbee向a9发送数据实现进程间通信实现线程间同步互斥从m0上把数据拿过来通知其他线程工作pthread_refresh.c把a9采集的数据和zigbee的采集的数据向网页上展示pthread_client_request.c把网页当作客户端,a9当作服务端,客户端发送命令即向服务器进行请求通过消息队列机制通过拿到消息队列的id,实现读写拿到消息队列的消息,判断消息类型处理不同的事情(led、蜂鸣器等)pthread_sms.c gprs线程发短信、打电话sem.c与其他进程间通信,CGI线程间通信、同步互斥

        
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/752827.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ollama部署本地大模型

ollama run gemma:2b "菊花为什么是红色的?" 如今 LLM 早已不再等同于昂贵的 GPU,而是可以在大部分消费级计算机上运行推理的应用了——俗称本地大模型。 Ollama 安装十分简单,macOS 直接在官网下载安装包打开运行;Wi…

华为汽车业务迎关键节点,长安深蓝加入HI模式,车BU预计今年扭亏

‍编辑 |HiEV 一年之前,同样是在电动汽车百人会的论坛上,余承东在外界对于华为和AITO的质疑声中,第一次公开阐释了华为选择走智选车模式的逻辑。 一年之后,伴随问界M7改款、问界M9上市,华为智选车模式的面貌已经发生了…

【Maven篇】解锁 Maven 的智慧:依赖冲突纷争下的版本调停者

缘起 软件开发世界是一个充满无限可能的领域,但同时也伴随着诸多挑战。其中之一,就是依赖冲突的问题。在这篇文章中,我们将揭开 Maven 这位“版本调停者”的神秘面纱,深入探讨如何在版本纠纷的盛宴中解决依赖问题。 Maven&#…

集成学习bagging与boosting

集成学习是机器学习中的一种策略,旨在结合多个学习器的预测结果,以提高总体性能,减少过拟合,增强模型的泛化能力。Boosting和Bagging是集成学习中两种非常著名的方法,它们虽然共享集成多个学习器以达到更好性能的共同目…

《建造者模式(极简c++)》

本文章属于专栏《设计模式(极简c版)》 继续上一篇《工厂模式(极简c)》。本章简要说明建造者模式。本文分为模式说明、本质思想、实践建议、代码示例四个部分。 模式说明: 方案:不同场景对类的构建有不同需…

python内置函数 L

python内置函数 L Python 解释器内置了很多函数和类型,任何时候都能使用。 L 名称描述len返回对象的长度。list返回一个新列表。locals返回一个字典,表示当前局部符号表。 len(s) 返回对象的长度(元素个数)。实参可以是序列&…

什么是docker(docker客户端、镜像、容器、仓库)

一、docker Docker 是一个开源的容器化平台,它可以让开发者打包应用程序及其依赖项成为一个轻量级、可移植的容器,然后在任何环境中运行。Docker 容器将应用程序及其依赖项打包到一个标准化单元中,包括代码、运行时环境、系统工具、系统库等…

RDP爆破

工具:超级弱口令检查工具 第一步:双击打开工具 第二步:导入账号 第三步:导入密码 第三步:线程 线程默认是50,如果担心影响业务可以修改为5 第四步:填写目标 第五步:选择需要检查的…

前端入职配置新电脑!!!

前端岗位入职第一天到底应该做些什么呢?又该怎样高效的认识、融入团队?并快速进入工作状态呢?这篇文章就来分享一下,希望对即将走向或初入前端职场的你,能够有所帮助。内含大量链接,欢迎点赞收藏&#xff0…

feigni请求添加拦截器

FeignClient 的 configuration 属性: Feign 注解 FeignClient 的 configuration 属性,可以对 feign 的请求进行配置。 包括配置Feign的Encoder、Decoder、 Interceptor 等。 feign 请求添加拦截器,也可以通过这个 configuration 属性 来指…

jenkins使用公共库问题

Jenkins解决上编译解决引用问题 本地运行 把公共库创建链接到指定项目目录下即可 mklink /d /j D:\codepath\xxxx\yyyyy\tool_base D:\codepath\tool_base

香港公司变更注册地址所需材料及流程全解析

香港公司变更注册地址:所需材料及流程全解析 各位老板好,我是经典世纪胡云帅,随着业务的拓展和发展,香港公司可能需要变更其注册地址。变更注册地址不仅关系到公司的日常运营,还与公司的法律地位和品牌形象息息相关。本…

python--剑指offer--题目目录-学习计划

第一天 09. 用两个栈实现队列30. 包含min函数的栈 第二天 06. 从尾到头打印链表24. 反转链表35. 复杂链表的复制 第三天 05. 替换空格58 - II. 左旋转字符串 第四天 03. 数组中重复的数字53 - I. 在排序数组中查找数字 I53 - II. 0~n-1中缺失的数字 第五天 04.…

git--协同开发

目录 1.本地常用命令 2.云端部署 1.本地常用命令 git init 初始化仓库 git status 显示当前工作区是否有未提交代码 git add (文件名) 提交文件到暂存区 git commit -m "提交说明" 提交文件到本地仓库 git log 显示当前分支上的日志记录 git reflog 显…

JS08-DOM节点

DOM节点 查找节点 父节点 通过.parentNode属性可以获得某个元素的父节点&#xff0c;并对其进行操作。例如&#xff0c;隐藏.son元素的父节点。 <div class"father"><div class"son">儿子</div></div><script>let son d…

cesium HeadingPitchRoll HeadingPitchRange

一、HeadingPitchRoll表示Heading、Pitch、Roll&#xff0c;用于orientation属性上的&#xff0c;比如camera的setView&#xff0c;flyTo var heading Cesium.Math.toRadians(0.0);var pitch Cesium.Math.toRadians(-25.0);var roll Cesium.Math.toRadians(0);viewer.camera…

PyTorch学习笔记之基础函数篇(六)

文章目录 4 运算函数基本数学运算线性代数运算随机数生成统计运算张量操作 4 运算函数 PyTorch 提供了丰富的运算函数&#xff0c;用于进行各种数学和矩阵操作。这些函数可以分为几个主要类别&#xff0c;包括基本数学运算、线性代数运算、随机数生成、统计运算、张量操作等。…

餐饮店引流活动方案与最佳营销方案揭秘

想开实体店或正在创业的朋友们&#xff0c;大家好&#xff01;我是一名资深的实体店创业者&#xff0c;本人经营鲜奶吧5年时间&#xff0c;做的是社区店&#xff0c;今天我将分享一些餐饮店引流活动和营销方案的干货&#xff0c;希望能给大家带来一些启发和帮助。 一、引流活动…

昆山劳务外包找邦芒人力 助力企业节约成本提升效率

劳务外包&#xff0c;对于企业而言&#xff0c;其优势不仅显著&#xff0c;且影响深远。在竞争日益激烈的市场环境中&#xff0c;将技术性和事务性的工作外包给专业机构&#xff0c;已成为众多企业的明智决策。通过外包&#xff0c;企业得以释放管理者的精力&#xff0c;使其更…

基于多尺度视网膜增强图像去雾算法(MSR,Multi-Scale Retinex),Matalb实现

博主简介&#xff1a; 专注、专一于Matlab图像处理学习、交流&#xff0c;matlab图像代码/项目合作可以联系&#xff08;QQ:3249726188&#xff09; 个人主页&#xff1a;Matlab_ImagePro-CSDN博客 原则&#xff1a;代码均由本人编写完成&#xff0c;非中介&#xff0c;提供有偿…