打印
[开发工具]

Proteus是否无法正确仿真STM32的开漏输出

[复制链接]
259|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
elephant00|  楼主 | 2024-5-6 11:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
软件:Proteus 8.16(Build36097)
MCU:STM32F103C8T6,用Proteus库中的STM32F103C8仿真
问题描述:用软件模拟I2C驱动PCF8574,并以Proteus仿真。通过STM32CubeMX将上述MCU的PB8、PB9引脚配置为开漏输出且无内部上/下拉电阻,并将两个引脚分别与PCF8574的SDA与SCL引脚相连。IO口的配置代码如图所示:
时钟线与数据线分别通过2.2K的上拉电阻连接至5V电源(按照STM32F1系列的手册,PB8、9可耐受5V电压),MCU的电源电压配置为3.3V,PCF8574的电源电压配置为5V,仿真电路如图所示
结果发现,时钟线与数据线的逻辑高电平未被上拉至5V,而仅有3.3V,故PCF8574没有响应(按照规格书,该IC的逻辑高电平输入电压应满足Vin>0.7Vcc=3.5V>3.3V)。改用3.3V电源电压驱动PCF8574,发现其SDA无法将数据线拉至逻辑低电平,仿真波形如图所示(读出数据应为0x23):
遂用如下电路图测试:
表明PB8未处于开漏输出状态。不知这是不是Proteus仿真STM32的bug?




使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

917

主题

2481

帖子

4

粉丝