自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 DTS文件的格式

DTS文件布局(layout):/dts-v1/;// 表示版本[memory reservations] // 格式为: /memreserve/;/ {

2025-03-13 16:17:47 1172

原创 Linux多进程学习

1.多任务程序能够同时做多件事情,如QQ同时聊天和上传下载。2.多任务程序在应用开发中非常普遍,是必须掌握的基本概念。

2025-03-12 23:48:03 1035

原创 上下分层、左右分离的驱动设计思想

之前了解了最简单的驱动程序、但是不易扩展、现在继续学习、

2025-03-12 23:02:40 214

原创 IMX6ULL的最简单的LED驱动程序

CCM、IOMUXC、GPIO模块本身MUX。

2025-03-09 19:27:57 921

原创 VSCode调试

嵌入式Linux的开发经常需要查看内核中函数的实现,因此配置一个能实现精准跳转与函数提示的开发环境还是很有必要的。

2025-03-07 15:59:46 489

原创 重定位(2)

由图可知:将A处代码重定位带B处具体思路:A处的只读数据的结束地址减去起始地址通过memcy函数重定位到B.text_start/* 设置sp */ldr sp = (0xc0000000 + 0x100000) //栈的起始地址/* rodata/data的重定位 */ldr r0, = __rodata_start //读出只读数据段的起始地址//只读数据段的结束地址 = 只读数据段的起始地址 - (B - A)sub r1, r0 ,r2 /* 只读数据段的结束地址 */

2025-03-05 21:44:16 356

原创 重定位(1)

这次记录了重定位的原理、方法等,下一次记录一下具体怎么写这部分copy代码,实现重定位。

2025-03-05 19:05:53 436

原创 嵌入式硬件发展历程

微型计算机架构:CPU+RAM+存储设备。

2025-03-05 07:17:28 438

原创 变量的分配

编译器会聪明的提前分配对应的“坑”等你来填。编译器会根据我们写的代码,不是编译器分配的,使我们的代码,比如数组A[100],编译器就会将当前栈指向的地址减去100给数组分配;

2025-03-04 17:01:02 381

原创 Makefile

我们知道a.c到app可执行程序,经过四个步骤:预处理、编译、汇编、链接;前三个步骤统称为编译。1)gcc -o test a.c b.c -v流程:缺点:如果只改变一个文件,其他另一个文件也需要再编译一次,浪费资源。2)改进:那么如何判断那个文件被修改呢?比较修改时间①若a.c比a.o新,说明被修改了②若a.o/b.o比test更新的话,则需要从新编译;1)规则: 目标文件:依赖文件(可多个) TAB 命令3)语法%:通配符$@:目标文件$<

2025-03-03 18:15:26 459

原创 二、QT和驱动模块实现智能家居-----问题汇总1

解决方法:先ls -l xxx,若为仅写,修改app程序的open函数。

2025-03-03 15:45:58 362

原创 Linux kill 命令

kill 命令可以发送不同的信号给目标进程,来实现不同的操作,如果不指定信号,默认会发送 TERM 信号(15),即终止。若仍无法终止该程序,可使用 SIGKILL(9) 信息尝试强制删除程序。Linux kill 命令用于终止正在运行的进程。<PID> 是要终止进程的进程 ID。终止 PID 为 1234 的进程。

2025-03-03 14:47:02 315

原创 二、QT和驱动模块实现智能家居-----5、通过QT控制LED

在QT界面,我们要实现点击“LED”按钮就可以控制板子上的LED。LED接线图如下:在Linux 系统里,我们可以使用2种方法去操作上面的LED:① 使用GPIO SYSFS系统:这需要一定的硬件知识,需要设置引脚的方向、数值。② 使用驱动程序:无需硬件知识,使用open/read/write接口调用驱动即可。

2025-03-03 14:16:40 743

原创 环境变量集合

运行QT程序的环境变量:

2025-03-03 13:54:26 88

原创 Linux hexdump命令

hexdump 以ASCII字符显示时,可以输出换行符,这个功能可以用来检查文件是Linux的换行符格式还是Widows格式换行符。hexdump是Linux下的一个二进制文件查看工具,它可以将二进制文件转换为ASCII、八进制、十进制、十六进制格式进行查看。6:以偏移量开始格式输出。如下所示指定参数-s 5 ,前面的ABCDE字符没有了。每个字节显示为8进制。一行共16个字节,一行开始以十六进制显示偏移值。每个字节显示为16进制和相应的ASCII字符。每个字节显示为ASCII字符。两个字节显示为8进制。

