自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 ARM-Linux 系统上安装和配置 CH340 驱动

通过以上步骤,你应该能在 ARM-Linux 系统上成功安装和配置 CH340 驱动。这样你就可以使用任何基于 CH340 芯片的设备了。首先,需要从官方或者其他可信任的源下载 CH340 驱动。在解压后的目录中,会有一个 Makefile 文件。如果你希望驱动在每次启动时自动加载,可以将其编译到内核中或者添加到 /etc/modules 文件中。下载后,解压驱动文件。你应该能看到类似 ch34x 的模块已加载。你应该能看到类似 ttyUSB0 或者其他 ttyUSB 设备被识别的信息。

2024-07-02 15:05:55 541

原创 Linux内核源码目录结构解析《摘抄》

里面的每一个目录都代表一种Linux支持的内核架构,例如arm就是arm架构相关的代码,arm目录向下包括很多处理器平台,也包括了启动代码boot、架构相关配置文件configs、内核相关文件kernel、内存管理mm和库lib等。目录包括编译核心所需要的大部分头文件,例如与平台相关的头文件在/include/linux子目录下,与模块相关的,例如与acpi相关的存放在/include/acpi。内核管理的核心代码。实现了大多数Linux系统的内核函数,其中最重要的为sched子目录下的代码。

2024-06-18 16:10:21 305

原创 嵌入式Linux系统移植参考

EasyARM i.MX283A 完整系统制作指南(Linux 4.13.2+U-Boot 2017.09+BusyBox 1.27.2+Qt5.7+Dropbear + Tslib + gdbserver 8.0)嵌入式Linux系统移植的四大步骤(详细长文,慎入!IMX6学习记录(8)-更换linux配置,加速启动。IMX6 ULL移植的长文,参考一下。

2024-06-18 16:04:25 101

原创 MFGTool 工具相关的参考资料

i.MX] imx6ul 官方开发板qspi nor 启动linux 怎么操作 (n25q256a )SPI FLASH与NOR FLASH的区别 详解SPI FLASH与NOR FLASH的不一样。Linux 内核spi-nor的驱动源码分析(一、底层通讯篇)imx6的MFGTools配置、流程、分析。飞思卡尔烧写工具mfgtools的使用。Linux命令详解之echo命令。U-Boot 图形化配置及其原理。MFGTool 工具的使用要点。uboot图形化配置。uboot图形化配置。

2024-06-18 15:22:21 191

原创 开发板挂载NFS目录

虚拟机配置使得开发板和虚拟机主机连通。开发板挂载NFS目录。

2024-06-18 15:18:29 218

原创 只在堆,或者只在栈上建立对象

都会由编译器在类外部调用类的构造函数来创建对象,同样在释放内存空间时也是会由编译器调用类的析构函数来释放。a.最容易想到的是将构造函数设置为私有,在构造函数私有以后,无法在类的 外部调用构造函数来构造对象,只能使用new运算符来建立对象。b.当对象建立在栈上面时,是由编译器分配内存空间的,调用构造函数来构造对象,当对象使用完毕后,编译器会调用析构函数来释放栈对象所占的内存空间,编译。象分配栈空间时,先会检查类的所有析构函数的访问性,如果类的析构函数是私有的,则编译器不会在栈空间上为类的对象分配内存。

2024-06-13 09:56:59 839

原创 嵌入式Linux-QT全系列(Linux移植+tslib+eGTouch驱动)

找到原因了,如果你的交叉编译工具链为arm-linux-gnueabihf,那么你编译tslib时,配置的时候注意./configure --host=arm-linux-gnueabihf --prefix=/home/work/lib/tslib。问题原因:编译器位置位于./qt-everywhere-src-5.14.2/qtbase/mkspecs目录下,配置编译器后,会在这个位置进行查找编译器文件夹,如果没有可以复制相近的文件加进行配置修改。文件系统中包含ip命令,位置sbin/ip。

2024-06-04 17:01:28 1007

原创 开发板内存不足,如何使用PC机调试coredump文件。以QT为例

Linux下QT远程连接开发板,可以使用前面章节提到的两种方法,但是有一种方法没成功,就是直接点击QT界面左下角的调试按钮,这样通过交叉编译器构建的编译文件会直接覆盖到开发板,只需要PC机上有一份编译的文件就行。这样在PC机上打断点才会有作用。发现还是少了几个链接文件,这是因为,这几个链接了开发板上独有的链接文件,也不是说独有,就是这个路径下的这文件,本来是开发板的路径,现在你拷贝到PC机上查看了,将这几个拎过来,照着前面的方法set一下就好了。上面抹掉的是我自己的库文件,后续那些NO,是找不到链接文件。

2024-04-12 12:57:03 236

原创 内存问题,使用核心转储的方法找Bug,GDB+Coredump分析

发现有两种方法,一种是在makefile文件中取消Strip的优化,这个Strip的优化会导致没有符号表,取消掉之后,发现文件大小和使用Strip的大小一样,使用objdump查看后,确实存在符号表这些信息。设置ulimit -c unlimited,使得程序崩溃,产生core文件,core文件没有设置就在当前程序目录中,core。产生core文件后,我使用编译链里面的gdb + 源程序 + core 文件打开。接着解决栈崩溃没有符号表的问题。但是依然显示上面这个问题。

2024-04-11 17:07:15 287 2

原创 Linux应用开发-远程调试

第一步:开发板需要移植openssh,并通过/usr/sbin/sshd或者 systemctl start ssh这些命令启动sshd服务,下面这样就是启动成功。之后会产生一个Process,并且会Listening on port 10000。至此开发板配置工作完成。第二步:将编译工具链里面得gdb拷贝到开发板上。并且在开发板启动gdbserver。至此,远程连接工作OK。后续记录远程调试效果,以及一些strace命令,查找内存的一些原因。开发板和远程主机能相互ping通(具体操作很基础,不详细写)。

2024-04-09 10:03:03 374 1

原创 开机自启时设置栈空间大小避错

不管在init.d还是rc.d里面都不行,最后发现是ulimit 是一个环境变量,最后在etc/profile的最后加上ulimit -s 102400之后,设置成功。还试过在rc.local输出日志,然后运行rc.local,发现日志有记录设置了100m,但是实际还是8M.因为原来里面没有/etc/security/limits.conf这个,其实最简单的是可以在在这里面配置就行。进入etc/rc.local里面,发现里面有个触屏程序得启动,然后在上面加上。保存退出,reboot之后发现还是默认得8M。

2024-03-06 11:29:17 375 1

原创 linux 报错 malloc(): unsorted double linked list corrupted (核心已转存) 解决办法

原文链接:https://blog.csdn.net/qq_26870933/article/details/109110772。报错:malloc(): unsorted double linked list corrupted (核心已转存)PS:如果上面的方法不能解决你的问题,那么你可能是缺少一个pyopengl包!出了bug之后,在那个程序的目录下,有个core文件,用gdb调试就行。吐核后,用gdb调用核,先看看哪个位置报的错误。这是看得人家得,具体找问题,加点自己得过程。原因:当前栈空间不足。

2024-03-05 08:39:48 1059

原创 C++循环引用怎么解决,问题记录

在B.h中不能再include A.h,同时也需要在B.h中前向声明class A;具体方法是在A.h中include B.h。在A.h中前向声明class B;因此可以将include A.h放到B.cpp文件中就可以解决。比如在A.h中引用了B.h。但是在B.h中又需要使用到A。但是此时虽然能在B中new出A,可使用不了A中的方法。这时候一般的解决方法是前向声明。

2024-03-01 09:04:24 433

空空如也

空空如也

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

TA关注的人

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