I2C总线8位IO扩展器PCF8574

PCF8574用于I2C总线的远程8位I/O扩展器

HT8574

PCF8574国产有多个厂家有替代产品,图示为其中一款HT8574

1 产品特点

低待机电流消耗:10 uA(最大值)
I2C 转并行端口扩展器
漏极开路中断输出
与大多数微控制器兼容
具有大电流驱动能力的闭锁输出,可直接驱动 LED
闩锁性能超过 100 mA,符合 JESD 78 标准,ll 类

2 应用

电信候机亭:滤波单元
服务器
路由器(电信交换设备)
个人电脑
个人电子产品
工业自动化
采用GPIO限制处理器的产品

3 描述

这款用于双线双向总线 (I2C) 的 8 位输入/输出 (I/O) 扩展器专为 2.5V 至 6V Vcc 操作而设计。
PCF8574A器件通过IC接口[串行时钟(SCL)、串行数据(SDA)]为大多数微控制器系列提供通用远程I/O扩展。
该器件具有一个 8 位准双向 I/O 端口 (P0-P7),包括具有高电流驱动能力的锁存输出,可直接驱动 LED。每个准双向 1/O 都可以用作输入或输出,而无需使用数据方向控制信号。通电时,I/O 为高电平。在此模式下,只有 Vcc 的电流源处于活动状态。

5 引脚配置和功能

在这里插入图片描述

PCF8574引脚定义

管脚功能

管脚名称管脚编号管脚类型描述
A[0…2]1, 2, 3I地址输入 0 到 2。直接连接到 VCC 或接地。不需要上拉电阻。
GND8
INT13O中断输出。通过上拉电阻连接到 VCC。
P[0…7]4, 5, 6, 7,9, 10, 11,12I/OP 端口输入/输出。推挽式设计结构。
SCL14I串行时钟线。通过上拉电阻器连接到 VCC
SDA15I/O串行数据线。通过上拉电阻连接到 VCC。
VCC16电源电压

8 详细说明

8.1 概述

PCF8574A器件通过 I2C 接口 [串行时钟 (SCL)、串行数据 (SDA)] 为大多数微控制器系列提供通用远程 I/O 扩展。
该器件具有一个 8 位准双向 I/O 端口 (P0–P7),包括具有大电流驱动能力的锁存输出,可直接驱动 LED。每个准双向I/O都可以用作输入或输出,而无需使用数据方向控制信号。通电时,I/O 为高电平。在此模式下,只有 VCC 的电流源处于活动状态。VCC 的额外强上拉允许快速上升沿进入重负载输出。当输出写入高电平并被 SCL 的负边沿关闭时,该器件接通。在用作输入之前,I/O 应为高电平。
PCF8574A器件提供漏极开路输出 (INT),可连接到微控制器的中断输入。在输入模式下,端口输入的任何上升沿或下降沿都会产生中断。经过一段时间后,tiv、INT 有效。当端口上的数据更改为原始设置或从生成中断的端口读取或写入数据时,即可实现重置和重新激活中断电路。复位发生在 SCL 信号上升沿之后的确认位的读取模式下,或在 SCL 信号从高到低转换后的确认位处的写入模式下发生。在确认时钟脉冲期间发生的中断可能会丢失(或非常短),因为在此脉冲期间重置中断。复位后I/O的每一次变化都会被检测到,并在下一个上升的时钟边沿之后,以INT的形式传输。 从另一个器件读取或写入另一个器件不会影响中断电路。
通过在这条线路上发送中断信号,远程 I/O 可以通知微控制器其端口上是否有传入数据,而无需通过 I2C 总线进行通信。因此,PCF8574A设备可以保持简单的从设备。

8.2 功能框图

8.2.1 设备简化框图

在这里插入图片描述

PCF8574内部框图

8.3 功能说明

8.3.1 I2C接口

与该器件的 I2C 通信由主设备启动,该条件由主发送启动条件启动,即 SCL 输入为高电平时 SDA I/O 上的高低转换。在启动条件之后,首先发送设备地址字节,最高有效位 (MSB),包括数据方向位 (R/W)。此设备不响应常规呼叫地址。在接收到有效的地址字节后,该器件会以确认响应,即在与确认相关的时钟脉冲的高电平期间,SDA I/O上的低电平。从设备的地址输入(A0–A2)不得在启动和停止条件之间更改。
数据字节跟在地址确认之后。如果 R/W 位为高电平,则来自此设备的数据是从 P 端口读取的值。如果R/W位为低电平,则数据来自主站,输出到P端口。数据字节后跟从此设备发送的确认。如果从主设备发送其他数据字节,则在确认之后,此设备将忽略这些数据字节。仅当接收并确认完整字节时,才会输出数据。输出数据将在 SCL 从低到高转换之后的时间 tpv 以及确认的时钟周期内有效。
当SCL输入为高电平时,SDA I/O上的停止条件(即从低到高的转换)由主机发送。