2025-03-03 12:45:04 429

原创 Write函数

在 Linux 中, 函数是操作系统提供的最基础的系统调用之一,用于向文件描述符写入数据。它的使用非常广泛,不仅仅限于普通文件,还包括管道、套接字、字符设备等。二、参数详解 函数的参数有三个:fd:文件描述符,表示将数据写入到哪里。可以是文件、设备、套接字等。文件描述符是一个整数,通常是由 系统调用返回的。buf:指向要写入的数据的缓冲区。这是一个 类型的指针,意味着它可以指向任何类型的数据。count:要写入的字节数。函数会尝试从 中写入 个字节的数据。 函数的返回值为 类型,表示实际

2025-03-03 10:27:56 293

原创 Open函数

我们首先来看下open函数在Linux下的定义。

2025-03-03 09:34:33 843

原创 Linux cat 命令

显示文件 filename 的最后 10 行。

2025-03-03 08:18:39 573

原创 Linux ls 命令

Linux ls(英文全拼: list directory contents)命令用于显示指定工作目录下之内容(列出目前工作目录所含的文件及子目录)。

2025-03-02 23:38:34 532

原创 二、QT和驱动模块实现智能家居-----4、编译Qt程序并运行

双击左侧的 Forms 里的 mainwindow.ui 文件,打开 Design 视图。然后如下图所示,从左侧Display Widgets 栏目下,拖动 Label 和 PushPutton到中间的区域。

2025-03-02 23:26:07 477

原创 Linux mkdir 命令

Linux mkdir(英文全拼:make directory)命令用于创建目录。

2025-03-02 23:25:04 344

原创 Linux tar命令

tar [主选项 + 辅选项] 文件或目录。

2025-03-02 23:22:06 314

原创 Linux rm命令

请注意,递归删除非常危险,因为它会将文件夹及其所有内容完全删除,无法恢复。确保在执行此操作前三思。命令会直接删除文件,不会询问确认。如果你希望在删除文件时得到确认提示,请使用。如果你希望在删除文件时不接收任何确认提示,并强制删除文件,可以使用。参数,因为它会立即删除文件,无法恢复。要删除单个文件,只需使用。如果要删除多个文件,可以将。及其所有内容,可以使用。rm -r 文件夹名。

2025-03-02 23:16:44 228

原创 Linux mv 命令

Linux mv(英文全拼:move file)命令用来为文件或目录改名、或将文件或目录移入其它位置。目标目录与原目录不一致,没有指定新文件名,效果就是仅仅移动。目标目录与原目录一致,指定了新文件名,效果就是仅仅重命名。目录里边的所有文件&文件夹 挪到。

2025-03-02 21:56:04 351

原创 Linux find 命令

Linux find 命令用于在指定目录下查找文件和目录。

2025-03-02 12:19:18 238

原创 echo 命令echo

是一个常用的 shell 内置命令,用于在终端或脚本中输出文本或变量内容。 命令的基本功能是将指定的字符串或变量值输出到标准输出(通常是终端)。它在脚本编程和日常系统管理中非常有用。2)输出变量2. 禁止输出末尾换行符3. 转义功能(1)开启转义功能 (-e)值得注意的是,一般情况下只有当你调用选项时才会执行字符转义默认情况下仍为输出字符串内容而不开启转义功能

2025-03-02 12:14:31 322

原创 Linux whereis命令

Linux whereis命令用于查找文件。该指令会在特定目录中查找符合条件的文件。这些文件应属于原始代码、二进制文件,或是帮助文件。该指令只能用于查找二进制文件、源代码文件和man手册页,一般文件的定位需使用locate命令。

2025-03-02 12:06:09 141

原创 二、QT和驱动模块实现智能家居-----3、安装并配置QT

我会将QT安装包放在将下载的QT安装包复制到虚拟机,安装时一路next,不多说了。

2025-03-02 11:52:45 655

原创 二、QT和驱动模块实现智能家居----2、编译支持QT的系统

