探索PCF8584:I2C总线控制器的卓越之选

电子说

1.4w人已加入

描述

探索PCF8584:I2C总线控制器的卓越之选

在电子工程师的日常工作中,选择合适的芯片来实现特定功能至关重要。今天,我们就来深入探讨一款功能强大的I2C总线控制器——PCF8584,它由飞利浦半导体公司推出,为电子设备的设计带来了诸多便利。

文件下载:PCF8584T 2,512.pdf

一、PCF8584概述

1.1 特性亮点

PCF8584采用CMOS技术,具备多种出色特性。它可以作为标准高速并行总线与串行I2C总线之间的接口设备,兼容8049、8051、6800、68000和Z80等多种并行总线微控制器/微处理器。同时,它支持主从两种功能模式,能够自动检测和适应总线接口类型,还拥有可编程中断向量、多主能力、I2C总线监控模式以及长距离模式(4线)等。其工作电源电压范围为4.5至5.5V,工作温度范围在 -40至 +85°C,能适应较为复杂的工作环境。

1.2 总体描述

该芯片主要用于实现并行总线系统与I2C总线的双向通信,以字节为单位进行数据传输,可通过中断或轮询握手的方式进行通信。它能控制I2C总线的所有特定序列、协议、仲裁和时序,使得并行总线系统能够与I2C总线进行高效的数据交互。

1.3 订购信息

PCF8584有两种封装可供选择,分别是PCF8584P(DIP20塑料双列直插式封装,20引脚,300mil)和PCF8584T(SO20塑料小外形封装,20引脚,体宽7.5mm),工程师可以根据实际需求进行选择。

二、内部结构与引脚

2.1 框图与引脚配置

从芯片的框图可以看出其内部结构的复杂性和合理性。而引脚配置方面,CLK引脚用于接收微控制器时钟发生器的时钟输入;SDA或SDA OUT引脚作为I2C总线串行数据输入/输出;SCL或SCL IN引脚则是I2C串行时钟输入/输出;IACK或SDA IN引脚用于中断确认输入;INT或SCL OUT引脚为中断输出等。每个引脚都有其特定的功能,共同保证了芯片的正常工作。

2.2 功能描述

2.2.1 通用接口模式控制

PCF8584可以自动选择80XX模式或68000模式接口,通过检测第一个WR - CS信号序列来实现。默认情况下为80XX型接口,如果在$overline{CS}$为HIGH时检测到$overline{WR}(R overline{W})$的高 - 低转换,则选择68000型接口模式并启用DTACK输出。

2.2.2 寄存器功能

