Linux RTL8188EUS Wifi驱动调试 正点原子提供的RTL8188EUS只能用在低版本Kernel,高版本Kernel会出现编译错误,比如我用的6.6.52版本的Kernel就无法编译正点原子提供的那几个Realtek的驱动文件。 尝试从网上找能够支持新版本Kernel的RTL8188EUS的驱动,Google出来第一位是这个: https://github.com/aircrack-ng/rtl8188eus 看了一圈,这个仓库有1 2025-04-17 嵌入式(Linux开发)
Linux FlexCAN调试 设备树 按照手册来即可,注意Alpha版上Flexcan2节点的引脚被ecspi3复用,节点中要屏蔽掉flexcan2: 1234567/* Conflict with ECSPI3 */&can2 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_flexcan2>; xceiver- 2025-04-17 嵌入式(Linux开发)
LinuxWM8960和声卡驱动 设备树 6.6.52版本Kernel中NXP已经默认在imx6ul-14x14-evk.dtsi中配置好了wm8960的节点,但是是配置在i2c2下,而正点原子阿尔法开发板中wm8960接在i2c1下,所以要把节点从i2c2移到i2c1: 12345678910111213141516171819&i2c1 { clock-frequency = <100000>; 2025-04-16 嵌入式(Linux开发)
Linux下GT911驱动移植 Kernel版本:6.6.52 开始前首先确认所用屏幕背面IC的丝印,到底是ft5426还是gt911,二者驱动不通用 客制化驱动 若使用正点原子提供的gt9147.c驱动: 设备树 12345678910111213141516171819202122&i2c2 { gt911:gt911@14 { compatible = "goodix,gt91 2025-04-13 嵌入式(Linux开发)
Linux快速切换交叉编译器版本 确保/usr/local/arm下有以下命令格式的交叉编译器文件夹: 1gcc-版本号-arm-linux-gnueabihf 比如 1gcc-7.5.0-arm-linux-gnueabihf Shell文件: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 2025-04-12 嵌入式(Linux开发)
FreeRTOS 任务、任务列表、任务切换和任务间通信 任务 任务状态 运行态(Running) 任务当前正在 CPU 上执行 在单核系统中,同时只有一个任务处于运行态 任务只有在调度器(Scheduler)选择它执行时,才会进入运行态 就绪态(Ready) 任务已经具备执行条件,但由于 CPU 资源被其他更高优先级任务占用,它暂时无法运行 任务处于就绪列表(Ready List),等待 FreeRTOS 调度它运行 当更高优先级任务阻塞 2025-04-02 嵌入式(RTOS开发)
Linux SPI驱动通用框架和编写细节 设备树 追加节点: 需要确保UART2节点为disabled,因IO占用 1234567891011121314/* Note: to enable ecspi3, uart2 node in imx6ul-14x14-evk.dtsi must be disabled */&ecspi3 { fsl,spi-num-chipselects = <1>; cs- 2025-04-02 嵌入式(Linux开发)
Linux I2C驱动通用框架和编写细节 I2C子系统架构 I2C子系统采用分层设计: I2C核心层 提供总线协议实现、设备注册/注销、总线通信接口(如i2c_transfer) struct i2c_adapter:抽象化的I2C控制器 struct i2c_client:连接到总线的I2C从机 管理适配器和设备,提供用户空间接口(/dev/i2c-*) I2C总线驱动 控制物理I2C控制器硬件,实现底层时序和寄存器控制 填 2025-04-01 嵌入式(Linux开发)
Linux Input设备通用驱动框架 Input子系统架构 1234567891011121314151617+-----------------------+| 用户空间 ||-----------------------|| /dev/input/eventX | <- 应用程序通过读取这些设备文件获取输入事件+-----------------------+ ↑+-- 2025-03-31 嵌入式(Linux开发)
Linux 进程与线程(一)基本概念与信号 基本概念 进程:资源管理的最小单位 线程:程序执行的最小单位 每个进程拥有自己的数据段、代码段和堆栈段。 线程通常叫做轻型的进程,包含独立的栈和CPU寄存器状态。线程是进程的一条执行路径,每个线程共享其所附属进程的所有资源。 线程和进程比起来很小,相对来说线程花费更少的CPU资源。 更形象一点: 进程是资源的管理单位 进程就像一个工厂,里面有自己的设备(CPU、内存、文件、网络连接等) 2025-03-31 Linux 进程与线程