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

jinghuan hao:
没有?你串口回调在函数怎么写的?还是直接用mt里的串口,自己写的话,宏xMT_TASK,注释掉,不注释的话,去改mt串口回调函数,把软件控制流去掉。
Susan Yang:
有没有添加 HAL_UART_ISR=2 ?另外您可以参考 https://e2e.ti.com/support/wireless_connectivity/zigbee_6lowpan_802-15-4_mac/f/158/t/169089
siyuan sun:
回复 jinghuan hao:
uartConfig.configured =TRUE; uartConfig.baudRate =HAL_UART_BR_115200; uartConfig.flowControl =FALSE; uartConfig.callBackFunc =rxCB; HalUARTOpen(0,&uartConfig);
我自己定义的。
siyuan sun:
回复 Susan Yang:
我想用的是DMA的模式
siyuan sun:
回复 siyuan sun:
一般默认使能了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 就可以了啊?但好像不行
TI中文支持网