上一页 1 ··· 5 6 7 8 9 10 11 下一页
  2011年11月23日
摘要: 在学习Linux驱动的过程中,遇到一个宏叫做container_of。该宏定义在include/linux/kernel.h中,首先来贴出它的代码:/*** container_of - cast a member of a structure out to the containing structure* @ptr: the pointer to the member.* @type: the type of the container struct this is embedded in.* @member: the name of the member within the struc 阅读全文
posted @ 2011-11-23 10:26 深蓝工作室 阅读(203) 评论(0) 推荐(0) 编辑
  2011年11月3日
摘要: this指针只能在一个类的成员函数中调用,它表示当前对象的地址。下面是一个例子: void Date::setMonth( int mn ) { month = mn; // 这三句是等价的 this->month = mn; (*this).month = mn; } 1. this只能在成员函数中使用。 全局函数,静态函数都不能使用this。 实际上,成员函数默认第一个参数为T*const register this。 如: class A{public: int func(int p){}}; 其中,func的原型在编译器看来应该是: int func(A*const regist 阅读全文
posted @ 2011-11-03 11:05 深蓝工作室 阅读(297) 评论(0) 推荐(0) 编辑
  2011年10月9日
摘要: SPI(Serial Peripheral Interface,串行外设接口)是Motorola公司提出的一种同步串行数据传输标准,在很多器件中被广泛应用。1. 接口SPI接口经常被称为4线串行总线,以主/从方式工作,数据传输过程由主机初始化。如图1所示,其使用的4条信号线分别为:1) SCLK:串行时钟,用来同步数据传输,由主机输出;2) MOSI:主机输出从机输入数据线;3) MISO:主机输入从机输出数据线;4) SS:片选线,低电平有效,由主机输出。在SPI总线上,某一时刻可以出现多个从机,但只能存在一个主机,主机通过片选线来确定要通信的从机。这就要求从机的MISO口具有三态特性,使得 阅读全文
posted @ 2011-10-09 07:39 深蓝工作室 阅读(71186) 评论(0) 推荐(1) 编辑
  2011年10月8日
摘要: 作者:刘洪涛,华清远见嵌入式学院讲师Android、X windows、qt等众多应用对于linux系统中键盘、鼠标、触摸屏等输入设备的支持都通过、或越来越倾向于标准的input输入子系统。因为input子系统已经完成了字符驱动的文件操作接口,所以编写驱动的核心工作是完成input系统留出的接口,工作量不大。但如果你想更灵活的应用它,就需要好好的分析下input子系统了。一、input输入子系统框架下图是input输入子系统框架,输入子系统由输入子系统核心层( Input Core ),驱动层和事件处理层(Event Handler)三部份组成。一个输入事件,如鼠标移动,键盘按键按下,joys 阅读全文
posted @ 2011-10-08 10:16 深蓝工作室 阅读(254) 评论(0) 推荐(0) 编辑
  2011年10月3日
摘要: ARM 微处理器可支持多达 16 个协处理器,用于各种协处理操作,在程序执行的过程中,每个协处理器只执行针对自身的协处理指令,忽略 ARM 处理器和其他协处理器的指令,ARM 的协处理器指令主要用于:<1> ARM 处理器初始化<2> ARM 协处理器的数据处理操作<3> 在ARM 协处理器的寄存器和处理器的寄存器之间传送数据<4> 在ARM 协处理器的寄存器和存储器之间传送数据ARM 协处理器指令包括以下5条l CDP 协处理器数操作指令l LDC 协处理器数据加载指令l STC 协处理器数据存储指令l MCR ARM 处理器寄存器到协处理器寄 阅读全文
posted @ 2011-10-03 12:25 深蓝工作室 阅读(2856) 评论(0) 推荐(1) 编辑
摘要: l 栈区:主要用来存放局部变量, 传递参数, 存放函数的返回地址。.esp 始终指向栈顶, 栈中的数据越多, esp的值越小。l 堆区:用于存放动态分配的对象, 当你使用 malloc和new 等进行分配时,所得到的空间就在堆中。动态分配得到的内存区域附带有分配信息, 所以你能够 free和delete它们。l 数据区:全局,静态和常量是分配在数据区中的,数据区包括bss(未初始化数据区)和初始化数据区。注意:1) 堆向高内存地址生长;2) 栈向低内存地址生长;3) 堆和栈相向而生,堆和栈之间有个临界点,称为stkbrk。1、一条进程在内存中的映射 假设现在有一个程序,它的函数调用顺序如下:m 阅读全文
posted @ 2011-10-03 12:20 深蓝工作室 阅读(829) 评论(0) 推荐(0) 编辑
摘要: 用C语言设置SDRAM的惯用方法/* SDRAM regisers */#define MEM_CTL_BASE 0x48000000 // BWSCON的地址#define SDRAM_BASE 0x30000000 // SDRAM的起始地址/* SDRAM 13个寄存器的值 *//* 定义了一个数组,把13个寄存器的设置值存到一个数组里面 */ unsigned long const mem_cfg_val[]={ // 注意unsigned long const 的含义… 0x22111110, //BWSCON 0x00000700, //BANKCON0 0x000007... 阅读全文
posted @ 2011-10-03 12:13 深蓝工作室 阅读(713) 评论(0) 推荐(0) 编辑
摘要: 0x0000,0100256 Byte0x0000,10004KB 256*4*4B0x0001,000064K 4*4*4KB0x0010,00001M 64*4*4KB0x0100,000016M 1*4*4MB0x1000,0000256M 16*4*4MB 阅读全文
posted @ 2011-10-03 12:11 深蓝工作室 阅读(176) 评论(0) 推荐(0) 编辑
  2011年9月28日
摘要: s3c2440上 移植yaffs2文件系统busybox-1.15.2编译器:arm-linux-gcc 4.3.2平台:某开发板(s3c2440)宿主:redhat 9.0得到源码 busybox-1.15.2.tar.bz2在任意目录解压源码,在任意目录制作文件系统框架~!~!~!我是在用户模式下 家目录中解压的源码和制作的文件系统框架~!~!如图:这里你能看到我是在家目录 kevin下的源码 busybox-1.15.2.tar.bz2 和制作的文件系统框架 rootfs。。进入rootfs中你看到:其中 linuxrc 是后期编译busybox得到的。。好了,基本的前期任务算是完成了。 阅读全文
posted @ 2011-09-28 17:18 深蓝工作室 阅读(7811) 评论(0) 推荐(1) 编辑
  2011年7月15日
摘要: 曾经的我和喜欢热闹,很喜欢和大家一块热闹。因为那让我很放松。而现在我却找不到那种感觉了。不知是年龄的原因还是其他原因。 不喜欢现在的人际关系和现在人所用的为人处事的方法,明明知道这种方式不是我喜欢的,但在现在的社会或者小点说现在所处的环境。现在很多东西让我很失望,在没上大学前邻家的大学生都这样给我说,大学的同学要好好相处因为大学的同学是将来帮你最多的人,是你的财富和成功的捷径。我也相信了。但随着时间的流失,大学时光的溜走。我发现大家都很利益。和你做朋友很大程度是看能从你那得到什么利益。虽说这样的话听着不是很好听,请现在还是大学生的大学生静下心来想想自己,看看自己是不是这个想法。 其实我不想把. 阅读全文
posted @ 2011-07-15 23:19 深蓝工作室 阅读(208) 评论(0) 推荐(0) 编辑
上一页 1 ··· 5 6 7 8 9 10 11 下一页