一、PCF8574

PCF8574是一个 8 bit IO扩展芯片,使用两线I2C通信接口,提供了8位准双向的IO口(P0-P7),包括具有高电流驱动能力的锁存输出,用于直接驱动led。每个准双向I/O都可以用作输入或输出,而无需使用数据方向控制信号。 上电时,所有IO的电平默认是高电平。

1. 引脚描述

引脚图如下:

引脚描述如下:

2. 功能描述

I2C从机地址如下:

二、Linux内核中自带的驱动

Linux对于IO扩展芯片的驱动在drivers/gpio/路径下,比如对于PCF8574芯片,驱动文件为 gpio-pcf857x.c 文件。

可以看到该驱动支持的芯片如下:

控制该文件的宏定义为 CONFIG_GPIO_PCF857X

i.MX6ULL驱动开发 | 22 - 使用PCF8574扩展gpio相关推荐

  1. Linux嵌入式驱动开发13——ioctl接口(gpio控制使用)

    文章目录 全系列传送门 引言 什么是unlocked_ioctl接口? unlocked_ioctl和read/write函数有什么相同和不同 unlocked_ioctl接口命令规则 命令的合成宏与 ...

  2. i.MX6ULL驱动开发 | 04-Linux设备树基本语法与实例解析

    文章目录 一.设备树简介 1. 设备树在ARM架构的引入 2. 什么是设备树 3. DTS.DTSI.DTB 4. 设备树编译 二.设备树语法 1. 设备树版本 2. 设备树节点 3. 设备树节点标准 ...

  3. i.MX6ULL驱动开发 | 27 - 使用WM8960 CODEC播放音频

    一.WM8960音频编解码芯片 1. 介绍 WM8960是欧胜公司(wolfson)的一款低功耗.高质量的立体声音频编解码芯片. 其内部集成D类喇叭功放,每个通道可以驱动一个1W喇叭(8Ω),内部集成 ...

  4. i.MX6ULL驱动开发 | 02-字符设备驱动框架

    一.字符设备驱动框架 1. file_operations结构体 在Linux中应用程序运行在用户空间,而驱动程序属于内核的一部分,在内核空间运行.用户需要通过系统调用陷入到内核空间,才能实现对底层驱 ...

  5. i.MX6ULL驱动开发 | 12 - 基于 Linux I2C 驱动读取AP3216C传感器

    本系列文章驱动源码仓库,欢迎Star~ https://github.com/Mculover666/linux_driver_study. 一.AP3216C 1. 简介 AP3216C集成了一个光 ...

  6. i.MX6ULL驱动开发 | 15 - Linux UART 驱动框架

    Linux UART 驱动框架比较简单,不需要设备驱动,只需要UART设备驱动即可. 一.Linux UART驱动框架 1. uart_driver结构体 Linux将 UART 驱动抽象为 uart ...

  7. i.MX6ULL驱动开发 | 31 - Linux内核网络设备驱动框架

    一.Linux网络设备驱动整体架构 网络设备是完成用户数据包在网络媒介上发送和接收的设备,它将上层协议传递下来的数据包,以特定的媒介访问控制方式进行发送,并将接收到的数据包传递给上层协议. Linux ...

  8. i.MX6ULL驱动开发 | 30 - 使用EC20 4G网卡(移植移远GobiNet驱动)

    一.EC20 EC20在Linux下的驱动架构: 二.Linux内核中USB驱动的修改与配置 1. EC20 USB驱动修改 默认插上之后没有出来ttyUSB设备,需要在内核中添加EC20的USB设备 ...

  9. i.MX6ULL驱动开发 | 29 - 使用USB WIFI网卡(RTL8188EU)

    一.USB无线网卡 插到电脑上看下型号是Realtek RTL8188EU版本: 二.添加驱动到Linux中 1. realtek驱动源码 使用正点原子资料包中的源码: 2. 删除内核自带的RTL81 ...

最新文章

  1. MySQL RR隔离级别的更新冲突策略
  2. 【翻译】A Next-Generation Smart Contract and Decentralized Application Platform
  3. 字节跳动pest分析_字节跳动小程序分析:前景及优势都是什么?
  4. 使用librosa计算pcen
  5. mysql 组复制和传统复制_MySQL的GTID复制与传统复制的相互切换
  6. 【iHMI43 应用演示】之 modbus 协议(从机)通信演示
  7. C++比较两个字符串是否完全相同
  8. ueditor 上传视频丢失src的解决方法
  9. SQL注入:5、SQL盲注
  10. 【AI视野·今日NLP 自然语言处理论文速览 第四期】Wed, 9 Jun 2021
  11. spring4.1.3模块的官方说明
  12. React学习笔记三 脚手架生成的index.js内容简介
  13. 更改桌面壁纸_使用DeskSlide轻松更改桌面墙纸
  14. html 页面定位到指定位置的4种实现方式
  15. 抽象类(abstract)
  16. linux 的tac命令,每天学一个 Linux 命令(102):tac
  17. 前端项目如何使用svg矢量图
  18. 4维俄罗斯方块 java,课内资源 - 基于Easyx插件的俄罗斯方块游戏的设计与实现
  19. java 姓名_Java生成随机姓名、性别和年龄的实现示例
  20. 微信小程序好看的图文混排文章样式

热门文章

  1. 刷QQ群的VBS脚本
  2. 语音助手究竟是“人工智能”还是“人工智障?
  3. (一)Linux中vi的复制粘贴命令
  4. 【mvn打包】.jar 和 .jar.original的区别
  5. UML图中包含(include)和扩展(extend)关系的区别
  6. QQ资料修改器无法连接封面服务器,qq个性封面图片_新版QQ个人资料修改封面图片的方法...
  7. gcc编译选项-fPIC
  8. 示例解析缓冲区溢出攻击的原理
  9. 三大通信协议(二):IIC通信协议
  10. 八.vue获取dom元素