- 博客(10)
- 收藏
- 关注
原创 驱动编写------frebuf的应用
frebuf的理论的讲解:第一步:我们就讲解frebuf这个设备在裸机和Linux操作系统下的操作第二点:framebuffer帧缓冲(Framebuffer)是Linux系统为显示设备提供的一个接口,它将显示缓冲区抽象,屏蔽图像硬件的底层差异,允许上层应用程序在图形模式下直接对显示缓冲区进行读写操作。用户不必关心物理显示缓冲区的具体位置及存放方式,这些都是由帧缓冲设备驱动本身来完
2017-12-25 21:17:18 311
原创 LED驱动框架的学习
LED驱动:第一步找到分析的位置:(1)drivers/leds目录,这个目录就是驱动框架规定的LED这种硬件的驱动应该待的地方。(2)led-class.c和led-core.c,这两个文件加起来属于LED驱动框架的第一部分,这两个文件是内核开发者提供的, 他们描述的是内核中所有厂家的不同LED硬件的相同部分的逻辑。 //这个是内核开发者
2017-12-21 20:05:15 260
原创 驱动学习之驱动框架基础
驱动框架的概念或者目的:第一:内核中驱动部分维护者针对每个种类 (这个种类有可能是LEDS i2c rtc)等等的驱动设计一套成熟的、标准的、典型的驱动实现,然后把不同厂家的同类硬件驱动中相同的部分抽出来自己实现好,再把不同部分留出接口给具体的驱动开发工程师来实现,这就叫驱动框架。真正的驱动工作人员 把内核给你提供出来相关结构体进行信息的填写。调用相关的接口进行注册即可。内部的实现都是由内
2017-12-21 19:13:35 341
原创 驱动调用底层的硬件
方式二:动态方式模式驱动LED灯 基本理论: 硬件上的资源都是由操作来管理分配的.因为在内核中,很多的驱动或者别的一些应用程序可能会公用一个资源,这样会导致发生资源冲突。这个时候需要一个管理人员,来分配所有的资源。资源一档给了你,就无法给别人了。动态映射的相关函数函数一:第一步申请资源:参数一:物理地址 :S5PV210_GPJ0CON_PA 参数二:数
2017-12-15 08:04:38 818
原创 写应用层
写应用的流程:1.装载驱动1.1lsmod查看有没有驱动 1.2 cat /proc/devices 2.装载设备文件 1.2mknod /dev/xxxx(xxx名字由应用程序决定) c 主设备号 次设备号 1.3测试app第二点:关于主次设备号的理解:主设备号:表示一类设备 LED次设备号:这类设备中的某一个设备 例如
2017-12-13 21:20:49 168
原创 驱动实战基础
驱动学习实战一:编写简单的驱动:利用:lsmod rmmod insmode这个三个常见命令驱动学习实战二: register_chrdev详解(#include ) 老接口的函数 static inline int register_chrdev(unsigned int major, const char *name,const struct file_opera
2017-12-13 18:59:16 204
原创 驱动学习的准备工作(1)
1.正常运行Linux系统的开发板。要求开发板中运行的Linux的zImage 必须是自己的编译的。不能使用别人zImage -------原因因为驱动必须和内核一致,驱动才能使用。 驱动特别依赖内核的版本号2.内核源码树,其实就是一个经过配置编译的内核源码 --------就是用这个内核源码树,编译出来第一步使用的zImage 我的内核源码树目录: /root/dri
2017-12-05 20:30:39 260
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人