IIC总线是板级内部总线,由于IIC简单,便捷,在嵌入式开发中被广泛使用,虽然IIC扩展了作为从机的功能,但这里只考虑作为主机的应用。
1、IIC子系统
1.1、IIC子系统的设计思路
作为主机使用时,IIC子系统要处理的问题有两个:控制总线的IIC控制器和总线上的从机器件
1.1.1、驱动每个IIC控制器
IIC控制器是实现IIC总线通信的硬件操作接口,软件系统通过IIC控制器实现在IIC总线上收/发数据,每个IIC控制器连接一路IIC总线,IIC控制器与IIC总线连接如图所示,嵌入式处理器内部集成多路IIC控制器,以连接多路IIC总线。
IIC控制器与IIC总线连接方式
IIC子系统需要为每个IIC控制器在/dev/目录下实现设备文件。通过这些设备文件,应用程序就可以在指定的IIC总线上收/发数据。IIC子系统在/dev/目录