- 博客(6)
- 资源 (2)
- 收藏
- 关注
转载 c语言 struct 的初始化
struct数据有3中初始化方法:顺序,C风格及C++风格的乱序。1)顺序 这种方法很常见,在一般的介绍C的书中都有介绍。顺序初始化的特点是: 按照成员定义的顺序,从前到后逐个初始化;允许只初始化部分成员;在被初始化的成员之前,不能有未初始化的成员。 eg: struct User oneUser = {10, "Lucy", "/home/Lucy"}; 2)乱序(C
2016-07-29 23:20:41 1463
转载 I2C总线协议
1.I2C协议 2条双向串行线,一条数据线SDA,一条时钟线SCL。 SDA传输数据是大端传输,每次传输8bit,即一字节。 支持多主控(multimastering),任何时间点只能有一个主控。 总线上每个设备都有自己的一个addr,共7个bit,广播地址全0. 系统中可能有多个同种芯片,为此addr分为固定部分和可编程部份,细节视芯片而定,看datashe
2016-07-27 15:26:22 706
转载 L3总线接口
下面介绍一下L3总线接口(在一些codec 芯片中使用,Eg: uda1341)L3就是line 3(3条线)的意思,它只有L3DATA(数据线:用于传输数据)、L3MODE(模式线:用于选择模式)、L3CLOCK(时钟线:用于传输时钟)。L3一共有两个模式:地址模式和数据传输模式,先传输地址模式数据,再传输数据模式数据。L3MODE为低时是地址模式,L3MODE为高时是数据传输模式。L3DA
2016-07-27 00:14:15 2744
转载 解读PTR_ERR,ERR_PTR,IS_ERR
最近要找工作了,就把内核以及驱动的知识复习了一下。看到了几个宏PTR_ERR,ERR_PTR,IS_ERR(其实是内联函数).还是不太明白,然后就google搜索了一下,搜出来的结果真是不让人满意,看完一些解释我更迷糊了。看来还得依靠内核源码,依靠对内核的理解自己弄明白了。大致看了一下这几个宏的定义还有在内核的用法,恍然大悟。原来这几个宏这么简单,原理也这么简单。下面就说一下这几个宏的由来与用处。
2016-07-17 23:18:15 811
转载 linux 用户空间与内核空间——高端内存详解
摘要:Linux 操作系统和驱动程序运行在内核空间,应用程序运行在用户空间,两者不能简单地使用指针传递数据,因为Linux使用的虚拟内存机制,用户空间的数据可能被换出,当内核空间使用用户空间指针时,对应的数据可能不在内存中。用户空间的内存映射采用段页式,而内核空间有自己的规则;本文旨在探讨内核空间的地址映射。 Linux内核地址空间划分通常32位Linux内
2016-07-17 22:32:00 3937
转载 Linux操作系统实时性学习总结
一、实时系统基本概念什么是实时系统,POSIX作了这样的定义:指能够在限定的响应时间内提供所需水平服务的系统。另个一被Donald Gillies提出定义为:一个实时系统是指计算的正确性不仅取决于程序的逻辑正确性,也取决于结果产生的时间,如果系统的时间约束条件得不到满足,将会发生系统出错。实时系统对响应时间有严格要求。实时操作系统(RTOS,RealTime Operation Syste
2016-07-14 14:56:35 2657
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人