基于软件模拟的51单片机IIC总线的实现

作者: 凌六一,伍龙,   发布日期:2006-06-11 14:59   查看数:0
中文摘要:

   文章在简述IIC总线的基础上,介绍了通过软件模拟来实现IIC总线在mcs51系列单片机中的应用,从而使不带IIC总线接口的51单片机,也能扩展IIC总线接口器件。同时,以访问IIC总线接口芯片EEPROMAT24C02为例,并且给出具体程序来说明软件模拟的实现过程。


概述
     IIC 总线(inter integrated circuit bus)是Philips 公 司发明的一种高性能芯片间串行同步传输总线,与 SPI、Microwire 接口不同,它仅需两根信号线——串 行数据线SDA 和串行时钟线SCL,就实现了双工同 步数据传送,能够极方便地构成多机系统和外围器件 扩展系统。外围器件有RAM、EEPROM、ADC、DAC、 日历时钟、LED 驱动器、温度传感器等等,这些器件 地址是采用硬件设置方法,通过软件寻址完全避免了 器件的片选线寻址的弊端,从而使硬件系统更简单、 工作更可靠。 MCS51 系列单片机系统扩展的通常都是并行接 口器件,这些器件有很多的引脚,因此开发出的系统 用户板面积较大、引线较多。如果在系统要求传输速 率不太高的情况下,采用软件模拟方法,来扩展 MCS51 系列单片机系统的IIC 总线接口器件,就可以 减少用户电路板的面积和引线数目,从而大大提高了 系统的工作可靠性。
2 IIC 总线的工作原理简介
    
软件模拟
     由于MCS51 单片机不带IIC 总线接口,因此,它 与带IIC 总线接口的器件进行连接时,不能直接相连。 我们可以通过接口电路IIC 总线/并行转换器,来实现 MCS51 单片机与IIC 总线接口芯片之间的通信,这是 通过硬件来实现的。下面介绍通过软件模拟的方法来 实现这一功能,所谓软件模拟,就是用单片机的I/O 口来模拟IIC 总线的工作时序,从而达到能够访问带 IIC 总线接口器件的目的。下面以单片机8031 对存储 器EEPROM AT24C02 进行读写为例,通过给出具体 程序来说明软件模拟具体的实现过程。其中,利用的 是8031 的P1.0、P1.1 来模拟IIC 总线工作时序,图3 是8031 与AT24C02 的连接电路图。
51单片机IIC总线接口电路
     IIC总线,mcs51单片机,软件模拟,