Linux驱动开发:基于TCP与多线程的GPIO、I²C、SPI综合测试
基于 RK3568 完成一次 Linux 驱动综合测试:板端以 TCP Server 对接三个客户端,通过多线程分别控制 LED、读取 AP3216C,并读写 W25Q64。
Projects, notes, and ongoing research.
基于 RK3568 完成一次 Linux 驱动综合测试:板端以 TCP Server 对接三个客户端,通过多线程分别控制 LED、读取 AP3216C,并读写 W25Q64。
梳理 Linux 驱动中的阻塞与非阻塞 IO、等待队列、poll 和异步通知,并总结按键中断程序相对上一版的改进。
基于 RK3568 按键驱动,梳理 Linux 内核定时器、中断上下半部、设备树中断描述,以及使用定时器完成按键消抖的完整设计。
基于 RK3568 板载 LED 实验,把设备树、pinctrl、GPIO 子系统与 platform 驱动串起来,梳理从 DTS 描述硬件到 /dev/ledN 控制设备的完整流程。
基于 RK3568 板载 LED 实验,把字符设备、platform 总线、platform_device、platform_driver 和 GPIO 寄存器控制串起来,理解总线设备驱动框架下的 GPIO 驱动编写思路。
基于 RK3568 开发板,从原理图确认 LED 引脚,到配置 GPIO 寄存器、编写字符设备驱动并完成上板测试。
从字符设备模型、file_operations、模块加载,到 RK3568 平台上板测试,梳理一个最小字符设备驱动的完整开发路径。
从 GCC 编译流程与 Makefile 入手,继续整理输入子系统应用编程、常见编译排错方法,以及 Linux 多线程同步中的互斥锁、信号量和条件变量。
整理一次 STM32 回顾过程中的第一阶段学习记录,涵盖 GPIO、中断、IIC EEPROM、UART、ADC、RCC,以及 CAN 和 SPI Flash 的初步实践。
记录一次 VS Code Remote WSL 报错 `spawn C:\WINDOWS\System32\wsl.exe ENOENT` 的定位与解决过程。
结合 Vitis、U-Boot 与 Linux 内核配置,梳理 ZYNQ 平台从设备树生成到 BOOT.BIN、zImage 落地的完整启动文件制作流程。