基于STM32、HAL库的MCP23017 I/O扩展器驱动程序设计

AI 时代程序员必备技能

Claude Code 完整实战,MCP 与子代理工程化落地,让 AI 接管脏活累活

一、简介:

MCP23017是Microchip公司生产的一款16位I/O扩展芯片,通过I2C接口与微控制器通信。主要特性包括:

  • 工作电压:1.8V-5.5V

  • 16个可独立配置的GPIO(分为两个8位端口:PORTA和PORTB)

  • 可配置输入/输出方向

  • 可编程内部上拉电阻

  • 可配置中断输出

  • 400kHz快速模式I2C兼容接口

  • 3个硬件地址引脚,最多可连接8个器件

二、硬件接口:

MCP23017       STM32L4xx
----------------------------
VDD (2)       3.3V
VSS (1)       GND
SCL (12)      PB6/I2C1_SCL
SDA (13)      PB7/I2C1_SDA
A0 (15)       GND (地址000)
A1 (16)       GND (地址000)
A2 (17)       GND (地址000)
RESET (18)    3.3V (通过10k上拉)

三、头文件:

#ifndef MCP23017_H
#define MCP23017_H

#include "stm32l4xx_hal.h"

#define MCP23017_ADDRESS 0x20 // 默认地址(A2=A1=A0=0)

// 寄存器定

AI 时代程序员必备技能

Claude Code 完整实战,MCP 与子代理工程化落地,让 AI 接管脏活累活

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

colin工作室

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值