USB充电器与/没有枚举

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
5个帖子/ 0新
最后一篇
matthieuw.
离线
最后一次露面:4个月2周前
加入:2015-11-20 14:55
USB充电器与/没有枚举

嗨对话框,
我正在研究一个实施DA14681的定制董事会,
我的系统包括狮子电池和USB CDC接口。
因此,我使用USB枚举和充电器。
但是,在没有初始的USB电缆(例如,手机充电器)时,我的系统在枚举或暂定枚举后崩溃,因此电池未充电。
我应该在USB CDC回调中有一些中断吗?
谢谢你的帮助。

设备:
nv_dialog.
离线
最后一次露面:4个月1周前
职员
加入:2015-07-15 14:58


嗨mathew.

我们在Prodk上测试了这种情况。
我们使用了USB_CDC示例,就像最新SKD v.1.0.10.1072中的框中一样。
该示例实现了CDC串行,并为电池充电(如果存在)。
我们将锂电池连接到子板底部的按钮电池导线,以验证充电。
我们用:

  • 墙壁充电器,
  • 使用所有引脚的笔记本电脑USB端口并允许枚举
  • 没有枚举的笔记本电脑USB端口(仅连接VBUS / GND)


在所有情况下,操作都是正确的,并且没有观察到崩溃或电池充电故障。
您不需要在CDC中进行任何中断。
所有内容都在充电器和USB代码中处理。

如果我们的理解是正确的,您在您的董事会上有此问题,请正确?
如果是这种情况,您可以使用对话框Prodk尝试同一方案吗?

请检查设计中使用的选修设计和连接器。
USB连接需要几种限制。
如果您使用某种磨砂,请注意,符合USB标准,VBUS和GND引脚必须比D + / D长2毫米 - 以便首先连接。最后(在D + / D之前)进行连接。)符合ESB和USB设计要求。
在没有GND的情况下连接D + / D-和VBU的情况下,硅的ESD保护将启动和OU可能会观察系统的复位甚至暂时禁用USB子系统。

剪相:CDC示例在1.0.10.1072 SDK中没有问题,CDC实施或充电没有问题。
在SDK 1.0.8中,CDC中有错误固定在拔下设备时触发,这将导致系统崩溃。
这是在1.0.10 SDK中修复的。
我们建议您搬到1.0.10 SDK,因为它包括错误修复和改进。

此致。

matthieuw.
离线
最后一次露面:4个月2周前
加入:2015-11-20 14:55
嗨对话框,

嗨对话框,
我将代码迁移到SDK10,没有改进,
但是,我确实检查了USB_CDC代码,似乎固件块在等待USB的时候在任务开始时配置,
删除此循环似乎可以在我的情况下为USB,没有枚举。
谢谢你的帮助。

nv_dialog.
离线
最后一次露面:4个月1周前
职员
加入:2015-07-15 14:58
嗨mathieuw。

嗨mathieuw。

你删除了哪些条件?

巫术是有原因的。删除它们是不安全的。

CNA你发布了代码片面吗?

Br / Nikos V.

matthieuw.
离线
最后一次露面:4个月2周前
加入:2015-11-20 14:55
亲爱的尼科斯,

亲爱的尼科斯,
我不知道为什么,但System_charger启动USB CDC任务,而枚举则为枚举。

这是循环我在USB_CDC任务中发表评论,因为任务不等待通知并重新执行,一切都似乎很好。

而(1){
......

/ *等待配置* /
// whis((usbd_getstate()&(usb_stat_configured | usb_stat_suspended))!= usb_stat_configured)
// usb_os_delay(10);

此致
Matthieu.