2016-04-20 101 views
0

我对C和嵌入式编程非常新。ATSAM4s8b,如何等待,直到一个USB设备已连接

我只想让我的主线程等到USB设备插入到我的嵌入式设备。

但是,无论我看起来有多困难,我都找不到有关如何检查USB插入的文档或示例。 我正在使用ATSAM4S8B。

编辑:

其实我觉得功能都内置到芯片的U盘,我可以使用爱特梅尔ASF库。

我希望只有一个库函数,我可以打电话来查看usb是否已经连接,但我找不到像这样的东西。

+0

哪种类型的SPI USB:部件号?为什么使用SPI USB而不是嵌入到SoC中的USB? – LPs

+0

没有语言“嵌入式C”(再也没有)。 – Olaf

+1

请查看ASF目录common/services/usb/udc /以获取有关VBUS监视的文档,以便在状态更改时设置回调。但是,这可能很复杂。出于您的目的,可能更容易识别VBUS连接到的I/O引脚,并像读取任何其他I/O引脚一样读取状态。 –

回答

1

有检测USB连接两种方式:

  • 等待USB活动occure和特殊的USB标志在硬件寄存器,如果启动进程启动,这将消防信号。该解决方案取决于您使用的特定芯片和固件烧录到MCU。

  • 使用感应IO引脚。将USB 5V通过1k电阻连接到MCU的引脚。该引脚上的高电平将指示USB已连接。不要忘记使用高价值(> 10k)下拉电阻,当USB断开连接时它将拉低输入。

+0

感谢您的回答, 我试图找到这个标志,但我似乎无法找到关于标志或USB通知的任何事情。 – wootank

相关问题