易截截图软件、单文件、免安装、纯绿色、仅160KB

Linux操作系统I2C驱动架构

1,Linux的I2C驱动架构概览
      Linux中I2C总线的驱动分为两个部分,总线驱动(BUS)和设备驱动(DEVICE)。其中总线驱动的职责,是为系统中每个I2C总线增加相应的读写方法(比如不同的主芯片集成的I2C控制器)。但是总线驱动本身并不会进行任何的通讯,它只是存在在那里,等待设备驱动调用其函数。
     设备驱动则是与挂在I2C总线上的具体的设备通讯的驱动。通过I2C总线驱动提供的函数,设备驱动可以忽略不同总线控制器的差异,不考虑其实现细节地与硬件设备通讯。
2,总线驱动
     在系统开机时,首先装载的是I2C总线驱动。一个总线驱动用于支持一条特定的I2C总线的读写。一个总线驱动通常需要两个模块,一个struct i2c_adapter和一个struct i2c_algorithm来描述:
 static struct i2c_adapter pb1550_board_adapter =
 {
      name:              "pb1550 adapter",
      id:                I2C_HW_AU1550_PSC,
      algo:              NULL,
      algo_data:         &pb1550_i2c_info,
      inc_use:           pb1550_inc_use,
      dec_use:           pb1550_dec_use,
      client_register:   pb1550_reg,
      client_unregister: pb1550_unreg,
      client_count:      0,
 };
       这个样例挂接了一个叫做“pb1550”的adapter驱动。但这个模块并未提供读写函数,具体的读写方法由第二个模块,struct i2c_algorithm提供。
 static struct i2c_algorithm au1550_algo =
 {
    .name &n


相关文档:

50个c/c++源代码网站 幽灵 逐梦

C/C++是最主要的编程语言。这里列出了50名优秀网站和网页清单,这些网站提供c/c++源代码。这份清单提供了源代码的链接以及它们的小说明。我已尽力包括最佳的C/C++源代码的网站。这不是一个完整的清单,您有建议可以联系我,我将欢迎您的建议,以进一步加强这方面的清单。
1、http://snippets.dzone.com/tag/c/ --数以千计 ......

在c和c++中对const修饰符的不同处理

我不会说为什么在c++中用const比define好,因为我自己都没有多好地领悟到,反而还觉得define能够完成更强大的功能,只要使用得当。
在这里要说的只是一个小技巧,给自己备忘用的。
const在C和C++中最大的不同是,在C中,const默认具有外部链接,而C++中则是内部链接,那么用起来有什么不同呢?
假如我定义了
const int ......

linux下的常用命令

=============安装和登陆命令========================================
Mount:挂载命令。把存储介质指定成系统中的某个目录,比如挂载光驱mount /dev/cdrom把CDROM挂载,可在目录/mnt/cdrom下查看内容。同样可以挂载盘符,比如mount -t vfat /dev/uba1 /mnt,就可以切换到/mnt目录下查看内容。
umount:卸载命令,比如u ......

嵌入式Linux内核优化裁剪

嵌入式Linux内核优化裁剪
                                    
 优化1、取消虚拟内存的支持
General setup  ---& ......

linux初学之网络配置

 ifconfig  命令,查看/配置网络信息
ifconfig的语法为 
ifconfig [-a] [-V] [-s] <interface> [[<AF>] <address>]
[[-]broadcast [<address>]] 
[netmask <address>] 
[up|down]
其中 interface 为网卡名 address 为 IP 地址 broadcast 表示设置广播
......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号