自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 问答 (2)
  • 收藏
  • 关注

原创 implicit declaration of function ‘strptime’ [-Wimplicit-function-declaration]

implicit declaration of function ‘strptime’ strftime() strptime() __USE_XOPEN _XOPEN_SOURCE

2022-06-14 09:20:16 2768

原创 The User Account Did Not work远程桌面连接不上的解决办法

The User Account Did Not work远程桌面连接不上的解决办法用Microsoft Remote Desktop for mac远程连接另一台windows 10的电脑时,输入Administrator的账号和密码后发现无法连接。提示The User Account Did Not work 。解决办法:此电脑 → 管理 → 本地用户和组 → 用户 → 找到你的账户 → 隶属于 查看是否包含 Remote Desktop User。若不含就添加 Remote Desktop U

2021-08-29 11:28:37 6088 2

原创 Qt线程报错Cannot create children for a parent that is in a different thread

本来就是个qt新手,还遇到了这个线程错误,折磨了我三四天,终于找到原因所在,在此记录一下。以下是报的错误代码:QObject: Cannot create children for a parent that is in a different threadParent is QTextDocument(0x1275d90), parent’s thread isQThread(0x7affe0), current thread is QThread(0x8b8170)Segmentation f

2021-01-14 12:42:36 4614 3

原创 Qt编译报错cannot find -lGL

环境:ubuntu20.04qt5.14方法1:查找 libGL 所在位置locate libGL 或者 grep /lib/ -name “libGL*”我的在/lib/x86_64-linux-gnu/libGL.so.1.7.0创建软链接sudo ln -s /usr/lib64/libGL.so.1 /lib/x86_64-linux-gnu/libGL.so.1.7.0可是我用这种方法还是一样报错,然后就用下面的方法就好了方法2:sudo apt install

2020-12-19 17:58:25 275 1

原创 Ubuntu20.04下更改用户名和主机名

知道root密码的登陆root账户,不知道的先修改root密码1.修改root密码sudo passwd root然后登陆root账户su root2.更改主机名(1) 修改hostname文件,修改里面内容为新的主机名sudo vim /etc/hostname(2) 修改hosts文件,修改原来的名字为新的主机名sudo vim /etc/hosts3. 更改用户名(1)修改shadow 文件sudo vim /etc/shadow 这个文件的格式如下:usern

2020-12-11 20:22:08 8304 10

原创 Ubuntu16.04中源码升级gcc和gdb

gcc-10.2.0.tar.xzhttp://ftp.gnu.org/gnu/gccgdb-9.2.tar.xzhttp://ftp.gnu.org/gnu/gdb/gcc注:前提是系统先有一个gcc解压tar xf gcc-10.2.0.tar.xz再同级目录下新建个编译目录mkdir gcc-obj cd gcc-obj…/gcc-10.2.0/configure --enable-checking=release --enable-languages=c,c++ --d

2020-09-10 12:29:33 661

原创 gdb插件peda、gef、Pwndbg安装

peda地址  https://github.com/longld/peda安装git clone https://github.com/longld/peda.git ~/pedaecho “source ~/peda/peda.py” >> ~/.gdbinitgef地址 https://github.com/hugsy/gef安装wget -O- https://github.com/hugsy/gef/raw/master/scripts/gef.sh.

2020-09-02 14:57:32 1333 1

原创 qemu环境下gdb调试应用程序

交叉编译器:Arm-linux-gcchttps://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a/downloads安装交叉编译器自定义一个目录,添加到环境变量就行,这个网上一堆教程,不再赘述安装qemusudo apt install qemu使用arm-gcc编译你的程序生成可执行文件使用以下命令在虚拟机运行可执行文件qemu-syst

2020-08-28 15:07:15 944

原创 在qemu虚拟环境下gdb调试kernel

在qemu虚拟环境下gdb调试kernel根据这篇文章搭建基本的开发环境:Qemu搭建arm-vexpress虚拟开发环境再配置kernel把做好的rootfs复制到kernel目录下,指定Initramfs source. General setup ---> [*] Initial RAM filesystem and RAM disk (initramfs/initrd) support (rootfs) Initramfs source fil

2020-08-28 14:47:33 462

原创 Qemu搭建arm-vexpress虚拟开发环境

Qemu搭建arm-vexpress虚拟开发环境准备工作交叉编译器:Arm-linux-gcchttps://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a/downloadslinux kernel:https://mirrors.edge.kernel.org/pub/linux/kernel/Uboot:ftp://ftp.denx.de/pub/u-b

2020-08-28 12:01:20 642

原创 Ubuntu16.04系统安装 OpenCV3.2.0

Ubuntu16.04系统安装 OpenCV3.2.0opencv官方参考说明:https://docs.opencv.org/3.2.0/d7/d9f/tutorial_linux_install.html根据官方说明,需要先安装相关软件包:sudo apt-get install build-essentialsudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libsws

2020-08-14 16:39:22 348

原创 Linux下v4l2-camera子系统之sensor驱动(四)

Linux下v4l2-camera子系统之sensor驱动(三)平台:君正x1000linux kernel: 3.10camera sensor:ov7725在Linux下v4l2-camera子系统之soc_camera_device(二)和Linux下v4l2-camera子系统之soc_camera_host(三)中已经分析了ov7725注册进camera_device并用i2c_new_device(adapter, info)创建一个client,然后就会和驱动匹配,进入驱动的probe

