打印
[STM32U5]

OTG 设备状态寄存器的 DEVLNSTS[1:0] 似乎显示了错误的逻辑电平

[复制链接]
230|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
classroom|  楼主 | 2024-10-29 15:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
设计上采用STM32U595VJT6。 MCU的OTG部分在USB设备模式下工作良好。它具有 USB 闪存盘的功能。但是当我从 OTG 设备状态寄存器(地址偏移量为 0x808)检查逻辑电平时,出现了问题。如果USB线插入就可以了,DEVLNSTS[1:0]全为零。但当USB线拔出时,DEVLNSTS[1]为0,DEVLNSTS[0]为1。也就是说USB_D+为0,USB_D-为1。但USB_D+的真实逻辑电平为1(约3.3V),USB_D - 为 0。

我是否误解了什么?

使用特权

评论回复
沙发
夜阑风雨| | 2024-11-23 21:55 | 只看该作者
根据你描述的情况,当USB线拔出时,OTG设备状态寄存器(DEVLNSTS)中的DEVLNSTS[1:0]显示USB_D+为0,USB_D-为1,而实际的逻辑电平却是USB_D+为1,USB_D-为0。这种情况可能表明存在硬件连接问题

使用特权

评论回复
板凳
淡漠安然| | 2024-11-24 02:00 | 只看该作者
检查USB_D+USB_D-的连接是否正确,确保它们没有反接

使用特权

评论回复
地板
暖了夏天蓝了海| | 2024-11-24 03:00 | 只看该作者
确保USB_D+线上有正确的上拉电阻(通常为1.5kΩ),并且没有其他电阻干扰

使用特权

评论回复
5
江河千里| | 2024-11-24 04:00 | 只看该作者
OTG控制器配置,检查OTG控制器的配置,确保其正确识别USB线的插入和拔出状态

使用特权

评论回复
6
一秒落纱| | 2024-11-24 05:00 | 只看该作者
中断处理,确保在USB线拔出时,中断处理程序正确更新DEVLNSTS寄存器的值

使用特权

评论回复
7
一秒落纱| | 2024-11-24 05:00 | 只看该作者
中断处理,确保在USB线拔出时,中断处理程序正确更新DEVLNSTS寄存器的值

使用特权

评论回复
8
远山寻你| | 2024-11-24 06:00 | 只看该作者
读取时序的问题,确保在读取DEVLNSTS寄存器时,USB线状态已经稳定。如果读取时序不正确,可能会导致读取到错误的状态

使用特权

评论回复
9
光辉梦境| | 2024-11-24 07:00 | 只看该作者
寄存器映射,确认DEVLNSTS寄存器的地址偏移量(0x808)是否正确,以及是否有其他寄存器映射到相同地址

使用特权

评论回复
10
三生万物| | 2024-11-24 08:00 | 只看该作者
电源稳定性,确保MCUUSB接口的电源稳定,电压波动可能会影响信号的逻辑电平

使用特权

评论回复
11
别乱了阵脚| | 2024-11-24 09:00 | 只看该作者
使用逻辑分析仪监测USB_D+USB_D-的实际电平,并与DEVLNSTS寄存器的值进行对比

使用特权

评论回复
12
冰春彩落下| | 2024-11-24 10:00 | 只看该作者
逐步调试代码,确保在USB线插入和拔出时,DEVLNSTS寄存器的值正确更新

使用特权

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

本版积分规则

418

主题

2030

帖子

1

粉丝