PCF8574 IO Expansion Board
| ||||||||||||||||||||
| ||||||||||||||||||||
说明
产品简介
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 内核驱动
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时钟信号 |
运行测试程序
以下命令请在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
python
STM32使用教程
我们提供的例程是基于STM32F103RBT6,提供的连接方式是对应的STM32F103RBT6的引脚为例,如果有需要使用其他STM32,请按实际引脚连接
硬件连接
PCF8574 | STM32 | 功能 |
VCC | 3.3V | 电源输入 |
GND | GND | 电源地 |
SDA | PB9 | I2C数据输入 |
SCL | PB8 | I2C时钟信号 |
软件说明
例程是基于HAL库进行开发的。
请在资料里面下载程序,找到STM32程序文件目录,打开PCF8574_Code\STM32\STM32F103RB\MDK-ARM
目录下的PCF8574 IO Expansion Board.uvprojx,即可看到程序。
现象
1、你可以使用万用表测试每个IO口的电压值,正常是P0~P3为高,P4~P7为低。
2、打开串口调试软件,显示出当前8个IO的电平。
Arduino使用教程
本例程已经在Arduino uno上测试通过,直接按下表连接Arduino uno即可
硬件连接
您可以对照以下表格连线。
PCF8574 | Arduino | 功能 |
VCC | 5V | 电源输入 |
GND | GND | 电源地 |
SDA | SDA | I2C数据输入 |
SCL | SCL | I2C时钟信号 |
安装编译软件(Windows教程)
运行程序
在我们提供的资料里面下载程序,并解压,再进入PCF8574_Code/Arduino/PCF8574目录下
双击打开PCF8574.ino文件。
选择你的开发板,跟对应的端口。
进行编译下载,如下图:
下载成功后,运行SSCOM,就可以实时查看传感器的状态啦。
现象
1、你可以使用万用表测试每个IO口的电压值,正常是P0~P3为高,P4~P7为低。
2、打开串口调试软件,显示出当前8个IO的电平。