USB编程教程
我试图在裸机系统(无操作系统,无驱动程序)上对 USB2 控制器(EHCI)进行编程。有没有适合初学者的 USB 教程? EHCI 规范对于初学者来说似乎太复杂了。
I was trying to program a USB2 controller(EHCI) on a bare metal system(No OS,No drivers). Are there any USB tutorial available for an absolute beginner ? The EHCI specs seemed to be too complex for a beginner.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
USB Complete 是一本好书,可以给你一个入门的机会。很难找到在线教程。
USB Complete is a good book that will give you a start. Hard to find online tutorials.
在提到的那本书和 http://www.barebox.org/ 之间。从头开始编写(我假设将是一个主机堆栈)将花费非常长的时间。
barebox 是一个多平台引导加载程序。它的功能相当稀疏。
Between that book mentioned and http://www.barebox.org/ . Writing (what I assume will be a host stack) from scratch will take a verrrry looooong timmmmme.
barebox is a multiplatform bootloader. pretty sparse for it's functionality.
我正处于类似的情况,试图为嵌入式裸机系统编写 USB 驱动程序。我发现 Benjamin David Lunt 所著的《USB:通用串行总线》一书是关于该主题的非常有用的教程。它涵盖了为 UHCI、OHCI、EHCI 和 xHCI 控制器编写裸机固件。
I am in a similar situation trying to write a USB driver for an embedded bare metal system. I have found the book "USB: The Universal Serial Bus" by Benjamin David Lunt to be a very useful tutorial on the subject. It covers writing bare metal firmware for UHCI, OHCI, EHCI and xHCI controllers.
根据您的芯片组的具体情况,AMD 文档。
Depending on what exactly your chipset is, AMD documentation.
飞思卡尔论坛上有一些用汇编程序编写的胡言乱语,您可能会在那里找到一些指示:汇编器中的 USB 堆栈 - 疯狂还是天才?
Some nutter on the Freescale forums writing one in assembler, you may find some pointers there: USB Stack in assembler - mad or genius?
对于 AVR USB 控制器,有一个很好的 LUFA 库,其中包含许多 USB 类的示例。还有其他架构的端口,例如 NXP LPC。
http://www.fourwalledcubicle.com/LUFA.php
For AVR USB controllers there is a nice LUFA library with examples for many USB classes. There are also ports for other architectures such as NXP LPC.
http://www.fourwalledcubicle.com/LUFA.php