README.md 6.0 KB


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》