微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > 关于使用协议栈串口功能的问题

关于使用协议栈串口功能的问题

时间:10-02 整理:3721RD 点击:

请问各方大牛:

     在基于协议栈想把串口0定义在P1口上(协议栈默认在P0口上)。只要把ZTOOL_P1改为ZTOOL_P2吗。我改了好像没有效果,这是为什么呢?

没有?你串口回调在函数怎么写的?还是直接用mt里的串口,自己写的话,宏xMT_TASK,注释掉,不注释的话,去改mt串口回调函数,把软件控制流去掉。

有没有添加  HAL_UART_ISR=2 ?另外您可以参考 https://e2e.ti.com/support/wireless_connectivity/zigbee_6lowpan_802-15-4_mac/f/158/t/169089

  uartConfig.configured   =TRUE;
  uartConfig.baudRate     =HAL_UART_BR_115200;
  uartConfig.flowControl  =FALSE;
  uartConfig.callBackFunc =rxCB;
  HalUARTOpen(0,&uartConfig);

我自己定义的。

我想用的是DMA的模式

一般默认使能了DMA的

void HalUARTInit(void)
{
#if HAL_UART_DMA
  HalUARTInitDMA();
#endif
。。。。。
}

进入 HalUARTInitDMA();里面有段code

#if (HAL_UART_DMA == 1)
  PERCFG &= ~HAL_UART_PERCFG_BIT;    // Set UART0 I/O to Alt. 1 location on P0.
#else
  PERCFG |= HAL_UART_PERCFG_BIT;     // Set UART1 I/O to Alt. 2 location on P1.
#endif

又有

#if (defined ZAPP_P2) || (defined ZTOOL_P2)
#define HAL_UART_DMA  2
#else
#define HAL_UART_DMA  1
#endif
#else
#define HAL_UART_DMA  0
#endif

那我不是只要在预编译的时候加入ZTOOL_P2 就可以了啊?但好像不行

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top