因为我们的Linux内核文件不支持QT系统(当然如果你的支持,完全跳过这篇文章),所以我们要从网上下载很多软件包,这里直接用百问网的软件包,非常方便。

2025-02-28 17:24:39 688

原创 eMMC简介

eMMC。

2025-02-28 17:19:05 472

原创 二、QT和驱动模块实现智能家居----1、使用ADB

如果说MQTT实现了网络通信,但是我们还需要界面开发和后台驱动的开发。

2025-02-28 16:27:30 637

原创 Linux mount命令

挂载方法命令使用格式:mount [-fnrsvw] [-t vfstype] [-o options] device dirdevice:指明要挂载的设备;(1)设备文件:例如/dev/sda5(2)卷标:-L 'LABEL', 例如 -L 'MYDATA'(3)UUID, -U 'UUID':例如 -U '0c50523c-43f1-45e7-85c0-a126711d406e'(4)伪文件系统名称常用命令选项-t vsftype:指定要挂载的设备上的文件系统类型;,只读挂载;, 读写挂载;

2025-02-28 00:07:55 1009

原创 Linux chmod命令

Linux chmod(英文全拼:change mode)命令是控制用户对文件的权限的命令Linux/Unix 的文件调用权限分为三级 :注:只有和可以修改文件或目录的权限。可以使用绝对模式(八进制数字模式),符号模式指定文件的权限。

2025-02-27 23:17:15 304

原创 Linux apt 命令

apt(Advanced Packaging Tool)是一个在 Debian 和 Ubuntu 中的 Shell 前端软件包管理器。apt 命令提供了查找、安装、升级、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。apt 命令执行需要超级管理员权限(root)。

2025-02-27 22:51:54 347

原创 Linux报 “device or resource busy” 异常的原因以及解决办法

首先,Linux报"device or resource busy"的原因是因为某个进程正在占用该设备或资源,导致其他进程无法访问该设备或资源。或使用了其它操作系统无法识别的文件系统或格式,导致Linux无法访问该设备或资源。可以通过卸载该设备或资源并重新挂载的方式来解决该问题。其他进程对该设备或资源进行操作。有时候,即使没有明显的进程占用该设备或资源,也可能是因为该设备或资源。注意:使用以上命令需要。

2025-02-27 21:46:58 3926

原创 vi编辑器的使用(内附快捷键的使用)(超详细)

转载于。

2025-02-26 19:41:12 1291

原创 MQTT实现智能家居------5、交叉编译

/build.sh arm-buildroot-linux-gnueabihf-gcc会发现无法编译,这里就涉及到cmake的知识点。先进入/home/book/nfs_rootfs/,创建MQTT文件夹,然后将上次将我发布的文件下载解压后的放到里面。在最后面加上这个(前后对比图)2. 修改build.sh。3. 执行即可编译成功。

2025-02-26 19:26:55 331

原创 Linux常见知识汇总

配置文件。Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。Linux 所必须的库文件。共享库。命令和用户编写的应用程序要使用这些库文件系统设备管理的重要目录,此目录通过一定的组织结构向用户提供详细的内核数据结构信息系统需要的可执行文件,一般都是一些命令,比如 ls 、 mv 等命令。此目录下的命令所有的客户都可以使用。存放可执行文件,但是此目录下的文件或者说命令只有管理员才能使用,主要用户系统管理。设备文件。

2025-02-25 23:08:33 495

原创 MQTT实现智能家居------4、在Linux上运行MQTT

用FileZilla连接开发板,将我发布的压缩包解压以后进入主目录,创建一个MQTT文件夹用FileZilla连接开发板,将我发布的压缩包解压以后放进MQTT安装cmake。

2025-02-25 21:40:50 654

原创 Linux常用命令汇总

tar [主选项 + 辅选项] 文件或目录。

2025-02-25 20:18:13 218

二、QT和驱动模块实现智能家居-1、使用ADB

二、QT和驱动模块实现智能家居-1、使用ADB

2025-02-28

FreeRTOS移植到GD32F407标准例程,拿过来即可用

FreeRTOS移植到GD32F407标准例程,拿过来即可用

2024-12-03

全网最迅速的移植FreeRTOS到天空星GD32F407VET6

F4系列直接移植免修改FreeRTOS文件

2024-12-02

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

TA关注的人

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