自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Ubuntu大小写混乱解决办法

2023-09-27 08:42:12 268

原创 编译U-boot常见报错

解决uboot编译常见报错

2023-09-08 11:32:46 255

原创 git使用和基础原理(一)

git add背后发生了什么?

2023-03-25 12:43:03 167

原创 IMX6ULL中U-BOOT分析之ARCH、CPU、BOARD、VENDOR、SOC、CPUDIR、BOARDDIR变量值的由来。

IMX6ULL中U-BOOT分析之ARCH、CPU、BOARD、VENDOR、SOC、CPUDIR、BOARDDIR变量值的由来。

2023-02-25 12:59:08 210

原创 linux驱动分离值platform模型

我们将驱动分离为两个.c文件,并且内核在代码实现上将它们抽象为总线、设备、驱动等结构体的形式表现出来,那么我们肯定希望跟硬件引脚资源相关的定义放在device.c上,在driver.c上希望能够读取device.c定义好的引脚资源,进而编写驱动程序(这里可能还有一些新手朋友不太理解,说白了就是在device.c上定义引脚变量,在driver.c调用这个变量的意思)。(这里开个玩笑哈哈),实际它们在加载的时候都会匹配对方的链表上的driver/device看能不能匹配上。

2023-02-07 17:54:21 110

原创 linux驱动分离思想引入——总线模型(上)

基于这个问题,我们能不能将驱动分离为两个.c文件,将要改动大的放在一个文件(代码跟硬件资源紧密相关),改动少的放在一个文件呢(代码跟硬件资源没有什么关系)?

2023-02-07 11:34:33 104

原创 IMX6ULL之uboot启动流程分析——make xxx_defconfig流程

IMX6ULL中uboot启动之配置make xxx_defconfig流程分析

2023-02-03 16:17:39 106

原创 IMX6ULL之uboot启动流程分析——make流程

IMX6ULL之uboot启动流程分析——make流程

2023-02-03 15:15:20 108

原创 uboot移植之前言知识

1)Bootloader是硬件启动的引导程序,是运行操作系统的前提;2)在操作系统内核或用户应用程序运行之前的一小段代码。对软硬件进行相应的初始化和设定,为最终运行操作系统准备好环境;3)在嵌入式系统中,整个系统启动加载任务通常有Bootloader来完成。特点:1)Bootloader不属于操作系统,一般采用汇编语言和C语言开发。需要针对特定的硬件平台编写;2)在移植系统时,首先为开发板移植Bootloader;

2023-02-03 14:27:49 111

转载 ARM——汇编指令

学习ARM,就必须要学习ARM指令,ARM指令是CPU提供给我们的接口,是我们打开CPU这个潘多拉魔盒的钥匙。

2023-02-02 23:06:44 1691

转载 Linux字符设备驱动之进程、文件描述符、file、inode关系详解

Linux 中一切都可以看作文件,包括普通文件、链接文件、Socket 以及设备驱动等,对其进行相关操作时,都可能会创建对应的文件描述符。文件描述符(file descriptor)是内核为了高效管理已被打开的文件所创建的索引,用于指代被打开的文件,对文件所有 I/O 操作相关的系统调用都需要通过文件描述符。Linux启动后,会默认打开3个文件描述符,分别是:0:标准输入1:标准输出2:错误输出这就是为什么我们在程序运行时可以直接打印信息和从命令终端获取信息的原因。并且以后打开文件后。

2023-02-02 14:03:00 918

转载 Linux字符设备驱动之模块化编程

一、什么是模块化编程?Linux的开发者,遍布世界各地,他们相互之间觉大数估计都不认识。如果真的是对这些开发者进行统一管理,那是很难做到的。所以大牛们,在设计Linux内核的时候,融入了模块化的思想。也就是说,现在大家已经有一个现成的Linux操作系统了,所有的开发者写的代码对于这个Linux操作系统而言都是一个模块,开发者可以模块的形式将自己的代码添加到内核,也可以从操作系统中卸载自己的模块。这种思想,在实际的开发中特别有用。

2023-02-02 11:17:53 183

