linux arm下获取屏幕事件(rk3588)
1、找到屏幕设备名称
cat /proc/bus/input/devices

我的屏幕设备是ILITEK ILITEK-TP,它的设备名称是event1.
2、读取屏幕事件。
方法1:
cat /dev/input/event1 | hexdump

方法2:

3、c++代码实现
#include <stdio.h>
#include <unistd.h>
#include <sys/ioctl.h>
#include <fcntl.h>
#include <errno.h>
#include <linux/input.h>
#include <QCoreApplication>
#include <QDebug>int main(int argc, char *argv[])
{QCoreApplication a(argc, argv);int fd;fd_set rds;int ret;struct input_event event;struct timeval time;fd = open( "/dev/input/event1", O_RDONLY );if ( fd < 0 ){qWarning()<<"/dev/input/event1";return(-1);}while ( 1 ){FD_ZERO( &rds );FD_SET( fd, &rds );/*调用select检查是否能够从/dev/input/event1设备读取数据*/ret = select( fd + 1, &rds, nullptr, nullptr, nullptr );if ( ret < 0 ){qWarning()<<"select";return(-1);}/*能够读取到数据*/else if ( FD_ISSET( fd, &rds ) ){ret = read( fd, &event, sizeof(struct input_event) );time = event.time;qDebug("timeS=%ld,timeUS=%ld,type=%d,code=%d,value=%d\n", time.tv_sec, time.tv_usec, event.type, event.code, event.value );}}/*关闭设备文件句柄*/close( fd );return a.exec();
}相关文章:
linux arm下获取屏幕事件(rk3588)
1、找到屏幕设备名称 cat /proc/bus/input/devices我的屏幕设备是ILITEK ILITEK-TP,它的设备名称是event1. 2、读取屏幕事件。 方法1: cat /dev/input/event1 | hexdump方法2: 3、c代码实现 #include <stdio.h> #include <unis…...
【机器学习】人工智能与气候变化:利用深度学习与机器学习算法预测和缓解环境影响
📝个人主页:哈__ 期待您的关注 目录 🔥引言 1.1 背景介绍 1.2 人工智能与机器学习的崛起 1.3 本文内容概述 🔨气候变化的挑战 2.1 现今气候变化带来的影响和挑战 2.2 引发关注的气候变化趋势和数据 🤖人工智能…...
物联网射频识别和RFID开发(二):RFID原理及硬件组成
一、RFID无线识别的原理 (一)读写器与标签之间的无线电波交互方式 1、电感耦合 2、电磁反向散射耦合 (二)标签是如何将数据反馈给读写器的 1、电感耦合中的负载调试 2、电磁反向散射耦合中的负载调制 二、RFID无线通信中的调制…...
LeetCode763. 划分字母区间(2024冬季每日一题 23)
给你一个字符串 s 。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。 注意,划分结果需要满足:将所有划分结果按顺序连接,得到的字符串仍然是 s 。 返回一个表示每个字符串片段的长度的列表。 示例 1&a…...
python调用GPT-4o实时音频 Azure OpenAI GPT-4o Audio and /realtime
发现这块网上信息很少,记录一下 微软azure入口 https://learn.microsoft.com/zh-cn/azure/ai-services/openai/realtime-audio-quickstart?pivotsprogramming-language-ai-studio sdk文档 https://github.com/azure-samples/aoai-realtime-audio-sdk?tabread…...
Hadoop生态圈框架部署 伪集群版(四)- Zookeeper单机部署
文章目录 前言一、Zookeeper单机部署(手动部署)1. 下载Zookeeper安装包到Linux2. 解压zookeeper安装包3. 配置zookeeper配置文件4. 配置Zookeeper系统环境变量5. 启动Zookeeper6. 停止Zookeeper在这里插入图片描述 注意 前言 本文将详细介绍Zookeeper的…...
LuaJava
一、什么是LuaJava LuaJava是一个Java脚本工具。该工具的目标是允许用Lua编写的脚本操纵用 Java开发的组件。LuaJava允许使用与访问Lua的本机对象相同的语法从Lua访问Java组件,而不需要任何声明或任何类型的预处理。 LuaJava还允许在Lua中实现任何Java接口&#x…...
Maven下载安装、环境配置(超详细)(包括Java环境配置(Windows)、在IDEA中配置Maven)
目录 一、引言 二、下载和安装 Maven (1)首先保证 Java 的环境是正常的。 1、电脑桌面上右击 " 此电脑 ",点击属性。 2、点击高级系统设置。 3、点击环境变量。 4、找到系统变量中的 Path。 5、点击新建,然后把想要配置…...
Python中的实例方法、静态方法和类方法三者区别?
1、实例方法 不用classmethod和staticmethod修饰的方法为实例方法。在类中定义的方法默认都是实例方法。实例方法最大的特点是它至少要包含一个self参数,用于绑定调用此方法的实例对象,实例方法通常可以用类对象直接调用。 2、类方法 采用classmethod…...
【学习Go编程】
了解Go语言的基本概念: 学习Go的基本语法、数据类型、控制结构等。可以参考官方文档或基础教程来入门。 安装Go环境: 访问Go语言的官方网站,下载并安装适合你操作系统的Go编程环境。配置好环境变量,确保可以在命令行中使用go命令…...
Linux系统:网络
目录 一、网络协议 1.网络协议概念 2.协议分层 3.OSI七层模型和TCP/IP五层(或四层)模型 4.为什么要有网络协议? 5.网络通信协议的原理 二、网络传输的基本流程 1.局域网的网络传输流程 1.MAC地址 2.局域网通信原理(以太网…...
shodan2-批量查找CVE-2019-0708漏洞
声明! 学习视频来自B站up主 泷羽sec 有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关&#…...
面向对象(二)——类和对象(上)
1 类的定义 做了关于对象的很多介绍,终于进入代码编写阶段。 本节中重点介绍类和对象的基本定义,属性和方法的基本使用方式。 【示例】类的定义方式 // 每一个源文件必须有且只有一个public class,并且类名和文件名保持一致! …...
Redis3——线程模型与数据结构
Redis3——线程模型与数据结构 本文讲述了redis的单线程模型和IO多线程工作原理,以及几个主要数据结构的实现。 1. Redis的单线程模型 redis6.0之前,一个redis进程只有一个io线程,通过reactor模式可以连接大量客户端;redis6.0为了…...
linux 获取公网流量 tcpdump + python + C++
前言 需求为,统计linux上得上下行公网流量,常规得命令如iftop 、sar、ifstat、nload等只能获取流量得大小,不能区分公私网,所以需要通过抓取网络包并排除私网段才能拿到公网流量。下面提供了一些有效得解决思路,提供了…...
C++知识整理day3类与对象(下)——赋值运算符重载、取地址重载、列表初始化、友元、匿名对象、static
文章目录 1.赋值运算符重载1.1 运算符重载1.2 赋值运算符重载 2.取地址重载2.1 const成员函数2.2 取地址运算符重载 3.类与对象的补充3.1 再探构造函数---初始化列表3.2 类型转换3.3 static成员3.4 友元3.5 内部类3.6 匿名对象3.7 对象拷贝时的编译器优化 1.赋值运算符重载 赋…...
pytest(二)excel数据驱动
一、excel数据驱动 excel文件内容 excel数据驱动使用方法 import openpyxl import pytestdef get_excel():excel_obj openpyxl.load_workbook("../pytest结合数据驱动-excel/data.xlsx")sheet_obj excel_obj["Sheet1"]values sheet_obj.valuescase_li…...
python蓝桥杯刷题3
1.解方程组解 题解:首先让a,b,c进行遍历,然后计算得到1000时输出结果,其次考虑1000开根号是多大,计算得到32的倍数是1024,所有选择(1,32)进行遍历,…...
基于PySpark 使用线性回归、随机森林以及模型融合实现天气预测
基于PySpark 实现天气预测与模型集成 在大数据分析与机器学习领域,Spark 提供了强大的计算能力和灵活的扩展性。本文将介绍如何利用 PySpark 完成以下任务: 1、数据预处理:清洗和编码天气数据。 2、特征工程:合并数值和分类特征…...
Day 30 贪心算法 part04
今天的三道题目,都算是 重叠区间 问题,大家可以好好感受一下。 都属于那种看起来好复杂,但一看贪心解法,惊呼:这么巧妙! 这种题还是属于那种,做过了也就会了,没做过就很难想出来。 不过大家把如下三题做了之后, 重叠区间 基本上差不多了 452. 用最少数量的箭引爆气球…...
PyTorch RMSprop优化器报错怎么办?教你一招避坑
💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 PyTorch RMSprop优化器报错深度解析:一招解决常见陷阱目录PyTorch RMSprop优化器报错深度解析:一招解决常…...
你的脑洞,值得被“电”亮!TimechoAI 有奖反馈征集令!
五月初,我们“官宣”了将时序大模型“上云”的智能服务平台:TimechoAI,无门槛体验,注册即能试用全部功能!体验过 TimechoAI 的你,心里一定有点想法吧?是惊喜?是建议?还是…...
JWT安全实战:从算法漏洞到生产级防御体系
1. 为什么JWT不是“自带安全”的令牌,而是一把双刃剑JWT(JSON Web Token)在现代Web应用中几乎无处不在——登录成功后返回一串Base64Url编码的字符串,前端存进localStorage,后续请求带上Bearer头,后端解析、…...
DALL·E Mini技术解析:轻量文本生成图像模型的开源实践
1. 项目概述:这不是魔法,是开源图像生成的平民化拐点“Dalle Mini Is Amazing — And You Can Use It!” 这句话在2022年夏天刷爆技术社区和创意论坛时,我正蹲在一台老旧的MacBook Air上,用它生成第一张“一只穿着西装的柴犬站在火…...
别再手动改Hex了!用Vector HexView的/remap命令,5分钟搞定固件地址重映射
嵌入式开发革命:Vector HexView自动化重映射技术实战指南 在汽车电子和物联网设备开发中,固件地址调整如同家常便饭。每当内存布局变更、Bootloader升级或外设地址重新分配时,嵌入式工程师们就不得不面对一项枯燥且容易出错的任务——手动修改…...
从BJT到CMOS:运放偏置电流的前世今生,以及它对高阻抗传感器电路设计的实际影响
从BJT到CMOS:运放偏置电流的前世今生,以及它对高阻抗传感器电路设计的实际影响 在精密测量领域,运算放大器的偏置电流就像一位隐形的"电流小偷",悄无声息地影响着测量精度。想象一下,当你试图测量一个微弱的…...
今天不学这5个专业级Refinement技巧,你的ChatGPT文章永远过不了主编终审关
更多请点击: https://codechina.net 第一章:Refinement技巧在ChatGPT内容生产中的战略价值 Refinement(精炼)并非简单的二次润色,而是以目标导向的迭代式提示工程策略——它通过结构化反馈、上下文锚定与语义约束&…...
Shader Graph边缘光原理与实战:从菲涅尔效应到世界空间法线
1. 为什么边缘光不是“加个描边”那么简单——从美术需求到Shader本质的错位“给模型加个边缘光”,听起来像Unity编辑器里拖个组件、点几下鼠标就能搞定的事。我第一次接到这个需求时,美术同学在评审会上甩出一张《原神》角色截图,指着雷电将…...
在内容生成流水线中集成多模型 API 以提升创作多样性
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 在内容生成流水线中集成多模型 API 以提升创作多样性 对于新媒体运营、营销或内容创作团队而言,保持内容的新鲜感与多样…...
VLC隐藏玩法:结合Lua脚本实现智能视频播放(比如根据时间切换片单)
VLC隐藏玩法:结合Lua脚本实现智能视频播放 你是否厌倦了手动切换播放列表?VLC作为一款开源多媒体播放器,其真正的潜力远不止于基础播放功能。通过Lua脚本接口,我们可以解锁VLC的自动化能力,实现根据时间、文件存在与否…...