8.3.2 接口定义

BYTE7 (MSB)6543210 (LSB)
I2C slave addressLHHHA2A1A0R/W
I/O data busP7P6P5P4P3P2P1P0

8.3.3 Address Reference

A2A1A0READ ADDRESSWRITE ADDRESS
LLL71 (hex)70 (hex)
LLH73 (hex)72 (hex)
LHL75 (hex)74 (hex)
LHH77 (hex)76 (hex)
HLL79 (hex)78 (hex)
HLH7B (hex)7A (hex)
HHL7D (hex)7C (hex)
HHH7F (hex)7E (hex)

9 应用与实施

9.2.1 设计要求

9.2.1.1 I/O控制LED时最小化ICC

当I/O用于控制LED时,通常通过电阻器连接到VCC,如图27所示。对于配置为输入的 P 端口,ICC 会随着 VI 低于 VCC 而增加。LED 为二极管,阈值电压为 VT,当 P 端口配置为输入时,LED 将熄灭,但 VI 为 VCC 以下的 VT 压降。
对于电池供电应用,当 P 端口配置为输入时,控制 LED 的 P 端口的电压必须大于或等于 VCC,以最大限度地降低电流消耗。图19显示了与LED并联的高值电阻。图 20 显示 VCC 比 LED 电源电压至少小 VT。
这两种方法都将 I/O VI 保持在 VCC 或更高,并防止在 P 端口配置为输入且 LED 熄灭时产生额外的电源电流消耗。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/736847.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

在linux系统中使用docker、mysql实例

systemctl 是一个命令行工具,用于控制和管理基于 systemd 的 Linux 发行版中的系统和服务。 启动服务 :使用 systemctl start [service-name] 开始一个服务。 如启动docker:systemctl start docker 停止服务 :使用 systemctl st…

JAVA期末复习题1

目录 Java 填空题整理及解析 1. 说出Java的特点: 2. Java的运行机制是先编译再解释运行。 3. 请按照以下分类补全对应的数据类型: 4. 在有限次数循环时,一般选择for循环结构;未知循环次数时,可以选择while循环结构…

预备资金有5000-6000买什么电脑比较好?大学生电脑选购指南

小新pro14 2024 处理器:采用了英特尔酷睿Ultra5 125H或Ultra9 185H两种处理器可选,这是英特尔最新的高性能低功耗处理器,具有18个线程,最高可达4.5GHz的加速频率,支持PCIe 4.0接口,内置了强大的ARC核芯显卡…

如何使用ig507金融数据库的股票接口,股票API来获取MACD指标

一、MACD指标简介 MACD(Moving Average Convergence Divergence,移动平均收敛/发散)是一种趋势跟踪动量指标,用于分析股票或其他金融产品的价格趋势。MACD由两部分组成:差离值(DIF)和信号线&am…

【FreeRTOS】任务管理与调度

文章目录 调度:总结 调度: 相同优先级的任务轮流运行最高优先级的任务先运行 可以得出结论如下: a 高优先级的任务在运行,未执行完,更低优先级的任务无法运行b 一旦高优先级任务就绪,它会马上运行&#xf…

笔记本更换固态,保留数据,无需重装系统和软件

一、问题描述: 原有一块128GB的固态硬盘作为c盘使用,由于工作学习需要,经常跑虚拟机,现在需要升级容量。 二、解决思路: 硬件 购买一款大容量的固态硬盘 不同的容量有不同的价格,这个根据预算和实际需要来…

Android,RPC原理,C语言实现Binder跨进程通信Demo

RPC原理图 Binder C语言层的Demo演示 新建目录 把两个文件拷贝到我们的Demo下面 1.binder_server.c #include <stdio.h> #include <stdlib.h> #include <errno.h> #include <linux/types.h> #include <stdbool.h> #include <string.h> #…

odoo的采购询价单,默认情况下显示‘draft‘,‘sent‘,‘purchase‘,请问什么情况下才会显示‘to approve‘?

odoo的采购询价单&#xff0c;默认情况下显示’draft’,‘sent’,‘purchase’&#xff0c;请问什么情况下才会显示’to approve’? 见下图&#xff1a; 这与操作人员的角色是相关的&#xff1a; 当操作人员是群组 “采购 / 用户”时&#xff0c;点击“confirm order/确认订…

越复杂的CoT越有效吗?Complexity-Based Prompting for Multi-step Reasoning