原创 Linux驱动之模块参数param和符合导出export用法

通常内核模块是驱动人员编程,如果应用程序编写模块,那么就不清楚内核模块使用的模块参数名字,这样就只会增加工作量,那么有没有一种方法可以是模块加载的参数名字与模块内部变量不同呢?

2023-02-02 10:21:55 884

转载 Linux之字符设备驱动框架

一、Linux设备分类字符设备块设备网络设备字符设备:字符(char)设备是个能够像字节流(类似文件)一样被访问的设备,由字符设备驱动程序来实现这种特性。字符设备驱动程序通常至少要实现open、close、read和write的系统调用。字符终端(/dev/console)和串口(/dev/ttyS0以及类似设备)就是两个字符设备,它们能很好的说明“流”这种抽象概念。字符设备可以通过文件节点来访问,比如/dev/tty1和/dev/lp0等。

2023-02-01 20:18:56 367

原创 Linux应用开发——进程

程序是完成特定任务的一系列指令集合,进程是程序的一次动态执行过程进程是操作系统分配的内存、CPU时间片等资源的基本单位。进程是动态的,程序是静态的。

2023-02-01 14:37:21 105

原创 数据结构与算法——常用排序算法

数据结构与算法——常用排序算法

2023-01-31 19:45:29 57

原创 解决Ubuntu虚拟机使用scp命令发送文件到开发板报错Couldn‘t open /dev/null: Permission denied的问题!

到这里其实问题已经解决了,因为/dev是虚拟文件系统,在系统运行起来后自动生成的,每次重启开发板就会重新生成/dev/null,解决办法是在启动脚本加入上面的命令即可,这样就不用每次修改了,修改开发板 /etc/init.d/rcS 脚本文件在里面添加上面两行命令即可。解决办法是删除这个设备节点,手动创建一个普通用户具有权限的设备节点。分析问题,说是没有权限打开/dev/null这个文件,因为这个跟文件系统是使用busybox制作的,其权限是root的权限,普通用户是无法打开这个文件的。

2022-12-24 16:47:48 1944

原创 解决虚拟机连接开发板报错:ssh: connect to host 192.168.0.109 port 22: Connection refused问题。

。解决办法是按照如下格式输入命令进行更新。报这个先执行前面的解决办法若是不能解决,先看一下开发板的sshd服务有没有开启,端口号有没有打开,或重启开发板试一下。刚开始报这个错,以为是我自己更改IP地址需要在开发板重新生成密钥文件去解决,但是发现重新生成密钥还是解决不了。ssh-keygen -R +输入服务器的IP。再次使用ssh就可以成功远程啦!

2022-12-24 16:27:19 2211

原创 移植OpenCV库到IMX6ULL开发板

完成上面步骤后还需要修改一下配置(这一步是必须的,否则编译不通过):在配置中更改一个选项,点击 CMAKE,在 CMAKE_EXE_LINKER_FLAGS 处添加上“-lpthread -lrt -ldl”添加这些是指定依赖库的链接参数。5.3、选择为交叉编译选指定选项,因为我们要使用我们自己的交叉编译工具链。5.6、更改以下安装目录,默认是在/opt目录下(这一步不是必须的)。5.7、重新执行刚才的配置使其生效,生成cmake等文件,用于编译。3、进入解压目录新建构建文件夹、安装文件夹。

2022-12-23 12:36:33 934

原创 在IMX6ULL上搭建QT交叉编译环境下

6、经过前面的众多配置,我们已经生成可以在ARM开发板上运行的程序了,但是开发板上还没有部署QT库,无法直接测试我们的应用程序,所有还要将我们前面编译的qt库部署到开发板的跟文件系统中(这里涉及到跟文件系统的制作笔者就不详细讲解了,后期有时间出一篇博客讲解),默认读者具备构建跟文件系统的技术水平。配置完后就多了一个我们自己开发板的套件,这个套件有黄色警告图标,不用管只要不是红色就可以,到了这里QT Creator的套件就配置好啦,可以新建一个工程进行测试一下。按照如下操作添加我们前面编译的qmake工具。

2022-12-20 12:45:46 709

