colin工作室
坚韧、向上、善于思考
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
基于STM32、HAL库的PCAL6416AHF I/O扩展器驱动程序设计
@param port: 端口号 (PCAL6416A_PORT0或PCAL6416A_PORT1)* @param port: 端口号 (PCAL6416A_PORT0或PCAL6416A_PORT1)* @param port: 端口号 (PCAL6416A_PORT0或PCAL6416A_PORT1)* @param port: 端口号 (PCAL6416A_PORT0或PCAL6416A_PORT1)* @param mask: 中断掩码 (1=启用中断, 0=禁用中断)原创 2025-04-15 14:08:25 · 214 阅读 · 0 评论 -
基于STM32、HAL库的TCA9539PWR I/O扩展器驱动程序设计
TCA9539PWR是德州仪器(TI)生产的一款16位I/O扩展器,通过I2C接口与微控制器通信。INT -> PC13 (外部中断引脚,可选)A0 -> GND (地址引脚0)A1 -> GND (地址引脚1)16个可配置为输入或输出的GPIO。工作电压:1.65V至5.5V。400kHz快速模式I2C兼容。原创 2025-04-15 14:05:06 · 526 阅读 · 0 评论 -
基于STM32、HAL库的TCA8418RTWR I/O扩展器驱动程序设计
/ pressedKey格式: 0x80(按下标志) | 键码(0-63)#define CFG_GPI_E_CFG 0x40 // GPI事件模式配置。#define CFG_KE_IEN 0x08 // 按键事件中断使能。#define CFG_OVR_FLOW_M 0x20 // 溢出模式。#define CFG_INT_CFG 0x10 // 中断配置。原创 2025-04-15 14:01:49 · 491 阅读 · 0 评论 -
基于STM32、HAL库的PCF8575DBR I/O扩展器驱动程序设计
define PCF8575_I2C_ADDRESS 0x20 // 默认地址 (A2=A1=A0=0)// 示例3: 设置单个引脚状态 (例如设置引脚3为高)A0/A1/A2 -> GND/VDD (设置I2C地址)// 示例2: 读取单个引脚状态 (例如引脚5)// 示例4: 翻转引脚状态 (例如翻转引脚8)* @param pin: 引脚号 (0-15)* @param pin: 引脚号 (0-15)* @param pin: 引脚号 (0-15)原创 2025-04-15 13:58:42 · 284 阅读 · 0 评论 -
基于STM32、HAL库的TCA6408A I/O扩展器驱动程序设计
SDA -------------> I2Cx_SDA (PB7/PB9等)SCL -------------> I2Cx_SCL (PB6/PB8等)A0 -------------> GND/VCC (地址选择)A1 -------------> GND/VCC (地址选择)A2 -------------> GND/VCC (地址选择)INT -------------> GPIO输入引脚(可选)// 配置引脚0为输出,引脚1为输入。原创 2025-04-15 13:54:52 · 309 阅读 · 0 评论 -
基于STM32、HAL库的TCA6424ARGJR I/O扩展器驱动程序设计
1 (P00) -> GPIO0.0 (外部设备)9 (P07) -> GPIO0.7 (外部设备)* @param direction: 方向(0=输出, 1=输入)* @param direction: 方向(0=输出, 1=输入)* @param polarity: 极性(0=正常, 1=反转)* @param polarity: 极性(0=正常, 1=反转)* @retval 中断状态(0=无中断, 1=有中断)原创 2025-04-15 13:44:50 · 287 阅读 · 0 评论 -
基于STM32、HAL库的MCP23017 I/O扩展器驱动程序设计
/ 配置IOCON寄存器: BANK=0, SEQOP=1, DISSLW=1, HAEN=0, ODR=0, INTPOL=0。#define MCP23017_ADDRESS 0x20 // 默认地址(A2=A1=A0=0)* @param directions: 方向掩码(1=输入, 0=输出)* @param port: 端口(PORTA/PORTB)* @param port: 端口(PORTA/PORTB)* @param port: 端口(PORTA/PORTB)原创 2025-04-15 13:40:39 · 510 阅读 · 0 评论 -
基于STM32、HAL库的TCA9555PWR I/O扩展器驱动程序设计
define TCA9555_ADDR_BASE 0x20 // 基础地址 (A0=A1=A2=0)* @param direction: 方向 (0=输出, 1=输入)* @param direction: 方向 (0=输出, 1=输入)* @param polarity: 极性 (0=正常, 1=反转)* @param polarity: 极性 (0=正常, 1=反转)原创 2025-04-15 13:36:17 · 525 阅读 · 0 评论 -
基于STM32、HAL库的PCA9557 I/O扩展器驱动程序设计
@param addr_pins: A2,A1,A0引脚状态 (0-7)* @param inverted: 是否反转 (1=反转, 0=正常)* @param hpca: PCA9557句柄。* @param hpca: PCA9557句柄。* @param hpca: PCA9557句柄。* @param hpca: PCA9557句柄。* @param hpca: PCA9557句柄。* @param pin: 引脚号 (0-7)* @param pin: 引脚号 (0-7)原创 2025-04-15 13:32:38 · 325 阅读 · 0 评论 -
基于STM32、HAL库的MCP23017T I/O扩展器驱动程序设计
/ 默认配置: 顺序操作(SEQOP=0), 禁止地址递增(DISSLW=0), 开漏输出(ODR=0), 极性(INTPOL=0)// DEFVAL = 1, 下降沿。// DEFVAL = 0, 上升沿。if (GPIO_Pin == GPIO_PIN_0) { // 假设MCP23017的INT连接到PA0。// 比较DEFVAL。原创 2025-04-15 13:27:52 · 221 阅读 · 0 评论 -
基于STM32、HAL库的PCF8574 I/O扩展器驱动程序设计
/ 默认所有输出高(准双向口高阻输入状态)* @retval 状态(PCF8574_OK或PCF8574_ERROR)* @retval 状态(PCF8574_OK或PCF8574_ERROR)* @retval 状态(PCF8574_OK或PCF8574_ERROR)* @retval 状态(PCF8574_OK或PCF8574_ERROR)* @retval 状态(PCF8574_OK或PCF8574_ERROR)// 初始化PCF8574 (A0=A1=A2=GND, 地址0x20)原创 2025-04-15 13:23:31 · 307 阅读 · 0 评论 -
基于STM32、HAL库的TCA9535PWR I/O扩展器驱动程序设计
@param direction: 方向(每个位对应一个引脚, 1=输入, 0=输出)1 (A0) ----------> GND/VCC (地址配置)23 (RESET) --------> VCC(通过上拉电阻)20 (INT) ----------> EXTI引脚(可选)4 (P00) ----------> 外设/GPIO。5 (P01) ----------> 外设/GPIO。19 (P17) ----------> 外设/GPIO。// 初始化I2C (在main.c中已初始化)原创 2025-04-15 13:18:16 · 651 阅读 · 0 评论 -
基于STM32、HAL库的PCA9555PW I/O扩展器驱动程序设计
define PCA9555_ADDR_BASE 0x40 // 基础地址 (A2 A1 A0 = 0)PCA9555_SetPinMode(&pca9555, 0, 0);* @retval 状态 (PCA9555_OK/PCA9555_ERROR)* @param config: 配置值 (1=输入, 0=输出)* @retval 引脚状态 (0/1) 或 0xFF (错误)// 初始化PCA9555 (A2=A1=A0=0)原创 2025-04-15 13:15:41 · 529 阅读 · 0 评论
分享