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,一经查实,立即删除!

相关文章

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

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

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

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

RDP爆破

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

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

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

jenkins使用公共库问题

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

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

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

cesium HeadingPitchRoll HeadingPitchRange

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

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

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

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

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

【Flink SQL】Flink SQL 基础概念(四):SQL 的时间属性

《Flink SQL 基础概念》系列,共包含以下 5 篇文章: Flink SQL 基础概念(一):SQL & Table 运行环境、基本概念及常用 APIFlink SQL 基础概念(二):数据类型Flink SQL 基础概念&am…

浅谈C++的模板—— 这一篇就够了

今天我们来谈谈C中有关于模板的知识😊😊😊,对于C模板来说,我们首先得了解以下几个术语 函数模板模板函数模板实例化模板特例化模板的实参推演模板的非类型参数非模板函数类模板模板类选择性实例化 下面,我…

在Visual Studio中调试 .NET源代码

前言 在我们日常开发过程中常常会使用到很多其他封装好的第三方类库(NuGet依赖项)或者是.NET框架中自带的库。如果可以设置断点并在NuGet依赖项或框架本身上使用调试器的所有功能,那么我们的源码调试体验和生产效率会得到大大的提升。今天我…

数据分析 | Matplotlib

Matplotlib 是 Python 中常用的 2D 绘图库,它能轻松地将数据进行可视化,作出精美的图表。 绘制折线图: import matplotlib.pyplot as plt #时间 x[周一,周二,周三,周四,周五,周六,周日] #能量值 y[61,72,66,79,80,88,85] # 用来设置字体样式…

vulnhub ---- Dr4g0n b4ll

文章目录 网段扫描隐藏目录隐写尝试通过ssh连接提权路径劫持 网段扫描 nmap -sn 命令用于执行主机存活扫描,仅检测目标网络中的活动主机,而不进行端口扫描。 ┌──(root㉿kali)-[~/Downloads] └─# nmap -sn 10.10.10.0/24 …

计算机网络——物理层(宽带接入技术)

计算机网络——物理层(宽带接入技术) 什么是宽带有线带宽接入xDSLADSL 技术ADSL 的大部分组成 光纤同轴混合网(HFC 网)机顶盒与电缆调制解调器(set-top box) FTTx 技术光配线网 ODN (Optical Distribution …

nginx 基本使用、借助 nginx 和 mkcert 实现本地 https://localhost 测试。

CSDN 如何将资源设置为免费? 安装和基本使用 进入 nginx 官网 下载 Mainline version 版本 解压到一个你喜欢的位置,比如解压到 C: 目录 不管配不配置环境变量,对 nginx 的所有操作都应该在对应文件夹中 基本命令的使用: cd …

性能测试 事务 -- HPE Virtual User Generator -Web -HTTP/HTML

软件介绍 Virtual User Generator ,记录用户流程并创建一个自动化性能测试脚本 Controller,单一控制点,轻松、有效地控制所有Vuser,执行期间监控场景性能 Analysis,生成性能测试报告,以图表形式呈现。 操…

2024图表分析网页模版大数据可视化大屏电子沙盘合集包含金融行业智慧大厅智慧交通智慧门店智慧物流智慧小区

2024图表分析网页模版大数据可视化大屏电子沙盘合集包含金融行业智慧大厅智慧交通智慧门店智慧物流智慧小区 项目介绍: 图表分析网页模版 大数据可视化大屏电子沙盘合集,项目基于html/css/js,包含行业: 智慧政务 智慧社区 金融行…

mysql 更新时,旧值与新值相同会怎么做?

文章目录 1 问题描述2 验证2.1 验证猜想12.2 验证猜想2 3 结论4 mysql 为什么这么设计呢? 1 问题描述 创建一张表t,插入一行数据 mysql> CREATE TABLE t ( id int(11) NOT NULL primary key auto_increment, a int(11) DEFAULT NULL ) ENGINEInnoDB…

第111讲:Mycat实践指南:固定Hash算法分片下的水平分表详解

文章目录 1.固定Hash算法分片的概念1.1.固定Hash算法的概念1.2.固定Hash算法是如何将数据路由到分片节点的 2.使用固定Hash算法分片对某张表进行水平拆分2.1.在所有的分片节点中创建表结构2.2.配置Mycat实现固定Hash算法分片的水平分表2.2.1.配置Schema配置文件2.2.2.配置Rule分…