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

28335 SCIA SCIB不能同时使用问题

    请教下,使用SCIA SCIB做modbus通信,两个口配置及程序均无差别,单独使用其中一个口都可以通信,但是同时使用时,SCIA的SciaRegs.SCIFFRX.bit.RXFFST一直为0,SCIB可以正常通信。两个口均没有使用中断。查看SciaRegs.SCIRXBUF.all也有数,但不知道为什么SciaRegs.SCIFFRX.bit.RXFFST不更新数值,所以就进入不了下一步程序,不知道有遇到过这样问题的同学么?

mangui zhang:

这两个是不冲突  完全可以正常通讯的   我觉得还是你哪儿没配置好

SciaRegs.SCIFFRX.bit.RXFFST一直为0   是收不到上位机发的数吗?

    请教下,使用SCIA SCIB做modbus通信,两个口配置及程序均无差别,单独使用其中一个口都可以通信,但是同时使用时,SCIA的SciaRegs.SCIFFRX.bit.RXFFST一直为0,SCIB可以正常通信。两个口均没有使用中断。查看SciaRegs.SCIRXBUF.all也有数,但不知道为什么SciaRegs.SCIFFRX.bit.RXFFST不更新数值,所以就进入不了下一步程序,不知道有遇到过这样问题的同学么?

hl y:

回复 mangui zhang:

首先感谢你的回答,通过仿真看到"SciaRegs.SCIRXBUF.all"寄存器里有数,可就是SciaRegs.SCIFFRX.bit.RXFFST不变化,这里我的疑惑就是为什么单独通信都没问题,一起通信就不行。我把配置文件发下吧,方便可以帮我看下么?

SciaRegs.SCICCR.all = 0x0007; // 1 stop bit,No loopback,no parity,8 char bits SciaRegs.SCICTL1.all = 0x0001; // Disable TX, RX, internal SCICLK,// Disable RX_ERR, SLEEP, TXWAKE SciaRegs.SCICTL2.all = 0; // fifo mode,they are ignored,no interrupt

SciaRegs.SCIHBAUD = 0x01; // 9600 bps SciaRegs.SCILBAUD = 0xE7;// SciaRegs.SCIHBAUD = 0x00; // 38400 bps// SciaRegs.SCILBAUD = 0x79;

SciaRegs.SCIFFTX.all=0xC000; // disable tx232_int,reset scia_fifo SciaRegs.SCIFFRX.all=0x405F; // disable rx232_int SciaRegs.SCIFFCT.all=0x4000;

SciaRegs.SCICTL1.all =0x0021; // Relinquish SCI from Reset

SciaRegs.SCIFFTX.bit.TXFIFOXRESET = 1; SciaRegs.SCIFFRX.bit.RXFIFORESET = 1;

SCIB也是如此配置的。

赞(0)
未经允许不得转载:TI中文支持网 » 28335 SCIA SCIB不能同时使用问题
分享到: 更多 (0)