2020-06-30 19:48:04 1713 1

原创 Linux下v4l2-camera子系统之soc_camera_host(三)

Linux下v4l2-camera子系统之soc_camera_host(三)平台:君正x1000linux kernel: 3.10camera sensor:ov7725上节分析了camera_device感觉并没接触到核心,那么camera_host就该完成关键代码了。Camera_host设备static struct resource jz_cim_resources[] = { [0] = { .flags = IORESOURCE_MEM, .start = CIM_IO

2020-06-29 17:35:02 768

原创 Linux下v4l2-camera子系统之soc_camera_device(二)

Linux下v4l2-camera子系统分soc_camera_device(二)平台:君正x1000linux kernel: 3.10camera sensor:ov7725上节认识了camera子系统的大概框架结构及主要相关结构,现在看看系统中是怎么注册camera_device。struct i2c_board_info jz_v4l2_camera_devs[] __initdata = { { I2C_BOARD_INFO("ov7725", 0x21), },

2020-06-29 16:29:58 838

原创 Linux下v4l2-camera子系统分析之初始(一)

Linux下v4l2-camera子系统分析之初始(一)平台:君正x1000linux kernel: 3.10camera sensor:ov7725参考:https://www.cnblogs.com/rongpmcu/p/7662738.htmlhttps://www.cnblogs.com/rongpmcu/p/7662741.htmlhttps://www.cnblogs.com/rongpmcu/p/7662745.htmlhttps://blog.csdn.net/hp0773

2020-06-29 16:07:27 1013

原创 Linux下I2c框架分析之虚拟设备(六)

参考:https://www.cnblogs.com/zzb-Dream-90Time/p/7605473.html宋宝华《Linux设备驱动开发详解:基于最新的Linux4.0内核》看过宋宝华《Linux设备驱动开发详解:基于最新的Linux4.0内核》的朋友们会发现,在i2c章有一节是i2c-dev.c文件分析,这一节只做了一个大概的分析,今天咱们看看它到底能做什么。i2c-dev.c文件完全可以被看作是一个I2C设备驱动,它实现的i2c_client是虚拟、临时的, 主要是为了便于从用户空间操作

2020-06-24 16:56:02 322

原创 linux下I2c框架分析之通信(五)

平台:君正x1000内核:Linux3.5在linux的i2c框架中,设备和主机的通信数据都是经过适配器处理的,所以通信的协议的实现也是依靠适配器驱动实现的。在通信结构i2c_algorithm中主要实现两个成员.master_xfer和.functionality ,i2c通信协议的实现主要是master_xfer完成,functionality主要是返回支出的功能。/* \drivers\i2c\busses\i2c-v12-jz.c */static const struct i2c_a

2020-06-24 16:19:16 191

原创 linux下I2c框架分析之终端驱动(四)

linux下I2c框架之终端设备(三)平台:君正x1000内核:Linux3.5终于到了要看看驱动是怎么注册进内核的了。i2c驱动注册很简单,一个宏就能搞定,我是以ov7725为例入手分析的,首先要实现一个struct i2c_driver对象static struct i2c_driver ov772x_i2c_driver = { .driver = { .name = "ov7725", }, .probe = ov772x_probe, .remove = ov772

2020-06-24 11:59:58 188

原创 linux下I2c框架分析之终端设备(三)

linux下I2c框架之终端设备(三)平台:君正x1000内核:Linux3.5经过前面两篇文章已经知道了i2c框架的大概结构和适配器注册,现在分析i2c终端设备的驱动,作为普通的驱动工程师,一般都是拿着已有的驱动修改适配产品的sensor,这就是修改的终端驱动了,对咱们也是很重要。此时要关注一个关键的已经实例化的结构I2c总线i2c终端设备和驱动都挂载在它下面,match不断扫描device和driver两个链表进行匹配,在 /sys/bus/能看到这个i2cstruct bus_type

2020-06-23 20:30:59 170

原创 linux下I2c框架分析之适配器(二)

linux下I2c框架分析之适配器(二)平台:君正x1000内核:Linux3.5i2c适配器做为平台的控制设备自然要注册到platform总线下,x1000平台使用的是命名为jz-i2c的适配器。直接看代码适配器设备注册 /* \arch\mips\xburst\soc-x1000\common\platform.c */#if defined(CONFIG_I2C_V12_JZ)static u64 jz_i2c_dmamask = ~(u32)0;#define DEF_I2C

2020-06-23 19:47:18 413

原创 linux下i2c框架分析之初识(一)

**linux下i2c框架分析之初始(一)**最近想研究一下嵌入式camera,其sensor使用的是i2c通信协议,就花了几周时间跟踪内核代码研究一下其原理。平台:君正x1000内核:Linux3.5参考:https://www.baidu.com/link?url=BwdPd0g_6fz55eDF00-5XUtBhJaM_5eUOIOSJ4D_y3lZMnFWy_mZhMwIS8sQPsbjdMJ_-FBj5ZDXuc6-OZLoT_&wd=&eqid=f17632ed00

2020-06-23 17:43:50 234

空空如也

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

TA关注的人

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