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.

[参考译文] LAUNCHCC3220MODASF:需要使用 UART1

Guru**** 2585275 points
Other Parts Discussed in Thread: CC3220SF

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/718828/launchcc3220modasf-need-to-use-uart1

器件型号:LAUNCHCC3220MODASF
主题中讨论的其他器件:CC3220SF

我需要在第3+4页上使用 UART1 (GPIO10+11) SWRS208B 第14页。 network_terminal.c 调用初始化 UART0的 InitTerm ()。

Board.h 指示仅提供2个 UART:

#define Board_UART0                 CC3220SF_LAUNCHXL_UART0
#define Board_UART1                 CC3220SF_LAUNCHXL_UART1

我想使用 UART1。

我正在查看 InitTerm ()以获得初始化 UART1.UART_Handle InitTerm (void)的指导


   UART_Params        uartParams;

   UART_INIT();
   UART_PARAMS_INIT (uartParams);

   uartParams.writeDataMode   = UART_DATA_BINARY;
   uartParams.readDataMode    = UART_DATA_BINARY;
   uartParams.readReturnMode  = UART_return_full;
   uartParams.readEcho        = UART_ECHO_OFF;
   uartParams.baudrate        = 115200;

   uartHandle = UART_OPEN (Board_UART0、uartParams);
   /*从 LPDS 依赖项中删除 UART 接收*/
   UART_CONTROL (uartHandle、UART_CMD_RXDISABLE、空);

   return (uartHandle);