原创 Ubuntu16.04交叉编译openssl、openssh

这里先说一下要移植openssh库,要先编译zlib(检查解压缩文件是否出错)、openssl(跟加密传输相关)这两个库。--with-zlib:表示指定先前编译的zlib库存方路径,有关zlib库编译请看笔者。--with-ssl-dir:表示上面交叉编译的openssl库存放路径。no-asm :在交叉编译过程中不使用汇编代码代码加速编译过程。4、输入make编译,编译成功如下所示。二、交叉编译openssh。5、执行make编译。

2022-12-20 11:20:38 1274

原创 一张图片理解嵌入式GDB调试原理!

嵌入式GDB调试原理

2022-12-17 22:04:28 98

原创 解决linux开发板可以ping通内网,但是ping不通外网的问题

解决linux开发板可以ping通内网,但是ping不通外网的问题

2022-12-17 11:19:03 4632

原创 解决QT5使用网络组件报错:qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization failed问题

解决QT5使用网络组件报错

2022-12-16 01:08:56 1278

原创 madplay移植到IMX6ULL开发板

madplay移植到IMX6ULL开发板

2022-12-13 19:50:58 310

原创 QTCreator在Ubuntu安装及运行程序报错解决

QTCreator在Ubuntu安装及运行程序报错解决

2022-12-12 21:46:20 2028

原创 在IMX6ULL上搭建QT交叉编译环境上

在IMX6ULL上搭建QT交叉编译环境

2022-12-11 20:26:28 782

原创 Ubuntu安装SSH服务和NFS服务、TFTP服务

Ubuntu安装SSH服务和NFS服务、TFTP服务。

2022-12-11 15:37:16 731

原创 Ubuntu16.04更新软件源

更新Ubuntu软件源

2022-12-11 14:42:35 2568

原创 Ubuntu16.04安装中文输入法

Ubuntu16.04中文输入法安装

2022-12-11 14:31:37 3563

原创 Ubunt16.04安装

ARM开发环境之虚拟机VMware-----Ubuntu系统安装

2022-12-11 13:08:01 1286

原创 Linux在Ubuntu虚拟机安装交叉编译工具链

在Ubuntu中,安装可直接使用的ARM交叉编译工具链。

2022-12-08 18:30:41 1659

原创 linux常用命令route/netstat/telnet/ssh/wget命令

linux常用几个命令

2022-11-26 16:18:18 1101

原创 树莓派安装中文输入法

树莓派中文字体安装

2022-11-19 16:45:56 3883

原创 树莓派设置静态IP地址,远程桌面连接,更新软件源

树莓派系统安装必要的一些配置

2022-11-19 11:22:25 407

原创 linux系统安装线程同步机制的man手册

linux man手册安装

2022-11-15 16:33:26 136

原创 解决树莓派sudo gedit报错No protocol specifiedUnable to init server: 无法连接:拒绝连接问题

树莓派简单配置

2022-11-15 15:41:11 1536

原创 解决git clone报错error: RPC failed; curl 28 OpenSSL SSL_read: Connection was reset, errno 10054

在克隆代码时报错,这个错误的原因通常是SSL认证出错。

2022-11-14 15:35:58 1361

原创 解决Ubuntu虚拟机与Windwos之间的赋值粘贴问题

ubuntu与Windows之间赋值粘贴问题解决

2022-10-10 10:49:13 404

原创 嵌入式操作系统RT-Thread之启动流程

1、我们在学一门操作系统的时候通常第一步是学习操作系统的启动流程,通常我们都是从main函数开始分析。但是我们一看main函数是一个空函数什么代码也没有,那系统运行启动信息是如何输出的呢?2、我们可以通过仿真的方式进行分析源码的启动流程点击仿真可以发现系统的真正入口函数是 int $Sub$$main(void)函数,它先会进行关中断函数,在进入启动函数,这个启动函数rtthread_startup()才是真正的入口函数。该函数做了一系列的初始化工作。初始化与系统相关的硬件;初始化系

2022-01-02 09:44:22 281

空空如也

空空如也

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

TA关注的人

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