自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(232)
  • 资源 (11)
  • 收藏
  • 关注

转载 ISP pipeline之lens shading correction

ISP lSC

2022-09-13 11:56:59 1254

转载 Linux-hexdump命令调试event驱动—详解(13)

2018-01-03阅读6300hexdump: 查看文件的内容,比如二进制文件中包含的某些字符串,通常用来调试驱动用描述:我们以event1为例,当我们insmod挂载了键盘驱动后,出现一个event1设备,此时没有按键按下,所以event1里面的数据是没有的,那么数据又是从来哪里来?通过键盘驱动的read函数,若有按键按下,就会上传按键数据给用户层hexdump因为键盘驱动的input_handler 是:evdev_handler所以键盘驱动的read函数是:ev...

2021-10-14 11:45:11 983

原创 linux 密码文件 /etc/shadow md5,SHA256,SHA512 破解

版权目录环境shadow文件解析John the Ripper安装John the Ripper破解环境Kali系统 John the Ripper密码破解者shadow文件解析文件的格式为:{用户名}:{加密后的口令密码}:{口令最后修改时间距原点(1970-1-1)的天数}:{口令最小修改间隔(防止修改口令,如果时限未到,将恢复至旧口令):{口令最大修改间隔}:{口令失效前的警告天数}:{账户不活动天数}:{账号失效天数}:{保留}其中{加密后的口令..

2021-09-27 15:32:25 1913

转载 rk3288 linux OTA A/B升级分析

最近在做rk3288 linux的OTA A/B升级方案,因此研究了一下rk3288自带的OTA升级流程,将其记录下来。1.概述1.1 什么是OTA升级?OTA是Over-the-Air的简称,OTA升级可以理解为用户正常使用过程中进行升级,OTA 升级旨在升级基础操作系统、系统分区上安装的只读应用和/或时区规则。1.2 什么是OTA A/B升级?A/B 系统升级(也称为无缝更新)的目标是确保在OTA升级期间在磁盘上保留一个可正常启动和使用的系统。1.3 rk3288分区信息参考:htt

2021-09-16 14:42:49 3191

转载 camera理论基础和工作原理

写在前面的话,本文是因为工作中需要编写摄像头程序,因为之前没有做过这类产品,所以网上搜索的资料,先整理如下,主要参考文章如下,如果有侵权,请联系我;另外,转载请注明出处。本文不一定全部正确,如果发现错误请指正。如果有新的理解,会继续整理。http://blog.csdn.net/xubin341719/article/details/7723725http://blog.csdn.net/pengwentao/article/details/7180115http://blog.csdn.n

2021-08-19 11:32:54 1150

原创 2021-08-06记录一下 ------网页在线查看linux,uboot,busybox源码

https://elixir.bootlin.com/linux/latest/source

2021-08-06 19:44:21 755

转载 sed 字符串替换

1. sed替换的基本语法为:sed 's/原字符串/替换字符串/'单引号里面,s表示替换,三根斜线中间是替换的样式,特殊字符需要使用反斜线”\”进行转义。2. 单引号” ‘ ’”是没有办法用反斜线”\”转义的,这时候只要把命令中的单引号改为双引号就行了,格式如下:# 要处理的字符包含单引号sed "s/原字符串包含'/替换字符串包含'/" 3. 命令中的三根斜线分隔符可以换成别的符号,有时候替换目录字符串的时候有较多斜线,这个时候换成其它的分割符是较为方便,只需要紧跟s定义...

2021-06-04 11:32:16 27545 1

转载 gdb调试解决找不到源代码的问题

发表于2020-07-13|更新于2020-07-18|分类于linux|热度℃ | 字数统计:4,466(字) | 阅读时长:20(分)|50前言通过gdb启动程序,打好断点运行,开始调试输入list命令,结果发现找不到源代码,是不是很糟心,让我们来看看怎么解决这种情况。先來说明我们要处理的情况,调试程序找不到源代码首先你得有源代码,如果编译完程序你把源代码删了,或者单独把执行程序拷贝到一个没有源代码的机器上,那么拜拜...

2021-06-03 11:21:11 5468

转载 gdb 调试总结

发表于2018-06-22|分类于tools根据陈皓的博客总结的gdb常用调试技巧原文链接使用GDB要调试C/C++的程序,在编译时,使用编译器(cc/gcc/g++)的-g参数把调试信息加到可执行文件中。启动GDB的方法:gdb <program>: 用gdb调试可执行文件。 gdb <program> core: 用gdb调试coredump。 gdb <program> <PID>: 用gdb atta...

2021-06-03 11:10:26 735

转载 2021-05-20

Yocto编译流程详细攻略及bitbake实用方法2020-04-10bityocto本文yocto部分转自https://www.kancloud.cn/digest/yocto,整理一下,方便翻阅,比yocto官方文档要简单明了的多,也省去了不少翻译的痛苦。文章目录一、yocto (1): Yocto 编译后文件放在了哪里 输出文件位置 (2): Yocto Linux内核编译目录在哪? (3): Yocto 如何重新编译Linux内核与dtb,并放到dep...

2021-05-20 20:47:49 645

原创 patch 修补文件(给文件打补丁)

patch 修补文件(给文件打补丁)功能:修补文件。使用补丁文件,对源文件进行更改。更改方式根据参数来设定。倘若一次仅修改一个文件,可直接在指令列中下达指令依序执行。如果配合修补文件的方式则能一次修补大批文件。语法:patch [OPTION] [ORIGFILE] [PATCHFILE]输入选项 -p NUM --strip=NUM 去除相对路径层次的数目 -F LINES --fuzz LINES 设置监别列数 -l --igno...

2021-04-14 14:22:17 3531

转载 mount挂载与umount卸载

mount挂载与umount卸载author:headsen chen 2017-10-23 15:13:51 个人原创,转载请注明作者,否则依法追究法律责任mount:挂载: eg : mount /dev/cdrom /mnt ------------------------ 挂载本地的光盘 mount -t nfs 192.168.1.2:/a /b --------------------...

2021-04-13 15:17:27 340

转载 linux下proc文件的读写(部分转载)

hnsncxy 2012-10-23 15:18:04 29629 已收藏 12分类专栏: linux驱动 文章标签: linux struct buffer file module版权in Linux,proc文件系统是一个虚拟文件系统,用户和应用程序可以通过proc文件系统得到当前的一些系统信息,并可以改变一些内核的参数。/proc下的文件是一种特殊文件,不能够像一般文件一样创建删除。如果要创建一个 proc 文件,并且不用 proc_fs 默认提供的 file_operation...

2021-04-08 21:00:53 1834

原创 i2cset - set I2C registers

bionic(8)i2cset.8.gzProvided by:i2c-tools_4.0-2_amd64NAME i2cset - set I2C registersSYNOPSIS i2cset [-f] [-y] [-m mask] [-r] i2cbus chip-address data-address [value] ... [mode] i2cset -VDESCRIPTION i2cse...

2021-04-02 13:48:01 1353

转载 i2cget - read from I2C/SMBus chip registers

bionic(8)i2cget.8.gzProvided by:i2c-tools_4.0-2_amd64NAME i2cget - read from I2C/SMBus chip registersSYNOPSIS i2cget [-f] [-y] i2cbus chip-address [data-address [mode]] i2cget -VDESCRIPTION i2cget is a...

2021-04-02 11:58:40 537

转载 2021-03-31

git error:invalid path问题解决(win下)背景在 windows 上 clone 内核某分支源码报错1. 报错详情1 $ git reset --hard HEAD2 error: invalid path 'drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.c'网络上查了一下大多是由于文件名格式不支持所至,但笔者尝试了一番无果。2. 最终解决办法git config core.protectNTFS false

2021-03-31 15:04:08 362

转载 2021-03-29

**windows下使用git diff --check 出现^M的问题**osc_clzqwodz2020/12/08 08:19阅读数 154windows下使用git diff --check 出现^M的问题当使用git diff命令查看修改时会出现^M的问题:但实际上查看代码我们并没有插入空格。这是由于每个操作系统有自己的换行符(就是当你按下”回车”后,系统会自动插入一些不可见的符号来表示一行的结束),Linux和Mac都是使用LF ,Windows 则是CRLF ,这.

2021-03-29 15:40:32 79

原创 i2ctool i2cget读取16位地址的寄存器值的方法

ASUS的i2cdetect tool放在device/asus/Z00L/i2c-tools目录下,用mmmdevice/asus/Z00L/i2c-tools就会生成相应的bin文件,push到机台的system/bin文件目录下root@ASUS_Z00L_63:/system/bin # ./i2cdetect -l i2c-0 i2c MSM-I2C-v2-adapter I2C adap...

2021-03-24 11:55:12 10388

转载 git origin 什么意思

作者:田雅文链接:https://www.zhihu.com/question/27712995/answer/39946123来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。你的代码库(repository)可以存放在你的电脑里,同时你也可以把代码库托管到Github的服务器上。在默认情况下,origin指向的就是你本地的代码库托管在Github上的版本。我们假设你首先在github上创建了一个Repository,叫做repository,假设你的Gi.

2021-03-17 20:39:53 262

原创 qt共享内存

qt 共享内存(QSharedMemory)——————————————————写入部分——————————————————(本次程序基于控制台程序)首先 使用共享内存得召唤一下:#include <QSharedMemory>然后 声明QSharedMemory类。并且命名为smemQSharedMemory smem;由于共享内存没有访问密钥,则不能找到共享的内存。我们给他设置一下访问密钥QString key,sharedstring;设置访问密钥qDebug()

2021-03-17 20:38:59 593

原创 Qt之Qprocess

QProcess可用于完成启动外部程序,并与之交互通信。一、启动外部程序的两种方式  1)一体式:void QProcess::start(const QString & program,const QStringList &arguments,OpenMode mode = ReadWrite)    外部程序启动后,将随主程序的退出而退出。  2)分离式:void QProcess::startDetached(const QString & program,co...

2021-03-17 20:21:05 1903

转载 Linux screen 命令详解

Linux screen 命令详解林墨2016-09-14 12:48:225161收藏8文章标签:linux终端screen一、背景系统管理员经常需要SSH 或者telent 远程登录到Linux 服务器,经常运行一些需要很长时间才能完成的任务,比如系统备份、ftp 传输等等。通常情况下我们都是为每一个这样的任务开一个远程终端窗口,因为它们执行的时间太长了。必须等待它们执行完毕,在此期间不能关掉窗口或者断开连接,否则这个任务就会被杀掉,一切半途而废了。二、简介...

2021-03-12 10:49:33 823

原创 shell脚本调试方法

目录Shell脚本调试选项 ShellCheck ExplainShell BASH Debugger 参考信息回到顶部Shell脚本调试选项Shell本身提供一些调试方法选项:-n,读一遍脚本中的命令但不执行,用于检查脚本中的语法错误。 -v,一边执行脚本,一边将执行过的脚本命令打印到标准输出。 -x,提供跟踪执行信息,将执行的每一条命令和结果依次打印出来。使用这些选项有三种方法(注意:避免几种调试选项混用)1.在命令行提供参数:$sh -x script...

2021-03-11 15:20:20 811

原创 v4l2_buffer位域描述

3.5.Buffers Prev Chapter3.Input/Output Next 3.5.BuffersA buffer contains data exchanged by application and driver using one of the Streaming I/O methods. Only pointers to buffers are exchanged, the data itself is not copied. These pointer...

2021-02-26 11:13:36 707

原创 2021-01-31

linux操作系统测试工具 作者:minions_222来源:CFDTesting.com采编发布于:2018年7月2日 名称 用途 lmbench 3.0-a9 测试包括文件读写、内存操作、进程创建销毁开销、网络等性能 unixbench5.1.2 ...

2021-01-31 14:32:12 1085

原创 2021-01-30

RK3399Pro入门教程(2)RK3399Pro分区表和固件组成 楼主 发表于 2019-2-14 13:18:33查看:14074|回复:31|[复制链接]|只看该作者 很多同学对3399Pro的启动方式和分区表开始感兴趣了,想着如何自己修改烧写固件,如何修改分区表, 今天就教大家识别...

2021-01-30 19:13:25 187

转载 2021-01-30

今天在Linux-arm 设备解压*.tar 压缩文件不成功,一直报错提示invalid tar magic,但是在Ubuntu 上使用tar 压缩、解压缩相同文件并不报错,经查找,后来确定原因并找到解决方法。整个过程及现象、解决方法记录如下:最先是在Ubuntu上拷贝了几个脚本文件到U盘,把U盘插在示教器(内置BuzyBox工具),运行其中一个脚本提示找不到这个脚本文件,但是ls 明显看得见此文件,后来发现 是shell脚本的符号链接 #!/bin/bash 在此Linux-arm设备上识别不了,改成

2021-01-30 17:28:08 139

原创 网络性能测试工具iperf详细使用图文教程

2020-12-08 14:24:04 552

原创 驱动模型匹配过程

#device方面:platform_device_register(struct platform_device *dev)------platform_device_add(pdev);----------device_add(&pdev->dev);--------------bus_probe_device(dev);-------------------device_attach(dev);-------------------------bus_for_each_dr.

2020-12-08 14:18:29 352

转载 Qt修改UI文件无效的两种解决方案

Qt修改UI文件无效的两种解决方案52_赫兹的鲸2018-04-23 13:26:1610135收藏11分类专栏:QT文章标签:Qthttps://blog.csdn.net/qq_40194498/article/details/80049258版权原因:Qt程序使用的UI文件并不是最新的UI文件解决办法:1、取消影子构建,此后构建目录与源码处于同一目录,每次编译更新程序使用的UI文件2、在.pro文件中添加代码:UI_DIR=./UI,指定UI...

2020-11-30 17:24:53 1018

转载 QT信号槽机制

信号槽信号槽是QT中用于对象间通信的一种机制,也是QT的核心机制。在GUI编程中,我们经常需要在改变一个组件的同时,通知另一个组件做出响应。例如:一开始我们的Find按钮是未激活的,用户输入要查找的内容后,查找按钮就被激活,这就是输入框与Find按钮这两个组件间通信的例子。早期,对象间的通信采用回调来实现。回调实际上是利用函数指针来实现,当我们希望某件事发生时处理函数能够获得通知,就需要将回调函数的指针传递给处理函数,这样处理函数就会在合适的时候调用回调函数。回调有两个明显的缺点:它们不是类

2020-11-27 19:41:32 540

转载 2020-11-27

C++ explicit关键字详解tiankong199992019-04-03 19:48:3785427收藏264分类专栏:C++文章标签:C++版权首先, C++中的explicit关键字只能用于修饰只有一个参数的类构造函数, 它的作用是表明该构造函数是显示的, 而非隐式的, 跟它相对应的另一个关键字是implicit, 意思是隐藏的,类构造函数默认情况下即声明为implicit(隐式).那么显示声明的构造函数和隐式声明的有什么区别呢? 我们来看下面的例子:...

2020-11-27 16:04:45 56

转载 正确理解Widget::Widget(QWidget *parent) :QWidget(parent)这句话

正确理解Widget::Widget(QWidget *parent) :QWidget(parent)这句话小豆君的干货铺Qt,C++,PyQt,数据挖掘76 人赞同了该文章最近有点忙,先发一篇我公众号的文章,以下是原文。/********原文********/最近很多学习Qt的小伙伴在我的微信公众号私信我,该如何理解下面段代码的第二行QWidget(parent)1 Widget::Widget(QWidget *parent) :2 QWidget(pa.

2020-11-27 14:49:33 580

转载 uboot 驱动模型

[uboot] (番外篇)uboot 驱动模型ooonebook2016-11-19 20:19:5123933已收藏48分类专栏:uboot文章标签:u-boot驱动模型dm版权[uboot] uboot流程系列:[project X] tiny210(s5pv210)上电启动流程(BL0-BL2)[project X] tiny210(s5pv210)从存储设备加载代码到DDR[uboot] (第一章)uboot流程——概述[uboot] (第二章)uboot流...

2020-11-26 18:39:24 1278

转载 Linux c 开发 - Autotools使用详细解读

Linux c 开发 - Autotools使用详细解读老码农zhuli2015-02-10 17:35:0914661已收藏37分类专栏:Linux c 开发系列版权目录关于AutotoolsAutotools详细使用 -c源文件相同目录下Autotools的使用相同目录 - Autoscan命令相同目录 - Aclocal命令相同目录 - Autoconf命令相同目录 - Autoheader命令相同目录 - 创建Makefile.am文件...

2020-11-17 10:54:57 402

原创 linux 服务器切换用户

linux命令切换tty杨瘦锅2015-12-03 15:49:4521313收藏4分类专栏:Linux文章标签:linux版权我们在正常情况下切换虚拟终端只要用组合键:Ctrl+Alt+Fn ,这个n就是你要切换的虚拟终端的号,然后可以再按Ctrl+Alt+F7回到图形界面。通过Fn(即是F1 F2 F3 F4 F5 F6 F7) 可以到与之对应的 ttyn(但是在vmware中这个办法经常不奏效,原因大家应该知道的,就是在vmware下默认按住 Ct...

2020-11-10 20:18:18 1102

转载 2020-11-10

裸奔的太阳加油,坚持下来!博客园 首页 新随笔 联系 订阅 管理随笔 - 93文章 - 0评论 - 7git diff查看修改,出现^M换行问题通过命令git diff查看修改,出现^M换行问题,如图:解决: git config --global core.whitespace cr-at-eol 只是 忽略,必须要下一步 检出时不转换   换行符的问题:提交时转换为L...

2020-11-10 19:58:04 75

原创 2020-10-24

rk3399 编译报错src/appi18n.cpp:31:83: error: no match for ‘operator+’ (operand types are ‘QStringRef’ and ‘const char [9]’) QString lang= tmp->value("LANG",defaultLang).toString().leftRef(langTokenLength)+"/appName";QString lang= (tmp->value("LAN..

2020-10-24 22:04:19 468

转载 GStreamer基础教程09 - Appsrc及Appsink

摘要在我们前面的文章中,我们的Pipline都是使用GStreamer自带的插件去产生/消费数据。在实际的情况中,我们的数据源可能没有相应的gstreamer插件,但我们又需要将数据发送到GStreamer Pipeline中。GStreamer为我们提供了Appsrc以及Appsink插件,用于处理这种情况,本文将介绍如何使用这些插件来实现数据与应用程序的交互。Appsrc与AppsinkGStreamer提供了多种方法使得应用程序与GStreamer Pipeline之间可以进行...

2020-10-15 19:55:40 2053

转载 GStreamer基础教程08 - 多线程

摘要  GStreamer框架会自动处理多线程的逻辑,但在某些情况下,我们仍然需要根据实际的情况自己将部分Pipeline在单独的线程中执行,本文将介绍如何处理这种情况。GStreamer多线程  GStreamer框架是一个支持多线程的框架,线程会根据Pipeline的需要自动创建和销毁,例如,将媒体流与应用线程解耦,应用线程不会被GStreamer的处理阻塞。而且,GStreamer的插件还可以创建自己所需的线程用于媒体的处理,例如:在一个4核的CPU上,视频解码插件可以创建4个线程来...

2020-10-15 19:54:47 686

AStyle3.1_win.zip

keil使用Astyle来整理代码,使得代码阅读性提高。

2019-12-10

hfs2_4rc2.exe

“HFS,它是一种上传文件的软件。 专为个人用户所设计的 HTTP 档案系统 - Http File Server,如果您觉得架设 FTP Server 太麻烦,那么这个软件可以提供您更方便的档案传输系统,下载后无须安装,只要解压缩后执行 hfs.exe”

2019-11-18

JTT978.3-2015.pdf

JT/T 978.3-2015 城市公共交通IC卡技术规范 第2部分:卡片

2019-07-16

JTT978.1-2015.pdf

JT/T 978.1-2015 城市公共交通IC卡技术规范 第1部分:总则

2019-07-16

CMake-master.zip

cmake工程源码(用于VS2017在线debug树莓派3b+),免于自己构建cmake 工程

2019-05-22

C C++ projects and build systems in Visual Studio .pdf

C C++ projects and build systems in Visual Studio pdf VS2017之cmake 跨平台工程

2019-05-21

VS2017调试linux应用程序

VS2017调试linux应用程序,环境构建步骤,英文资料使用说明

2019-05-06

pboc2.0规范文档v2

IC卡电子钱包存折规范V2-卡片部分、应用规范、应用指南、安全部分、卡片部分、应用部分、应用无关部分、终端部分、个人化指

2018-07-27

M1卡和CPU卡的区别

M1卡和CPU卡的区别,M1卡位逻辑加密卡,包括逻辑加密电路和可编程只读存储器EEPROM;CPU卡内包括CPU、EEPROM、随机存储器RAM和COS

2018-05-22

ISO7816_4 Organization, security and commands for interchange

7816-four: Organization, security and commands for interchange

2018-05-21

eclipse的linux版本

需要在linux下开发ARM的IDE,很不错的软件,只是需要自己配置相应的环境

2018-05-10

空空如也

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

TA关注的人

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