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.

[参考译文] TM4C1290NCZAD:从 EK-TM4C1294NCPDT 芯片移植 CDC 串行 USB 通信示例

Guru**** 674950 points
Other Parts Discussed in Thread: EK-TM4C1294XL, TM4C1290NCZAD, SYSBIOS
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1074101/tm4c1290nczad-porting-the-cdc-serial-usb-communication-example-from-the-ek-tm4c1294ncpdt-chip

部件号:TM4C1290NCZAD
“线程”中讨论的其它部件:EK-TM4C1294XLSysBIOSDK-TM4C129X

您好,

我有一个 TI EK-TM4C1294XL Launchpad,我尝试了使用 TI-RTOS 的 TivaWare 的 USB 串行设备示例项目。



如果我将其编程到微控制器上,它工作正常,我会看到在 PC 上的虚拟 COM 端口上定期发送的文本。
但是,在我们开发的板上,我们有一个 TM4C1290NCZAD 微控制器,我现在想拥有完全相同的微控制器
我们定制板上的功能。  

我在构建属性中更改了 MCU,我拥有正确的 MCU cmd 文件。
在预定义中,我将 MCU 更改为 part_TM4C1290NCZAD
在 TM4C1294XL.c 文件中,我在 initEMAC 函数中注释了2行,因为未定义 GPIO PF0_EN0LED0,但不会以任何方式调用此函数

// GPIOPinConfigure (GPIO_PF0_EN0LED0);/* EK_TM4C1294XL_USR_D3 */
// GPIOPinConfigure (GPIO_PF4_EN0LED1);/* EK_TM4C1294XL_USR_D4 */


我可以无错误地生成代码,但我收到了一些有关1294XL 的警告,但我没有收到这些警告



如果我将此代码放在1290NCZAD 上并启动它,Windows 将向我写入它是一个无法识别的 USB 设备,并且在“设备管理器”中看到“未知 USB 设备(设备描述符请求失败)”



它不显示为 COM 端口。

主板上的 USB 正在工作,因为其他人编写了一些没有 TI-RTOS 的驱动程序,它可以回应我发送给主板的内容。

如果我将这些行添加到开头调用的 void EK_TM4C1294XL_initGeneral (void)函数中,则我将获得一个虚拟 COM 端口
PC 上的一切看起来都很好,但我无法从主板接收任何内容,也无法从 PC 接收任何内容

USBClockEnable (USB0_base,8,USB_clock _internal);


SystlVCOGet (sysctl_Xtal_12MHz,&ui32PLLRate);
USBDCDFeatureSet (0,USBLIB_Feature_CPUCLK,&ui32SysClock);
USBDCDFeatureSet (0,USBLIB_Feature_USBPLL,ui32PLLRate);


它将留在这里:
/*在设备未连接到 USB 时阻止*/
USBCDCDCD_waitForConnect (BIOS_WAK_FORever);

然后转到深于 SysBIOS 的 AllLocked 部分。



版本:
tirtos_tivac_2_16_00_08
蒂瓦韦尔_C_Series-2.1.71b
CCS: 11.1.0.00011  
Windows 10电脑

定制板上的 XDS200 USB 调试器

两个主板上的 USB 针脚相同。

如果有人建议我如何将这个简单的例子移植到1290NCZAD,我会非常高兴,因为我无法使它发挥作用。

提前感谢!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,盖尔利,

    您是否曾尝试使用 DK-TM4C129X 文件夹中的示例,而不是从 EK-TM4C129XL 文件夹移植? 这是我们的开发人员套件,其中包含一个 BGA 设备。 它是一个超集设备,但代码在您的 TM4C1290NCZAD 上应该可以正常工作。

    此致,

    拉尔夫·雅各比

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,拉尔夫,

    非常感谢您的快速解决方案。 我也尝试了这个示例项目,但结果与 PC 说我有一个未知的 USB 设备,描述符请求失败的方式相同。 我用示例项目将 CPU 从129x 更改为1290NCZAD,并删除了 LCD 的初始化,同时也配置了我不需要的引脚配置(仅 USB 引脚)。 现在,编译器绝不是一种方式。 原稿是用5.2.6编译的,对于1290,我必须选择20.2.6。 我不知道这是否是一个问题。

    此致
    格尔利

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,盖尔利,

    是否已尝试安装最新的 USB 驱动程序?

    如果没有,请从 https://www.ti.com/tool/SW-TM4C 下载我们最新的蒂瓦瓦尔 SDK ,并手动安装到路径 [Install Path]\蒂 瓦瓦尔_C_Series-2.2.0.295\windows_drivers

    这些驱动程序已在2.2.0中更新,以支持 Windows 10。

    此致,

    拉尔夫·雅各比

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    哈洛·拉尔夫

    昨天我设法解决了这个问题。 我再次使用了 EK-TM4C1294XL 的演示项目,但我认识到我们的主板具有12MHz Crystal,EVK 具有25MHz,所以我不得不在 SysBIOS 中更改,现在它工作正常。
    但仍然感谢您的帮助和努力,我对此表示赞赏!

    此致
    格尔利

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,盖尔利,

    我看到,是 的,这肯定会解释这个问题! 很高兴您能找到它。

    此致,

    拉尔夫·雅各比