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

TMS320F28377S: 配置SCI、使用FIFO进行发送数据,但是TXD引脚上并没有数据和高低电平变化,一直为高电平是为什么?

Part Number:TMS320F28377S

下面是我用仿真器查看到的,SCITXBUF中的数据0x92正是我想发送的数据。但是使用逻辑分析仪对TXD引脚进行抓取,一直为高电平无变化。能否请大家帮忙看看是什么问题。

附SCIc的配置图:

ZHUANG TIAN:

可以参考我的配置,下面是可以的

SciaRegs.SCIFFTX.all=0xE040; SciaRegs.SCIFFRX.all=0x204F; SciaRegs.SCIFFCT.all=0x0;

SciaRegs.SCICCR.all =0x0007; // 1 stop bit, No loopback SciaRegs.SCICTL1.all =0x0003; // enable TX, RX, internal SCICLK, // Disable RX ERR, SLEEP, TXWAKE SciaRegs.SCICTL2.all =0x0003; SciaRegs.SCICTL2.bit.TXINTENA =1; SciaRegs.SCICTL2.bit.RXBKINTENA =1;

//  9600 baud SciaRegs.SCIHBAUD.all =0x0001;  SciaRegs.SCILBAUD.all =0x0087;

SciaRegs.SCICTL1.all =0x0023; 

,

Taeho:

谢谢,我刚刚发现了问题所在:TXSHF上的数据还未完全发送完成,我就把发送使能关闭了,导致发送的数据异常。

但是如何判断TXSHF上的数据发送完成了呢?比如我发送的数据为0x8A,FIFO->TXSHF非常快,但是TXSHF会按照配置的波特率依次串行输出01010001,如何判断TXSHF已经将01010001全部发送完成了呢?

,

ZHUANG TIAN:

有相应的标志位,看看数据手册和官方例程

,

Taeho:

我在手册中找到了TXEMPTY,可以代表FIFO和TXSHF为空,但是对于我来说,这个太慢了,需要我下一个周期才能查询到TXEMPTY = 1。但是实际上在下一个周期之前就已经把数据都发送完了。我好像没有在手册上看到TXSHF为空时的中断标志位?您有找到吗?

赞(0)
未经允许不得转载:TI中文支持网 » TMS320F28377S: 配置SCI、使用FIFO进行发送数据,但是TXD引脚上并没有数据和高低电平变化,一直为高电平是为什么?
分享到: 更多 (0)