我可以创建一个新的全局变量来保存句柄、但在哪里配置引脚(表4-4 swers206b 第19页)以及如何选择 GPIO10+11 (引脚3+4)。

   uart1Handle = UART_OPEN (Board_UART1、&uartParams);

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

    您好、Gary、

    要为 Board_UART1配置引脚、您需要转到文件 CC3220SF_LAUNCHXL.c 并修改名为 uartCC3220SHWAttrs 的 UART 配置结构。 uartCC3220SHWAttrs 的第二个条目对应于 Board_UART1、因此请确保修改此条目。  

    引脚的宏在  UARTCC32XX.h 中定义  GPIO10和 GPIO11的相应引脚分别为引脚1和 PIN2 (此信息可在数据表中找到)、因此对于您的情况、您可以使用宏  UARTCC32XX_PIN_01_UART1_TX 和  UARTCC32XX_PIN_02_UART1_RX

    如果您对此有任何其他问题、请告诉我。

    此致、
    Kristen

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

    看起来我们不在同一页上。

    在 CC3220SF_LAUNCHXL.c 中找不到名为 uartCC3220SHWAttrs 的结构 我看到的只是每种外设类型上的名称枚举。
    例如、对于 UART:
    /*!
    *@def CC3220SF_LAUNCHXL_UARTName
    *@CC3220SF_LAUNCHXL 开发板上 UART 的简要枚举
    *
    typedef 枚举 CC3220SF_LAUNCHXL_UARTName{
    CC3220SF_LAUNCHXL_UART0 = 0、
    CC3220SF_LAUNCHXL_UART1、

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

    您已打开 CC3220SF_LAUNCHXL.h 而不是 CC3220SF_LAUNCHXL.c 文件。 枚举 CC3220SF_LAUNCHXL_UARTName 位于 H 文件中。

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

    谢谢你。

    我可以坚持使用第7+8页的 UART1、但 UART0似乎分配给了第55+57页、这些是接地端(表4-4和图4-2)??

    /* UART 配置结构*/
    CONST UARTCC32XX_HWAttrsV1 uartCC3220SHWAttrs[CC3220SF_LAUNCHXL_UARTCOUNT]={
       {
           baseAddr = UARTA0_BASE、
           .intNum = INT_UARTA0、
           .intPriority =(~0)、
           .FlowControl = UARTCC32XX_FLOWCTRL_NONE、
           .ringBufPtr = uartCC3220SRingBuffer[CC3220SF_LAUNCHXL_UART0]、
           .ringBufSize = sizeof (uartCC3220SRingBuffer[CC3220SF_LAUNCHXL_UART0])、
           rxPin = UARTCC32XX_PIN_57_UART0_RX、
           txPin = UARTCC32XX_PIN_55_UART0_TX、
           ctsPin = UARTCC32XX_PIN_Unassigned、
           rtsPin = UARTCC32XX_PIN_Unassigned、
           errorFxn =空
       }、
       {
           baseAddr = UARTA1_base、
           .intNum = INT_UARTA1、
           .intPriority =(~0)、
           .FlowControl = UARTCC32XX_FLOWCTRL_NONE、
           .ringBufPtr = uartCC3220SRingBuffer[CC3220SF_LAUNCHXL_UART1]、
           .ringBufSize = sizeof (uartCC3220SRingBuffer[CC3220SF_LAUNCHXL_UART1])、
           rxPin = UARTCC32XX_PIN_08_UART1_RX、
           txPin = UARTCC32XX_PIN_07_UART1_TX、
           ctsPin = UARTCC32XX_PIN_Unassigned、
           rtsPin = UARTCC32XX_PIN_Unassigned、
           errorFxn =空
       }
    };

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

    有关 LaunchPad 上的引脚分配、请查看《CC3220MODASx Launchpad 硬件指南》的第1.4.8节。 您将看到引脚55和引脚57分别连接到 GPIO1和 GPIO2。

    此致、
    Kristen
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    找不到、手动 ID 是什么???? SWRU463B
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我已经按照您的指示设置了 UART1、我可以确定传输应该显示在 CC3220MODASF Launchpad 的 P4-1上(预 WCS208原理图)。 但在这里放置示波器探头不会发现任何活动。

    _________________________________________________________

    UART_PRINT ("网络终端-测试 UART1和 RS438接口\n");

       char str1[]={0x55、0x55、0x55、0x55、0x55、0x55、 0x55、0x55、0x55、0x55、0x55};
       char str2[]="测试\n";
       while (1)       // GAA 16Aug2018测试 UART1和 RS438接口
       {
           GPIO_WRITE (Board_GPIO_LED0、Board_GPIO_LED_OFF);

           usleep (250000);//单位:秒250ms

           RS485Write (str2);

           GPIO_WRITE (Board_GPIO_LED0、Board_GPIO_LED_ON);

           usleep (250000);//单位:秒250ms

           RS485Write (str2);
           UART_PRINT (str2);

       }

    _________________________________________________________

    空 RS485Write (const char * str)

       GPIO_WRITE (Board_GPIO_RS485EN、Board_GPIO_LED_OFF);       // GAA 15Aug2018

    #ifdef UART_NONPOLLING
       UART_WRITE (uart1Handle、str、strlen (str));这未定义、我们将进行默认轮询
    其他
       uart_writePolling (uart1Handle、str、strlen (str));
    #endif

       GPIO_WRITE (Board_GPIO_RS485EN、Board_GPIO_LED_ON);// GAA 15Aug2018

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

    其他
    #include

    UARTCC32XX_Object uartCC3220SObjects[CC3220SF_LAUNCHXL_UARTCOUNT];
    unsigned char uartCC3220SRingBuffer[CC3220SF_LAUNCHXL_UARTCOUNT][32];

    /* UART 配置结构*/
    CONST UARTCC32XX_HWAttrsV1 uartCC3220SHWAttrs[CC3220SF_LAUNCHXL_UARTCOUNT]={
       {
           baseAddr = UARTA0_BASE、
           .intNum = INT_UARTA0、
           .intPriority =(~0)、
           .FlowControl = UARTCC32XX_FLOWCTRL_NONE、
           .ringBufPtr = uartCC3220SRingBuffer[CC3220SF_LAUNCHXL_UART0]、
           .ringBufSize = sizeof (uartCC3220SRingBuffer[CC3220SF_LAUNCHXL_UART0])、
           rxPin = UARTCC32XX_PIN_57_UART0_RX、
           txPin = UARTCC32XX_PIN_55_UART0_TX、
           ctsPin = UARTCC32XX_PIN_Unassigned、
           rtsPin = UARTCC32XX_PIN_Unassigned、
           errorFxn =空
       }、
       {
           baseAddr = UARTA1_base、
           .intNum = INT_UARTA1、
           .intPriority =(~0)、
           .FlowControl = UARTCC32XX_FLOWCTRL_NONE、
           .ringBufPtr = uartCC3220SRingBuffer[CC3220SF_LAUNCHXL_UART1]、
           .ringBufSize = sizeof (uartCC3220SRingBuffer[CC3220SF_LAUNCHXL_UART1])、
    //       .rxPin = UARTCC32XX_PIN_08_UART1_RX、     GAA 16Aug2018
    //       .txPin = UARTCC32XX_PIN_07_UART1_TX、     GAA 16Aug2018
           rxPin = UARTCC32XX_PIN_02_UART1_RX、
           txPin = UARTCC32XX_PIN_01_UART1_TX、
           ctsPin = UARTCC32XX_PIN_Unassigned、
           rtsPin = UARTCC32XX_PIN_Unassigned、
           errorFxn =空
       }
    };