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.
你好!我想在3.0版本协议栈ZNP工程下实现串口UART 通信,ZNP默认情况下是spi通信,请问我怎样设置实现串口UART通信?需要修改/添加宏定义嘛?
谢谢!
谢谢你的答复,我按照你的修改了,串口能够接收数据,串口打印不出来数据。
我在处理接串口收数据 void MT_UartProcessZToolData ( uint8 port, uint8 event ) 函数中,添加 HalUARTWrite (port, &ch, 1)一个串口打印功能,让接收的串口数据再串口打印出来,但是串口打印不出来数据。添加的函数如图注释部分所示。
在这个函数下修改
void InitBoard( uint8 level )
{
if ( level == OB_COLD )
{
// IAR does not zero-out this byte below the XSTACK.
*(uint8 *)0x0 = 0;
// Interrupts off
osal_int_disable( INTS_ALL );
// Check for Brown-Out reset
ChkReset();
#if defined CC2531ZNP
znpCfg1 = ZNP_CFG1_UART;
#elif defined CC2530_MK
znpCfg1 = ZNP_CFG1_SPI;
znpCfg0 = ZNP_CFG0_32K_OSC;
#else
znpCfg1 = 0; // 这边修改成这个
znpCfg0 = P1_2;
// Tri-state the 2 CFG inputs after being read (see hal_board_cfg_xxx.h for CFG0.)
P1INP |= BV(2);
P2INP |= BV(0);
#endif
}
else // !OB_COLD
{
/* Initialize Key stuff */
HalKeyConfig(HAL_KEY_INTERRUPT_DISABLE, OnBoard_KeyCallback);
}
}
static void npInit(void)
{
if (ZNP_CFG1_UART == znpCfg1)
{
halUARTCfg_t uartConfig;
uartConfig.configured = TRUE;
uartConfig.baudRate = ZNP_UART_BAUD;
#ifdef ZNP_ALT
uartConfig.flowControl = FALSE; // 修改成这个
#else
uartConfig.flowControl = FALSE; // 修改成这个
#endif
uartConfig.flowControlThreshold = HAL_UART_FLOW_THRESHOLD;
uartConfig.rx.maxBufSize = HAL_UART_RX_BUF_SIZE;
uartConfig.tx.maxBufSize = HAL_UART_TX_BUF_SIZE;
uartConfig.idleTimeout = HAL_UART_IDLE_TIMEOUT;
uartConfig.intEnable = TRUE;
uartConfig.callBackFunc = npUartCback;
HalUARTOpen(HAL_UART_PORT, &uartConfig);
MT_UartRegisterTaskID(znpTaskId);
}
可以加我的QQ:181408650,讨论