PCF8574 IO Expansion Board

来自Waveshare Wiki
跳转至: 导航搜索
PCF8574-IO-Expansion-Board
{{{name2}}}
{{{name3}}}
功能简介
特性 PCF8574 I/O扩展模块
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
接口 I2C

说明

产品简介

PCF8574是CMOS电路。它通过两条双向总线(I2C)可使大多数MCU实现远程IO口扩展。
该器件包含一个8位准双向口和一个I2CC总线接口,PCF8574电流消耗很低,且输出锁存具
有大电流驱动能力,可直接驱动LED.它还带有一条中断接线(INT)可与MCU的中断逻辑相
连。通过INT发送中断信号,远端IO口不必经过I2C总线通信就可通知MCU是否有数据从端
口输入。这意味着PCF8574可以作为一个单被控器。

产品特性

参数名称 参数
转换芯片 PCF8574
工作电压 3.3V/5V
IO数 8位
总线接口 I2C

接口说明

引脚 功能
VCC 电源正(3.3V/5V)
GND 电源地
SDA I2C数据输入
SCL I2C时钟信号

谨防假冒

已发现市面上有此产品的假冒伪劣品,使用劣质材料,没有测试。敬请注意!
可联系我们,确认你在其他网店浏览的或已购买的是否为正品。
更多信息请参见打假声明

RPI使用教程

开启I2C接口

  • 打开树莓派终端,输入以下指令进入配置界面
sudo raspi-config 
选择 Interfacing Options -> I2C ->yes 启动 i2C 内核驱动

RPI open i2c.png
然后重启树莓派:

sudo reboot

安装库

如果使用bookworm系统,只能使用lgpio库,bcm2835跟wiringPi无法安装与使用,python库可以不安装,直接运行程序即可

BCM2835

#打开树莓派终端,并运行以下指令
wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.71.tar.gz
tar zxvf bcm2835-1.71.tar.gz 
cd bcm2835-1.71/
sudo ./configure && sudo make && sudo make check && sudo make install
# 更多的可以参考官网:http://www.airspayce.com/mikem/bcm2835/

wiringPi

#打开树莓派终端,并运行以下指令
cd
sudo apt-get install wiringpi
#对于树莓派2019年5月之后的系统(早于之前的可不用执行),可能需要进行升级:
wget https://project-downloads.drogon.net/wiringpi-latest.deb
sudo dpkg -i wiringpi-latest.deb
gpio -v
# 运行gpio -v会出现2.52版本,如果没有出现说明安装出错

#Bullseye分支系统使用如下命令:
git clone https://github.com/WiringPi/WiringPi
cd WiringPi
./build
gpio -v
# 运行gpio -v会出现2.70版本,如果没有出现说明安装出错

lgpio

wget https://github.com/joan2937/lg/archive/master.zip
unzip master.zip
cd lg-master
sudo make install 
# 更多的可以参考官网:https://github.com/gpiozero/lg
  • 安装Python函数库
#python3
sudo apt-get update
sudo apt-get install python3-pip
sudo apt-get install python3-pil
sudo apt-get install python3-numpy
sudo pip3 install RPi.GPIO
sudo pip3 install spidev

下载测试程序

打开树莓派终端,执行:

sudo apt-get install p7zip-full -y
sudo wget  https://www.waveshare.net/w/upload/1/14/PCF8574-Code.7z
7z x PCF8574-Code.7z -O./PCF8574-Code
cd PCF8574-Code/RaspberryPi/

硬件连接

树莓派连接引脚对应关系
PCF8574 Raspberry Pi 功能
Board物理引脚序号
VCC 5V 电源输入
GND GND 电源地
SDA 3 I2C数据输入
SCL 5 I2C时钟信号

PCF8574 RPI 2.jpg

运行测试程序

以下命令请在RaspberryPi下执行,否则不在索引不到目录;

C语言

  • 重新编译,编译过程可能需要几秒
cd wiringPi
sudo make clean
sudo make 
sudo ./test

python

cd python
sudo python3 PCF8574.py

现象

在树莓派运行程序后,你可以使用万用表测试每个IO口的电压值,正常是P0~P3为高,P4~P7为低,显示出当前8个IO的电平,如下图所示:

c

PCF8574 RPI C 1.jpg

python

PCF8574 RPI Python 1.jpg

STM32使用教程

我们提供的例程是基于STM32F103RBT6,提供的连接方式是对应的STM32F103RBT6的引脚为例,如果有需要使用其他STM32,请按实际引脚连接

硬件连接

STM32F103RB连接引脚对应关系
PCF8574 STM32 功能
VCC 3.3V 电源输入
GND GND 电源地
SDA PB9 I2C数据输入
SCL PB8 I2C时钟信号

PCF8574 STM32 2.jpg

软件说明

例程是基于HAL库进行开发的。 请在资料里面下载程序,找到STM32程序文件目录,打开PCF8574_Code\STM32\STM32F103RB\MDK-ARM
目录下的PCF8574 IO Expansion Board.uvprojx,即可看到程序。
MQ5 STM32 1.jpg

打开main.c,重新编译下载即可。
MQ5 STM32 2.jpg

下载成功后,运行SSCOM,就可以实时查看传感器的状态啦。
PCF8574 STM32 1.jpg

现象

1、你可以使用万用表测试每个IO口的电压值,正常是P0~P3为高,P4~P7为低。
2、打开串口调试软件,显示出当前8个IO的电平。

Arduino使用教程

本例程已经在Arduino uno上测试通过,直接按下表连接Arduino uno即可

硬件连接

您可以对照以下表格连线。

Arduino连接引脚对应关系
PCF8574 Arduino 功能
VCC 5V 电源输入
GND GND 电源地
SDA SDA I2C数据输入
SCL SCL I2C时钟信号

PCF8574 Arduino 2.jpg

安装编译软件(Windows教程)

arduino IDE 安装教程

运行程序

在我们提供的资料里面下载程序,并解压,再进入PCF8574_Code/Arduino/PCF8574目录下
双击打开PCF8574.ino文件。
选择你的开发板,跟对应的端口。

MQ5 Arduino 1.jpg

进行编译下载,如下图:
MQ5 Arduino 2.jpg

下载成功后,运行SSCOM,就可以实时查看传感器的状态啦。
PCF8574 Arduino 1.jpg

现象

1、你可以使用万用表测试每个IO口的电压值,正常是P0~P3为高,P4~P7为低。
2、打开串口调试软件,显示出当前8个IO的电平。

资料

文档

程序

数据手册

FAQ


技术支持


联系人:黄工
QQ:2850151199
EMAIL:2850151199@qq.com
电话:0755-83040712
微信:扫下方二维码添加
Service20-Weichat.png

说明:进行售后服务前,请准备好客户信息(定货单位、定货人等),以供验证