芯片内部有五个内部寄存器位置,其中三个(自身地址寄存器S0'、时钟寄存器S2和中断向量S3)用于芯片的初始化,通常在复位后只写入一次。另外两个寄存器(数据缓冲/移位寄存器S0和控制/状态寄存器S1)在实际数据传输/接收过程中使用。

  • 自身地址寄存器S0':当PCF8584作为从设备被寻址时,需要将7位I2C总线地址加载到该寄存器中。初始化时必须对其进行写入操作,当接收到该地址时,状态寄存器S1中的AAS位将被置位。
  • 时钟寄存器S2:用于控制芯片时钟频率和SCL时钟频率。通过设置不同的位组合,可以选择不同的内部时钟频率和SCL频率。
  • 中断向量S3:为向量中断微控制器提供一个8位用户可编程向量。当断言中断确认信号且ENI标志置位时,该向量将在总线端口可用。
  • 数据移位寄存器/读缓冲器S0:作为串行移位寄存器和读缓冲器,所有与I2C总线的读写操作都通过该寄存器进行。在接收模式下,数据从移位寄存器复制到读缓冲器;在发送模式下,数据写入S0移位寄存器后即可发送到I2C总线。
  • 控制/状态寄存器S1:该寄存器控制I2C总线操作并提供I2C总线状态信息。它有单独的读写功能,写操作部分用于寄存器访问控制和I2C总线信号控制,读操作部分提供I2C总线状态信息。

三、特殊功能模式

3.1 选通模式

当I2C总线控制器接收到自身地址(或“00H”通用调用地址)后紧接着一个停止条件时,会在RESET/STROBE引脚产生一个选通输出信号。该信号为单稳态输出脉冲(低电平有效),持续8个时钟周期,可作为多主并行总线系统的总线访问控制器。

3.2 长距离模式

长距离模式允许通过两个I2C总线控制器在并行处理器之间进行长距离串行通信。通过将ES1置为逻辑1且串行接口启用(ESO = 1)来选择该模式。在该模式下,I2C总线协议通过4条单向线路(SDA OUT、SCL IN、SDA IN和SCL IN)传输,需要连接线路驱动器/接收器。但在进入该模式前,必须将ENI置为逻辑0,并且在加电时需要确保PCF8584正确初始化,否则可能导致系统故障。

3.3 监控模式

当7位自身地址寄存器S0'加载全零值时,I2C总线控制器作为被动I2C监控器工作。在该模式下,控制器始终被选中,始终处于从接收模式,从不产生确认信号和中断请求,BB位在检测到起始条件后置为逻辑0,在停止条件后置为逻辑1。通过PIN位监控总线流量,接收到的数据会自动传输到读缓冲器。

四、软件与时序

4.1 软件流程图示例

文档中提供了初始化和实现的软件流程图示例。初始化流程图展示了PCF8584的正确初始化序列,包括向各个寄存器加载特定值等操作。实现流程图则说明了在轮询应用中实现主发送、主接收、主发送重复启动和主接收模式的正确编程序列。

4.2 I2C总线时序图

给出了PCF8584在主/从功能下的典型I2C总线时序图,包括主发送、主接收、从发送和从接收模式的时序。这些时序图有助于工程师理解芯片在不同模式下的工作时间特性,确保数据的正确传输。

4.3 限制值与直流特性

芯片有明确的限制值,如电源电压范围为 -0.3至 +7.0V,任何输入的电压范围为 -0.8至VDD + 0.5V等。直流特性方面,在不同的工作条件下,如待机和工作状态,芯片的电源电流、输入输出电压等参数都有相应的规定。

4.4 并行接口时序

详细规定了并行接口的各种时序参数,包括时钟上升时间、下降时间、输入时钟周期等。这些参数对于确保芯片与微控制器之间的正确通信至关重要,工程师在设计时需要严格按照这些时序要求进行电路设计。

五、应用与焊接

5.1 应用信息

文档提供了使用8048/8051、68000和8088等不同微控制器的应用图,展示了PCF8584在实际电路中的连接方式。此外,还给出了一些应用注意事项和相关的应用笔记,如“C Routines for the PCF8584”、“Using the PCF8584 with non - specified timings and other frequently asked questions”等,为工程师的实际应用提供了参考。

5.2 焊接方法

对于不同的封装,有不同的焊接方法。DIP封装可以采用浸焊或波峰焊,焊接时要注意焊料的最高允许温度为260°C,接触时间不超过5秒等。SO封装可以采用回流焊、波峰焊等方法,回流焊需要使用焊膏并进行预热;波峰焊需要注意采用双波焊接技术,控制焊料温度和浸泡时间等。在修复焊点时,也要根据不同的封装和温度要求进行操作。

六、总结

PCF8584作为一款功能强大的I2C总线控制器,具有丰富的特性和灵活的功能。它的多种特殊功能模式和详细的寄存器控制,为电子工程师在设计并行总线与I2C总线通信系统时提供了极大的便利。然而,在使用过程中,工程师需要仔细考虑芯片的各种参数和时序要求,严格按照文档中的规定进行设计和操作,以确保系统的稳定性和可靠性。同时,在焊接和应用方面,也需要遵循相应的方法和注意事项。希望通过本文的介绍,能让更多的工程师对PCF8584有更深入的了解,在实际项目中能够更好地应用这款芯片。大家在使用PCF8584的过程中遇到过哪些问题呢?欢迎在评论区分享交流。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分