--- title: 嵌入式Linux应用与Qt开发实战 tags: [嵌入式Linux, 应用编程, Qt, IMX6ULL, 知识库索引] created: 2026-09-18 updated: 2026-09-18 --- # 嵌入式Linux应用与Qt开发实战 > 基于正点原子 I.MX6ULL 开发板,构建从 **Linux C 应用编程**到 **嵌入式 Qt 图形界面开发**的完整知识体系。 > 每篇自包含完整(原理 + 完整源码 + 调试方法 + 面试题),可直接用于初步学习、复习与查询。 ## 与「驱动开发实战」及既有笔记的关系 | 知识库 | 定位 | 路径 | | ------ | ---- | ---- | | 嵌入式Linux驱动开发实战 | 起点:ARM 裸机 → 驱动 → 系统移植 | `raw/Joplin/嵌入式+Linux/嵌入式Linux驱动开发实战/` | | **嵌入式Linux应用与Qt开发实战(本库)** | 用户态应用编程 → 外设应用 → 网络 → Qt | `raw/Joplin/嵌入式+Linux/嵌入式Linux应用与Qt开发实战/` | | Linux+C+C++技术体系梳理 | 语言与系统编程「深入专题」(延伸阅读) | `raw/Joplin/Linux+C+C++技术体系梳理/` | > 本库每篇内容自包含,**不依赖**延伸笔记即可学习;延伸笔记仅在各篇「关联知识 / 延伸阅读」中提供进一步深入的入口。 ## 学习路径 ``` C应用编程基础 → 进程线程与IPC → 外设与高级IO → 网络与项目实战 → Qt应用开发 ↓ ↓ ↓ ↓ ↓ 01模块 02模块 03模块 04模块 05模块 ``` ## 知识模块 ### 01-Linux应用编程基础 - [[01-Linux应用编程基础/01-应用编程概念与开发环境]] — 系统调用/库函数、main 函数、开发环境 - [[01-Linux应用编程基础/02-文件IO基础与深入探究]] — open/read/write/lseek、fd、errno、文件共享、原子操作 - [[01-Linux应用编程基础/03-标准IO库]] — FILE 指针、fopen/fread/fwrite、格式化 IO、缓冲机制 - [[01-Linux应用编程基础/04-文件属性与目录]] — stat、权限、链接、目录遍历 - [[01-Linux应用编程基础/05-字符串处理与系统信息]] — 字符串/内存函数、正则、时间日期、proc 文件系统 - [[01-Linux应用编程基础/面试-Linux应用编程基础]] — 面试题 ### 02-进程线程与IPC - [[02-进程线程与IPC/01-信号机制]] — 信号分类、处理、信号集、阻塞与等待 - [[02-进程线程与IPC/02-进程管理]] — fork/vfork/exec、进程状态、守护进程 - [[02-进程线程与IPC/03-进程间通信]] — 管道/FIFO、消息队列、信号量、共享内存 - [[02-进程线程与IPC/04-线程与线程同步]] — pthread、互斥锁、条件变量、读写锁、自旋锁 - [[02-进程线程与IPC/面试-进程线程与IPC]] — 面试题 ### 03-外设与高级IO编程 - [[03-外设与高级IO编程/01-高级IO]] — 非阻塞 IO、IO 多路复用、异步 IO、存储映射 - [[03-外设与高级IO编程/02-GPIO与LED应用编程]] — sysfs GPIO、/dev/led、ioctl - [[03-外设与高级IO编程/03-输入设备与tslib]] — input 子系统、event 结构、tslib 触摸校准 - [[03-外设与高级IO编程/04-FrameBuffer与LCD应用编程]] — fb 设备、JPEG/PNG、FreeType、横竖屏 - [[03-外设与高级IO编程/05-PWM与看门狗]] — PWM sysfs、看门狗喂狗 - [[03-外设与高级IO编程/06-摄像头串口与音频]] — V4L2、UART、ALSA - [[03-外设与高级IO编程/面试-外设与高级IO编程]] — 面试题 ### 04-网络编程与项目实战 - [[04-网络编程与项目实战/01-网络基础与socket编程]] — TCP/IP、socket、TCP/UDP、并发服务器 - [[04-网络编程与项目实战/02-CAN应用编程]] — SocketCAN、can-utils - [[04-网络编程与项目实战/03-CMake入门与进阶]] — CMake 语法、交叉编译 - [[04-网络编程与项目实战/04-实战项目MQTT与视频监控]] — MQTT 物联网、视频监控 - [[04-网络编程与项目实战/面试-网络编程与项目实战]] — 面试题 ### 05-Qt应用开发 - [[05-Qt应用开发/01-C++基础与面向对象]] — C++ 特性、类对象、继承重载多态 - [[05-Qt应用开发/02-Qt入门与项目结构]] — Qt Creator、.pro/.ui、Qt Designer - [[05-Qt应用开发/03-信号与槽]] — 信号槽机制、自定义信号槽 - [[05-Qt应用开发/04-Qt控件详解]] — 按钮、输入、显示类控件 - [[05-Qt应用开发/05-布局容器与模型视图]] — 布局管理、容器、Model/View - [[05-Qt应用开发/06-文本绘图与图表]] — QFile/QTextStream、QPainter、QChart - [[05-Qt应用开发/07-多线程网络多媒体与数据库]] — QThread、TCP/UDP、音视频、SQLite - [[05-Qt应用开发/08-嵌入式Qt交叉编译与项目实战]] — 交叉编译、LED/串口/CAN/摄像头、综合项目 - [[05-Qt应用开发/面试-Qt应用开发]] — 面试题 ## 跨平台资源 | 知识领域 | 本项目 | 已有资源 | | -------- | ------ | -------- | | 系统编程深入 | 01/02 模块 | [[Linux+C+C++技术体系梳理/2. Linux系统编程/2. 系统调用IO]] | | 并发与锁 | 02 模块 | [[Linux+C+C++技术体系梳理/2. Linux系统编程/12. 读写锁与自旋锁]]、[[嵌入式Linux驱动开发实战/03-Linux驱动开发核心/04-并发同步与原子操作]] | | 网络编程 | 04 模块 | [[Linux+C+C++技术体系梳理/2. Linux系统编程/15. TCP编程]] | | Qt 界面开发 | 05 模块 | [[编程学习项目/使用Qt和C++构造UI界面/4. 信号和槽机制]] | | 驱动与硬件 | — | [[嵌入式Linux驱动开发实战/README]] | | STM32 嵌入式 | — | [[STM32学习笔记/README]] | ## 使用说明 - **初步学习**:按模块顺序阅读,每篇含完整原理与源码。 - **复习**:每模块末尾「面试-*」文档 + 各篇「面试精选」章节。 - **查询**:API/命令/寄存器均有表格,源码可直接复制。 - **迁移**:每篇含 IMX6ULL vs STM32 vs RK3568 跨平台对比。 --- **创建时间**: 2026-09-18 **基于资料**: 正点原子 I.MX6U《嵌入式Linux C应用编程指南V1.6》《嵌入式Qt开发指南V1.2》