TI中文支持网
TI专业的中文技术问题搜集分享网站

【UART问题】调试UART时,通过电脑连接串口,没有任何现象?

使用的编译环境是CCS5.3,用的板子是tmdxevm6678l,使用的程序是论坛上给出的UART例程,在调试UART接口时遇到没有任何现象显示的问题。

我们调试的步骤如下:

1.下图显示的是我们程序运行完后的结果,小助手里没有任何输出数据显示

2.程序想通过UART发送出helloworld。

3.程序做了一些时钟,内存的初始化工作。

4.程序对UART做了一些初始化工作。程序是通过中断方式发送数据的。可是我们不管是使用原程序,用中断发送数据,还是注释掉中断程序,直接发送数据,都没有任何现象显示。

我们还尝试改写了一下keystone uartwrite busy函数,是参考官方给出的例程改的,如上图。因为我们看到手册说THR寄存器是可写的,而RBR寄存器是只读的。原程序是把字符串写到RBR里面。在没有现象显示后,我们看了这个程序,对这里不太理解,以为是这里有问题,但是改了还是没有现象。

我们的板子是下图这么连接的

下载这个程序的说明里,说是可以直接在开发板上编译运行,不知道我们哪里操作不对,为什么一点现象都没有???

Shine:

COM_SEL1管脚按下图设置。 在KeyStone_1_UART_STK_User's_Guide.doc文档里有说明。

user4962317:

回复 Shine:

首先谢谢您的回复,我们是按照文档说明连接了跳帽,但是uart串口没有输出啊,今天又跑了官方的platform_test程序,发现可以从串口接收数据,但是无法发送,调整跳帽,通过usb观察串口小助手也是同样的现象,接不到uart发来的任何东西。这可能是什么原因?请您指导

Shine:

回复 user4962317:

完全按照手册里的步骤一步步做的吗?例程有没有修改过?

是新买的板子吗?照理说,STK里的例程都是在EVM板上跑过的,完全按照做的话,不会有问题。

user4962317:

回复 Shine:

我们的串口线一端接到PC上,一端甩了三根杜邦线接到com1上com_sel1的3和5,4和6都用跳帽连上。具体如下图(在下一个回复)。

开发板大概有两三年了。不是新的。之前我们没有用过。

官方例程,是ti:/…platform文件夹下的test工程,未做任何改变。

但是只能接不能发。

user4962317:

回复 Shine:

上图是只能接不能发的现象。下图是我们板子上跳帽的连接。

Shine:

回复 user4962317:

测一下DSP_UARTTXD测试点是否有数据发出?

user4962317:

回复 Shine:

您好,

谢谢您的答复,之前的程序不知道改动了哪里,我们又重新导入了开发例程,发现可以与pc串口进行收发通信,但是仍然存在两点疑问,

1.我们是用pattern模块,向pc发送0x55。发送0x55的时候误码很多。如下图,

我们再尝试发0xff,pc串口什么都没收到,发送0xaa时,全是误码。发送0xaa和0x55时,串口上有时能收到有时收不到,长短不一,中间似乎有丢包。这种现象是为什么?

2.我理解的uart向外发送有三种方式,用dma,用中断响应,和dsp内核直接发送。直接发送的时候,在uart write函数中,通过判断thre是空时,就将待发送数据写thr寄存器,然后thr将值搬入tsr寄存器,之后就直接发送了?这样理解对吗?还是说会有延迟,或者有其他触发?

赞(0)
未经允许不得转载:TI中文支持网 » 【UART问题】调试UART时,通过电脑连接串口,没有任何现象?
分享到: 更多 (0)