Complexity-Based Prompting for Multi-step Reasoning 论文&#xff1a;https://openreview.net/pdf?idyf1icZHC-l9 Github&#xff1a;https://github.com/FranxYao/chain-of-thought-hub 发表位置&#xff1a;ICLR 2023 Complexity-Based Prompting for Multi-step Reason…

【C语言】算法:二分查找

当我们想在一个有序的序列里面查找一个数字的时候&#xff0c;通常会想到使用循环遍历&#xff0c;也就是下面这种方法&#xff1a; 比如我们想在下面的数组里面找到7&#xff1a; int main() {int num 7;int arr[10] { 1,2,3,4,5,6,7,8,9,10 };for (int i 0; i < size…

5.树莓派4b+ubuntu18.04(ros版本melodic)+arduino mega自制两轮差速小车,实现建图导航功能

这一节介绍雷达的使用&#xff0c;我们使用的雷达型号是ydlidar x3 1.进入工作空间 cd catkin_ws/src2.下载官方提供的SDK文件 git clone https://github.com/YDLIDAR/YDLidar-SDK.git3.安装cmake sudo apt install cmake pkg-config4.编译和安装 进入YDLidar-SDK文件夹后如…

Linux动态网站架构(部署开发php代码)

动态网站架构&#xff08;部署开发php代码&#xff09; 测试能否直接部署nginx需要什么服务&#xff0c;及原理准备并进行开发测试部署代码 概述 静态网站&#xff1a;图片仅仅包含&#xff1a;html&#xff0c;css样式js脚本&#xff0c;图片及视频&#xff1b;nginx直接处…

DHCP原理1-单个局域网出现多个DHCP服务器会发生什么

1. 背景 DHCP全称是Dynamic Host Configuration Protocol。其协议标准是RFC1541&#xff08;已被RFC2131取代&#xff09;&#xff0c;主要实现服务器向客户端动态分配IP地址&#xff08;如IP地址、子网掩码、网关、DNS&#xff09;和配置信息。其系统架构是标准的C/S架构。RFC…

如何写出高效的代码?

1. 优化你的程序&#xff0c;拒绝创建不必要的对象 如果你的变量&#xff0c;后面的逻辑判断&#xff0c;一定会被赋值&#xff1b;或者说&#xff0c;只是一个字符串变量&#xff0c;直接初始化字符串常量就可以了&#xff0c;没有必要愣是要new String(). 反例&#xff1a;…

Redis 的安装与部署

本文为Redis的Linux版单机部署。 上传 redis-3.2.8 源码到 /opt/software/ 解压到 /opt/module/ [huweihadoop101 software]$ tar -zxvf redis-3.2.8.tar.gz -C /opt/module/安装依赖 [huweihadoop101 software]$ sudo yum -y install gcc-c tclRedis是C语言编写的 编译安装…

(南京观海微电子)——DC-DC和LDO的原理及应用区别

LDO: 低压差线性稳压器&#xff0c;故名思意为线性的稳压器&#xff0c;仅能使用在降压应用中&#xff0c;也就是输出电压必需小于输入电压。 优点&#xff1a;稳定性好&#xff0c;负载响应快&#xff0c;输出纹波小。 缺点&#xff1a; 效率低&#xff0c;输入输出的电压…

Linux使用——查看发行版本、内核、shell类型等基本命令

先做快照 虚拟机中编辑网络 关机 普通账户和管理员账户 互相对照 localhost相当于IP 参数: 短格式:以减号(-)开头&#xff0c;参数字母 长格式:以2个减号(--)后跟上完整的参数单词 当前发行版本 [rootserver ~]# cat /etc/redhat-release Red Hat Enterprise Linux release 9.…

.hmallox勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复

导言&#xff1a; 在当今数字化时代&#xff0c;勒索病毒已经成为网络安全的一大威胁&#xff0c;其中包括了最近出现的.hmallox勒索病毒。这类恶意软件不仅能够对计算机系统进行加密&#xff0c;还会要求用户支付赎金以换取解密密钥&#xff0c;给个人用户和企业带来了严重的…

Java面试题:数据库索引

数据库索引 索引:index 帮助mysql高效获取数据的数据结构,在数据之外,数据库系统还维护着满足特定查找算法的数据结构(B树),这些数据结构以某种方式引用(指向数据),这样就可以在数据结构上实现高级查找算法 将数据以树的方式进行存储,提高查找效率 索引的底层结构 使用B树 …

React AntDesign Layout组件布局刷新页面错乱闪动

大家最近在使用React AntDesign Layout组件布局后刷新页面时&#xff0c;页面布局错乱闪动 经过组件属性的研究才发现&#xff0c;设置 hasSider 为 true 就能解决上面的问题&#xff0c;耽搁了半天的时间&#xff0c;接着踩坑接着加油&#xff01;&#xff01;&#xff01; …