微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > 射频无线通信设计 > TI zstack的sampleApp工程中如何同时使用两个串口?

TI zstack的sampleApp工程中如何同时使用两个串口?

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


问题描述:小弟再做一个DIY,希望使用zigbee模块的透明传输作为通信媒介,接收端需要同时使用两个串口UART0和UART1分别控制两个不同的对象,但发现网上资料很有限主要见于这两个帖子http://bbs.eeworld.com.cn/thread-298625-1-1.html和http://blog.csdn.net/shiwaxinbin/article/details/9004256方法一样也很简单:都是使UART0使用DMA方式UART1使用ISR模式。但是我在复现两个帖子所述方法时,UART0能够正常使用、UART1依然没有反应。搞了两三天有点迷茫,希望做过同时使用两个串口通信的哥们能够帮小弟解答一下疑惑,谢谢!
PS:协议栈版本2.5.1a

串口你预编译了吗

谢谢你的解答,问题找到了。是我对忽略了引脚映射,以为P0.4和P0.5是UART1的发射和接收端口其实不然,由于定义HAL_UART_ISR =2了,那么发送和接收引脚变为了P1.6和P1.7
#if (HAL_UART_ISR == 1)
#define HAL_UART_PERCFG_BIT 0x01 // USART0 on P0, Alt-1; so clear this bit.
#define HAL_UART_Px_RX_TX 0x0C // Peripheral I/O Select for Rx/Tx.
#define HAL_UART_Px_RTS 0x20 // Peripheral I/O Select for RTS.
#define HAL_UART_Px_CTS 0x10 // Peripheral I/O Select for CTS.
#else
#define HAL_UART_PERCFG_BIT 0x02 // USART1 on P1, Alt-2; so set this bit.
#define HAL_UART_Px_RTS 0x20 // Peripheral I/O Select for RTS.
#define HAL_UART_Px_CTS 0x10 // Peripheral I/O Select for CTS.
#define HAL_UART_Px_RX_TX 0xC0 // Peripheral I/O Select for Rx/Tx.
#endif

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

网站地图

Top