- 博客(8)
- 收藏
- 关注
原创 Linux字符设备驱动:分层/分离思想、总线设备驱动模型和设备树
Linux驱动=驱动框架+硬件操作=驱动框架+单片机;在上篇文章中已经介绍了实现一个字符设备驱动程序的详细过程,本文章以一个简单的例子LED驱动程序来介绍Linux中不同的驱动编写方法;主要介绍驱动编写的三种方法1. 传统写法1. 最简单的驱动程序直接在驱动程序中实现资源,要使用的引脚、以及怎么操作引脚都在驱动代码中,这种方式最简单,但是扩展性差,想改变引脚配置需要直接修改驱动中的代码,不符合驱动设计的思想;
2024-09-13 15:19:30 829
原创 Linux字符设备驱动实现详解
1. 简介字符设备(character device)是一种按字符方式进行数据传输的设备。与块设备不同,字符设备不以块为单位读写数据,而是以字符为单位进行操作。常见的字符设备包括串口、键盘、鼠标、以及一些传感器等。字符设备驱动(character device driver)是操作系统内核中用于管理和控制字符设备的软件组件。它提供了一组操作接口,使得用户空间的程序可以通过系统调用与字符设备进行交互。
2024-09-02 14:27:18 1065
原创 Linux系统移植过程(以及Linux系统详解)
Linux在嵌入式系统中占据重要地位,其优点包括开源免费、高度可定制、强大的稳定性和安全性,以及广泛的硬件支持和丰富的软件资源。这些特点使得Linux成为嵌入式设备开发的首选操作系统,广泛应用于智能手机、平板电脑、智能家居、工业自动化、网络设备等多个领域。
2024-08-30 17:07:37 1355
原创 使用Makefile管理项目
Makefile 是一种用于自动化编译和构建程序的文件,它包含了一系列的规则(rules),这些规则指定了如何编译和链接程序中的源文件以生成可执行文件或其他非源代码文件。Makefile 使得编译过程更加高效和可重复,尤其是在处理包含多个源文件和复杂依赖关系的项目时。注释:以开头的行为注释。变量:Makefile 中可以定义变量来存储文件名、编译器选项等,以便在多处重复使用。规则(Rules):Makefile 中的核心部分,每个规则定义了如何生成一个或多个目标文件(通常是可执行文件或对象文件)。
2024-08-30 11:09:15 908
原创 GCC编译器
在Linux中,使用最多的编译工具无疑是GCC(GNU Compiler Collection,GNU编译器套件)。1. 开源与自由GCC是GNU项目的一部分,遵循GNU通用公共许可证(GPL),这意味着它是完全开源和免费的。这种开放性吸引了大量的开发者和用户,促进了GCC的普及和发展。2. 跨平台支持GCC支持多种操作系统和硬件架构,包括Linux、Windows、macOS等,以及从x86到ARM等多种处理器架构。这种广泛的兼容性使得GCC成为跨平台开发的首选编译器。3. 语言支持丰富。
2024-08-29 19:22:00 1859
原创 通过队列通信实现红外遥控、旋转编码器和MPU6050数据处理的打砖块游戏开发
在本项目中,打砖块游戏的核心逻辑在一个单独的任务中实现,同时系统还需要处理来自红外遥控、旋转编码器和MPU6050传感器的数据输入。为此,使用FreeRTOS的队列机制,将各个硬件模块的输入数据通过队列发送给游戏逻辑任务,以便做出相应的处理。在FreeRTOS中,是一种常用的数据结构,用于在不同任务之间传递数据。队列提供了一种线程安全的方式,可以在线程之间传递消息、事件或数据块。队列可以用来缓冲数据,使得生产者任务和消费者任务之间的解耦。
2024-08-22 16:30:02 911
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人