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.

[参考译文] CCS/TM4C1290NCPDT:缺少"tCDCSerInstance sPrivateData"在示例代码和 TivaWare USB 库用户指南中

Guru**** 2527310 points


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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/892632/ccs-tm4c1290ncpdt-missing-tcdcserinstance-sprivatedata-in-example-code-and-tivaware-usb-library-user-s-guide

器件型号:TM4C1290NCPDT

工具/软件:Code Composer Studio

在 USB 示例代码和 TivaWare USB 库用户指南中、在 usbdcdc.h 中的 tUSBDCDCDevice typedef 定义中、结构末尾的 tUSBDCDCDevice 结构缺失

如果我在定义中包含"sPrivateData"、则为"未找到"。  ???

谢谢、Doug

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

    Doug、您好!

     tCDCSerInstance 的定义也在 usbdcdc.h 中:

    //
    //
    //// private
    //
    ////此结构定义
    // CDC 串行设备的私有实例数据和状态变量。 这个结构的内存分配在
    在 USBDCDCInit()上传递的// tUSBDCDCDevice 结构中。
    ////
    *****************
    typedef 结构
    {
    //
    // USB 控制器的基地址。
    //
    uint32_t ui32USBBase;
    
    //
    //与低级 DCD 代码交互的设备信息。
    //
    tDeviceInfo sDevInfo;
    
    //
    //串行接收状态的状态。
    //
    易失性 tCDCState iCDCRxState;
    
    //
    //串行发送状态的状态。
    //
    易失性 tCDCState iCDCTxState;
    
    //
    //串行请求状态的状态。
    //
    volatile tCDCState iCDCRequestState;
    
    //
    //串行中断状态的状态。
    //
    易失性 tCDCState iCDCInterruptState;
    
    //
    //当前待处理的请求。
    //
    volatile uint8_t ui8PendingRequest;
    
    //
    //发送中断请求期间使用的当前中断持续时间。
    //
    uint16_t ui16BreakDuration;
    
    //
    //串行端口的当前线路控制状态。
    //
    uint16_t ui16ControlLineState;
    
    //
    //常规串行状态。
    //
    uint16_t ui16SerialState;
    
    //
    //无法立即处理的任何待处理操作的状态
    //收到时。
    //
    volatile uint16_t ui16DeferredOpFlags;
    
    //
    //上次发送的大小。
    //
    uint16_t ui16LastTxSize;
    
    //
    //当前串行线路编码。
    //
    tLineCoding sLineCoding;
    
    //
    //串行端口接收被阻止。
    //
    易失性 bool bRxLocked;
    
    //
    //串行控制端口被阻止。
    //
    volatile bool bControlLocked;
    
    //
    //设备的连接状态。
    //
    volatile bool bconneced;
    
    //
    //控制端点号,在复合设备中修改。
    //
    uint8_t ui8ControlEndpoint;
    
    //
    //输入端点号,这在复合设备中进行修改。
    //
    uint8_t ui8BulkINEndpoint;
    
    //
    //输出端点号,在复合设备中修改。
    //
    uint8_t ui8BulkOUTEndpoint;
    
    //
    //控制接口的接口编号,在中进行了修改
    //复合设备。
    //
    uint8_t ui8InterfaceControl;
    
    //
    //数据接口的接口编号,在中进行了修改
    //复合设备。
    //
    uint8_t ui8InterfaceData;
    }
    tCDCSerInstance; 

    sPrivateData 是 tUSBDCDCDevice 定义中使用的变量名称。  在尝试使用变量之前、您需要先定义变量的版本。 您如何将其包括在内?

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

    哇、这个定义与 TivaWare 文档中的定义完全不同。 ???  我应该将什么与 TivaWare 2.1.4.178配合使用?

    谢谢。

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

    Doug、您好!

    您能详细说明一下您的意思吗? 您是否从旧版 TivaWare 升级? 您提到的哪些文档与之不同? 您是否查看 过 usbdcdc.h 文件的内容?

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

    哎呀、我错了 Ralph、我把 tCDCSerInstance typedef 与 tUSBDCDCDevice 混淆了。

    道格

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

    您好 Ralph、

    关于您之前问过的 g_sCDCInstance、我不知道、这是在我尝试运行的示例代码中进行的。

    道格

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

    Doug、您好!

    我不记得询问 g_sCDCInstance?