关闭
当前搜索:

基础学习(二)

operator overloading 理论知识: 操作符本质上也是一个函数运算符。即运算符重载也就是函数进行重载。   例如: 函数外重载:这一种是非成员函数,(这里面是没有this指针)inline complexoperator + (const complex&,const complex&y){ return complex(reaal(x)+real(y),    ......
阅读(7) 评论(0)

基础学习(一)

一,构造函数的正规写法 complex(double r=0,double i =0) :re(r),im(i) { }   1.1默认的构造函数   1.2形参列表 二,函数重载    2.1函数重载的本质  double real() const{return re;}  void real(double r){re =r ;} 这是一对构造函数 编译器再进...
阅读(11) 评论(0)

项目中的知识点:Linux下getopt()函数的简单使用

Linux下的getopt()函数的使用方法...
阅读(16) 评论(0)

字体显示的基本理论(二)

字体显示的基本理论:...
阅读(46) 评论(0)

项目的需求和整体框架(一)

关于Linux开发的一些gcc动态库和链接库,http://blog.csdn.net/DP29syM41zyGndVF/article/details/78988432项目的需求: 第一步:上电,LCD显示一幅图片 第二步:根据配置选项,决定停留还是自动显示下一幅图片 第三步:点击一下出现对话框 第四步: 根据上下左右 来进行放大,缩小,显示下一幅图片。 第五: 左右移动很快时,显示下下副...
阅读(20) 评论(0)

内核显示自己的logo

平台 unbuntu 14  linux平台  第一步: sudo apt-get install netpbm  第二步: 准备在网上下载一个 .png图片  第三步: pngtopnm logo.png | ppmquant -fs 224 | pnmtoplaipnm > logo_linux_clut224.ppm 最后生成了一张logo_linux_clut224....
阅读(25) 评论(0)

framebuf驱动分析

分析framebuf的步骤 第一步: 理论分析。          :这一步分的工作。主要是从别人的博客中得来,从鸟哥那本书得来。   主要是对设备本身的了解程度。 第二步: 应用程序分析。      这一步主要是关于这个设备的应用程序分析,怎么在应用程序中,使用这个设备。 第三步: 进入内核分析,大概分析出 这个体系设计到了那些文件。 ...
阅读(47) 评论(0)

驱动编写--中断,互斥和自旋锁

中断: 一般中断: if (request_irq(BUTTON_IRQ, button_interrupt, 0, "button", NULL))    { printk(KERN_ERR "button.c: Can't allocate irq %d\n", button_irq);         return -EBUSY;     } /* 参数1:参数一: ...
阅读(32) 评论(0)

驱动学习杂散---定时器,输入子系统中的能力设置

知识点一: 内核定时器的用法: static struct timer_list timer; //定义一个timer 全局变量  初始化函数: init_timer(&timer); timer.function = s3cbutton_timer_handler; timer.expires = jiffies + (HZ/100); //1/100秒  = 10ms...
阅读(34) 评论(0)

输入子系统设备层 和 handler层分析

输入事件驱动层源码分析: kernel/driver/input/Evdev.c  static int __init evdev_init(void) input_register_handler(&evdev_handler); //第一点:在input.c定义的static struct input_handler *input_table[8]; 填充到一个input_tab...
阅读(38) 评论(0)

input子系统的输入核心层源码分析

第一点:input子系统架构总览1 input子系统分为三层 (1)最上层:输入事件驱动层,evdev.c和mousedev.c和joydev.c属于这一层 (2)中间层:输入核心层,input.c属于这一层 (3)最下层:输入设备驱动层,drivers/input/xxx 文件夹下   这些文件夹就是各种各样的设备,每一个文件就是一类输入类型的设备 最上层在实现的过程中调用相应的...
阅读(28) 评论(0)

驱动----输入子系统(input子系统)基本概念

输入子系统提出来的前提: 输入模型的建立:...
阅读(46) 评论(0)

驱动编写------frebuf的应用

frebuf的理论的讲解: 第一步:我们就讲解frebuf这个设备在裸机和Linux操作系统下的操作 第二点:framebuffer 帧缓冲(Framebuffer)是Linux系统为显示设备提供的一个接口,它将显示缓冲区抽象,屏蔽图像硬件的底层差异,允许上层应用程序在图形模式下直接对显示缓冲区进行读写操作。用户不必关心物理显示缓冲区的具体位置及存放方式,这些都是由帧缓冲设备驱动本身来完...
阅读(35) 评论(0)

LED驱动框架的学习

LED驱动: 第一步找到分析的位置: (1)drivers/leds目录,这个目录就是驱动框架规定的LED这种硬件的驱动应该待的地方。 (2)led-class.c和led-core.c,这两个文件加起来属于LED驱动框架的第一部分,这两个文件是内核开发者提供的,                   他们描述的是内核中所有厂家的不同LED硬件的相同部分的逻辑。  //这个是内核开发者...
阅读(27) 评论(0)

驱动学习之驱动框架基础

驱动框架的概念或者目的: 第一: 内核中驱动部分维护者针对每个种类 (这个种类有可能是LEDS i2c rtc)等等的驱动设计一套成熟的、标准的、典型的驱动实现,然后把不同厂家的同类硬件驱动中相同的部分抽出来自己实现好,再把不同部分留出接口给具体的驱动开发工程师来实现,这就叫驱动框架。真正的驱动工作人员 把内核给你提供出来相关结构体进行信息的填写。调用相关的接口进行注册即可。内部的实现都是由内...
阅读(40) 评论(0)

驱动编写的新接口

内核向驱动人员提供的接口函数...
阅读(43) 评论(0)

驱动调用底层的硬件

方式二:动态方式模式驱动LED灯    基本理论:  硬件上的资源都是由操作来管理分配的.因为在内核中,很多的驱动或者别的一些应用程序可能会公用一个资源,这样会导致发生资源冲突。这个时候需要一个管理人员,来分配所有的资源。资源一档给了你,就无法给别人了 。 动态映射的相关函数 函数一:第一步申请资源: 参数一:物理地址 :S5PV210_GPJ0CON_PA      参数二:数...
阅读(55) 评论(0)

写应用层

写应用的流程: 1.装载驱动 1.1lsmod查看有没有驱动   1.2 cat /proc/devices    2.装载设备文件           1.2mknod  /dev/xxxx(xxx名字由应用程序决定)  c 主设备号 次设备号        1.3测试app 第二点:关于主次设备号的理解: 主设备号:表示一类设备 LED 次设备号:这类设备中的某一个设备  例如...
阅读(33) 评论(0)

驱动实战基础

驱动学习实战一: 编写简单的驱动: 利用:lsmod  rmmod insmode这个三个常见命令 驱动学习实战二:  register_chrdev详解(#include )  老接口的函数     static inline int register_chrdev(unsigned int major, const char *name,const struct file_opera...
阅读(50) 评论(0)

应用层API和驱动之间的关系

应用层API和驱动之间的关系...
阅读(39) 评论(0)
32条 共2页1 2 下一页 尾页
    个人资料
    • 访问:1673次
    • 积分:342
    • 等级:
    • 排名:千里之外
    • 原创:32篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条