主题中讨论的其他器件:TM4C123
有人让 TM4C1294或129E 与 TinyUSB 一起工作?
我获得请求类型= 255的断言。
https://github.com/hathach/tinyusb/discussions/1813
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
有人让 TM4C1294或129E 与 TinyUSB 一起工作?
我获得请求类型= 255的断言。
https://github.com/hathach/tinyusb/discussions/1813
您好、Sergio、
我们尚未尝试在 TM4C 器件上实施 TinyUSB、我不熟悉 TinyUSB。 查看该主题、我可以做几个注释:
1) 1)获取 USB 数据表的 NDA 过程只是一个 Web 表、请访问器件数据表上的链接并查看文档、我想您不会对协议要求的内容有任何顾虑、然后您就可以获得完全访问权限。
2) 2)就时钟而言、器件系列之间存在差异。 您可以查看用于 TM4C123和 TM4C129的 USB 的 TivaWare 示例、并查看是否需要更新 TinyUSB 使用的任何 API。
此致、
Ralph Jacobi
大家好,我已经在库中完成了几层函数调用,掌握了一些信息,您能不能建议示例尽可能接近裸机?
我当前的控制器初始化代码如下:
// Configure B0 B1 L6 L7 as "analog": gpio->DIR bit input, ->AFSEL bit reset, ->AMSEL bit set SYSCTL->SRUSB |= BIT(0); // Reset peripheral SYSCTL->SRUSB &= ~BIT(0); SYSCTL->RCGCUSB |= BIT(0); // Enable USB clock volatile uint32_t *SYSCTL_RCC2 = ((volatile uint32_t *)SYSCTL) + (0x70/sizeof(uint32_t)); *SYSCTL_RCC2 &= ~BIT(14); // Enable nonexistent USB PLL / undocumented PHY clock USB0->CC = 0x207; // Enable clock and configure divisor for 60MHz clock USB0->GPCS = 3; // (41C) = 3 USB0->LPMCNTRL &= ~BIT(0); //(362) : reset bit0 USB0->LPMCNTRL = 0; // (362) = 0 if (USB0->EPCISC & BIT(0)) USB0->EPCISC |= BIT(0); // read EPCISC, check PF (power fault) flag, (40C) lsrs #1, and clear PF interrupt if so (write 1 to this bit) volatile uint32_t *USB0_IDVISC = ((volatile uint32_t *)USB0) + (0x44C/sizeof(uint32_t)); if (*USB0_IDVISC & BIT(0)) *USB0_IDVISC |= BIT(0); // read nonexistent IDVISC, check IDVRIS_ID flag, (44C) lsrs #1, and clear condition if so (write 1)
您好、Sergio、
为了 简化和简化 TM4C 器件的使用、我们花费了大量资源来开发 TivaWare 驱动程序库和 USB 库。 除了 极少数出于性能目的而需要硬件级访问以最大限度地减少开销的情况外、我们的长期指导原则是使用久经验证稳定可靠的 TivaWare API。 不支持寄存器级访问的立场是、我们将会投入资源 来有效地支持重新设计现有 API、而不是从头开始。
此致、
Ralph Jacobi