自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 i2c具体协议发送的底层实现简介(附图理解)

i2c总线与i2c_adapter的匹配在系统刚开始加载设备树时即匹配完成,然后再加载i2c1设备时可知其挂载在i2c@40012000总线上,所以其client自动会将对应i2c_adapter匹配,因此在驱动程序中对client(i2c从机设备)进行读写时会调用i2c_adapter中的算法。首先说明从驱动层的最上层的发送函数开始看。

2025-03-02 21:37:39 142

原创 input_event调用后内部的上传逻辑(内核源码分析)

input输入子系统

2025-01-03 17:04:22 677

原创 Linux内核中input子系统中的按键EV_KEY事件无法连续上报同一个值的原因

input输入子系统,按键事件

2025-01-02 20:57:49 270

原创 获取输入设备信息程序解析-基于韦东山课程

函数是 Linux 内核中输入子系统的一部分,它用于处理与 evdev 设备(一种在 Linux 中表示输入设备的通用设备)相关的 ioctl(输入/输出控制)请求。是一个系统调用,用于控制设备,它允许用户空间程序发送命令给内核中的设备驱动程序(比如获取设备ID,获取evbit等),即request为命令(cmd),第三个参数用于存储获得的信息(根据request来决定)函数用于执行特定的输入设备控制命令,这些命令用于与输入设备进行交互,以获取设备的状态信息或执行某些操作。而具体设备的驱动程序如。

2024-09-23 21:17:06 736

原创 韦东山老师嵌入式Linux网络配置Ubuntu20

本人使用环境为Ubuntu20的实体设备,所以网络环境即Windows和Ubuntu和开发板三者共连一个交换机上,只需要将三者的IP地址改成同一个网段上即可pingtong。在文件最后一行添加如下内容:/home/Linux/mmt/ *(rw,sync,no_root_squash)然后就是NFS挂载问题,无法使用脚本挂载,所以要先手动安装NFS。则可以依次手动运行下列命令即可安装nfs服务。要注意该文件夹要实际存在,可pwd查看路径。注意要有空格,即可挂载成功。然后重新启动nfs服务。

2024-09-06 13:16:23 535

原创 python内容极度精简----参考莫烦python

12正则表达式(RegExp--Regular Expression)--用于爬虫(匹配字符(数据),在众多字符中寻找自己需要的内容,比如爬取每一页的标题,因为网页中标题一般是 ---- 这种形式)--具体看莫烦python。zip(a,b) #输出[(1,4),(2,5),(3,6)] 可以用 ---for i,j in zip(a,b): print(i,j)---来打印。print(set(char_lsit))#--输出{'s','f,'a'},里面顺序可能不同。

2023-06-04 00:12:17 279 1

原创 linux文件结构

imread("图片.jpg");//文件在根目录(即主目录)下。imread("../图片.jpg");//文件在上一层目录下。imread("./图片.jpg");

2023-06-03 20:00:50 117

原创 ros安装与卸载

1.安装用鱼香ros。//删除ros相关依赖和配置。

2023-06-01 11:15:05 3548 2

原创 C++ 四. 复合类型 2023.4.17

或者 typename arrayname [arraysize]={个数<=arraysize}---如果花括号没有内容则默认数组元素全为0;----arraysize可以不写让编译器通过花括0号内的元素个数自己判定;5.普通的cin>>是面向字符的输入,而还有面向行的输入的函数即cin.getline(arrayname,arraysize)和cin.get();---关于2个个函数的区别请看C++primer plus-6的p81;------或char test[10] = "1";

2023-04-20 17:24:48 100

原创 C++ 三 . 处理数据 2023.4.16

5.自动类型转换:简单来说就是在两个操作数进行运算时,首先会将低优先级的操作数类型转换成另一个高优先级的类型(比如int比float低),且其中还有一个原则就是如果他们都比int型低则在运算时会转化成int(因为计算机对于int型的计算最为熟悉),不过最后还是回到运算定义类型,类似。数值限定,在数值后面加L,f等会对常量数值进行严格限定,如34f代表的是float型,34l(或34L)代表的是long型;2.对于除法(/)而言,4/2=2,3/2=1(整数之间的除法会舍弃小数部分),3/2.0(或者3。

2023-04-17 16:53:32 258

原创 C++ 三 . 处理数据 2023.4.15

因为float类型的有效精度为 前6位或者前七位(十进制),而说float为32位即代表在二进制中(小数点后加小数点前共32位)--------原因是浮点数在计算机中的储存原理(1000.01代表8.25 小数点后面的位分别为2^-1,2^-2),所以对于11.17这种数值对于计算机中永远存不到一个准确的值;则表示在计算机中 ch为77(对应ascall码值),若 int a=ch;而如果是 char n;则此时输入5,则将5对应的ascall码值存入n中,输入a则将ascall码值存入n中;

2023-04-15 22:04:07 232 1

原创 C++ 二 2023.4.14

1.对于 void定义的函数,再函数体中可以没有return 而对于 int 定义的函数,函数体中必须要有int型返回值 如return 0(也可以是变量)2. cout <<....即将后面内容传递到cout中在运行窗口输出,且如果是字符串需要用双引号;采集到键盘输入的内容船到后面的参数中;(2)只不过它的生命周期和全局变量一样长而已。(3)全局变量一定是定义在函数外部的。3.A函数中定义的的形参值在A函数中可以传入其它函数;在cout流中可以进行运算,cin不行;4.(1)main函数内的变量。

2023-04-15 15:18:05 96 1

原创 在ubantu环境下的一些问题

总结:csdn上有很多教程,建议安装和配置一些东西之前先找好适合的教程,然后根据教程选择对应的程序版本,然后再进行安装(两天的坐牢教训====)1.如果是在下载软件时下载不了(无法定位到该软件)可以通过换软件源(阿里源,清华源,,,)处理。对于ubantu(VM下)与windows的复制粘贴问题就是先后执行2条ubantu命令。4.vm下的ubantu调用笔记本摄像头问题暂未解决,猜测可以用外接蓝牙外设摄像头来使用。3.ubantu 18.04真的很好用(个人感觉,可能是网上教程多,比较成熟)。

2023-04-11 18:02:03 79 1

原创 1.搭建OpenCv环境

首先根据csdn其它教程进行搭建,但是到后面一直运行不了测试样例,并且属性管理器已经搭建好,最后发现是因为所选取的照片格式的问题。电脑截图为png,而测试需要图片为jpg。总结,在搭建环境后运行不了,首先重新检查是否与教程一直,然后不行可以看看输出窗口的error,然后再将error粘贴至百度查看错误。

2023-04-04 22:12:07 193 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除