第6章第2节 IIC总线接口实验.ppt

第6章第2节 IIC总线接口实验.ppt

ID:48834074

大小:273.50 KB

页数:15页

时间:2020-01-27

第6章第2节 IIC总线接口实验.ppt_第1页
第6章第2节 IIC总线接口实验.ppt_第2页
第6章第2节 IIC总线接口实验.ppt_第3页
第6章第2节 IIC总线接口实验.ppt_第4页
第6章第2节 IIC总线接口实验.ppt_第5页
资源描述:

《第6章第2节 IIC总线接口实验.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第6章应用程序设计实验---2---IIC总线接口实验IIC总线接口实验【实验目的】1.掌握IIC串行数据通信协议;2.掌握S3C2410处理器的IIC总线接口控制器的使用;3.通过实验初步了解LinuxIIC接口驱动程序设计。【实验设备】硬件:EDUKIT---III实验平台,S3C2410核心子板,EmbestJTAG仿真器套件,PC机。软件:EmbestIDE集成开发环境,CygwinUnix模拟平台,arm-linux-gcc编译工具链,WindowsXP操作系统,EmbestOnlineFlashProgrammerforARM编程器。【实验内容】编写S3C24

2、10IIC总线接口的Linux算法驱动程序,并编译进Linux内核,为EEPROM,8LED和键盘实验作准备IIC总线接口实验【实验原理】IIC总线为同步串行数据传输总线,由两根线组成,一根串行数据线(SDA)和一根串行时钟线(SCL)。其标准模式总线传输位速率为0~100kb/s,增强模式将总线传输位速率增加到4倍,可达400kb/s,并且向下兼容。IIC总线驱动能力为400pF(最大电容值),整个IIC系统的总线电容不可超过此值。IIC总线可构成多主和主从系统。在多主系统结构中,系统通过硬件或软件仲裁获得总线控制使用权。应用系统中IIC总线多采用主从结构,即总线上只有

3、一个主控节点,总线上的其它设备都作为从设备。IIC总线上的设备寻址由器件地址接线决定,与总线相连的每个器件都对应一个特定的地址,采用软件寻址方式,并且通过访问地址最低位来控制读写方向。1.IIC数据传输格式(书P236)2.S3C2410处理器IIC接口(书P237)IIC总线接口实验IIC驱动程序设计在kernel/drivers/i2c的驱动程序目录下,已经有了一些IIC的驱动程序,其中包括LinuxIIC的字符设备驱动程序(i2c-dev.c)和IIC主驱动程序(i2c-core.c)。分析一下i2c-dev.c和i2c-core.c源程序发现,i2c-dev.c已

4、实现了字符设备系统调用的过程和IIC适配器的管理,i2c-core.c却实现了IIC接口操作的抽象层。分析其他更底层的驱动程序,发现驱动程序的一般调用过程为:系统调用IIC设备驱动程序IIC驱动程序适配管理器IIC算法驱动程序在IIC驱动程序目录下,没有对应S3C2410IIC总线接口的驱动程序,因此我们需要为S3C2410IIC总线接口编写专用的算法驱动程序,以下内容一步一步来进行介绍:(书P240—P251)IIC总线接口实验IIC驱动程序配置与编译编写完s3c2410IIC总线接口算法驱动程序后,头文件源程序文件分别保存为i2c-algo-s3c2410.h和

5、i2c-algo-s3c2410.c,放在$WORKDIR/kernel/dirvers/i2c目录下(已经通过的源代码程序存放于dirvers/0602_driver-i2c)。要编译进Linux内核,还要对配置文件和Makefile文件脚本进行修改。1、修改内核i2c驱动配置文件打开$WORKDIR/kernel/drivers/i2c/config.in脚本文件,编辑添加下面几行:IIC总线接口实验dep_tristate'I2Cdeviceinterface'CONFIG_I2C_CHARDEV$CONFIG_I2C<--这一句后插入以下行:if["$CONFIG

6、_ARCH_S3C2410"="y"];thendep_tristate'SamsungS3C2410I2CAlgorithm'CONFIG_I2C_S3C2410_ALGO$CONFIG_I2C_CHARDEV$CONFIG_I2Cif["$CONFIG_I2C_S3C2410_ALGO"!="n"];thendep_tristate'SamsungS3C2410I2CAdapter'CONFIG_I2C_S3C2410_ADAP$CONFIG_I2C_S3C2410_ALGOfifi...IIC总线接口实验2、修改Makefile文件打开$WORKDIR/kernel

7、/drivers/i2c/Makefile文件,在适当位置编辑添加下面一行,使用编译包括IIC驱动程序:obj-$(CONFIG_I2C)+=i2c-core.oobj-$(CONFIG_I2C_CHARDEV)+=i2c-dev.o<--这一句后编辑添加以下1行:obj-$(CONFIG_I2C_S3C2410_ALGO)+=i2c-algo-s3c2410.o3、修改$WORKDIR/kernel/Makefile文件在适当位置(在有“DRIVERS-”开始行的附近)添加下面一行加入i2c设备,使内核启动时检查需要不需要加

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。