打印

TMS320F2802的scia串口接收,重启后,不能接收数据

[复制链接]
1763|30
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
aaroncy79|  楼主 | 2017-7-11 14:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
dirtwillfly| | 2017-7-11 17:08 | 只看该作者
没 遇 到 过。用 示*波 器 或 者 逻 辑 分 析 仪 观*察 一 下,看 时 序 有 什 么 改 变

使用特权

评论回复
板凳
vibra2016| | 2017-7-11 21:09 | 只看该作者
这是串口出什么问题了?

使用特权

评论回复
地板
aaroncy79|  楼主 | 2017-7-12 07:44 | 只看该作者
dirtwillfly 发表于 2017-7-11 17:08
没 遇 到 过。用 示*波 器 或 者 逻 辑 分 析 仪 观*察 一 下,看 时 序 有 什 么 改 变 ...

另一个设备查询命令一直在发,但是TI的2802只要重新烧写,不断电,都一直能接收,只要重新启动,另一个设备查询命令还在发,2802就是收不到数据,还有如果另一设备断电,2802不断电,在上电,2802也是接收不到数据,感觉缓冲区或标志上的问题

使用特权

评论回复
5
aaroncy79|  楼主 | 2017-7-12 09:23 | 只看该作者
看看我的配置
    SciaRegs.SCIFFTX.all= 0xE040;                        //SCIA发送寄存器配置:发送缓冲区复位 + 发送缓冲区增强被使能 + 重新启动发送操作 + 清除TXFFINT标志
    SciaRegs.SCIFFRX.all= 0x206b;                        //SCIA接收寄存器配置:接收缓冲区复位  + 清除TXFFINT标志 + RX FIFO接收缓冲区中断使能 +接收11个字节
    SciaRegs.SCIFFRX.bit.RXFFST = 0;                //FIFO缓冲区为空(做个试验,这个位置写入数据,不影响接收,以后要注意)
    SciaRegs.SCIFFRX.bit.RXFFIL = 11;                //FIFO缓冲区一次接收11个字节,最多16个
    SciaRegs.SCIFFCT.all= 0x0;                                //SCIA缓冲区控制寄存器

        SciaRegs.SCICCR.all = 0x0007;                   //通讯控制寄存器(1 stop bit、No loopback、No parity、8 char bits,异步模式,空闲线协议)

        SciaRegs.SCICTL1.all = 0x0003;                  //SCI控制寄存器1:发送使能 + 接收到的数据存储在SCIRXEMU和SCIRXBUF中

        SciaRegs.SCICTL2.all = 0x0003;                        //SCI控制寄存器2:使能RXRDY/BRKDT中断 + 使能TXRDY中断
        SciaRegs.SCICTL2.bit.TXINTENA = 1;                //使能RXRDY/BRKDT中断
        SciaRegs.SCICTL2.bit.RXBKINTENA = 1;        //使能TXRDY中断

    SciaRegs.SCIHBAUD    = 0x0000;                  //波特率控制寄存器:BRR = 15M/(9600*8)-1 = 194(0x00c2)(注意:所谓9600并不是真的9600,而是接近值)
    SciaRegs.SCILBAUD    = 0x00c2;                        //115200=0x000e;9600=0x00c2;

        SciaRegs.SCICTL1.all = 0x0023;                  //SCI控制寄存器1:SW复位 + 发送使能 + 接收到的数据存储在SCIRXEMU和SCIRXBUF中
        SciaRegs.SCICTL1.bit.RXENA        = 1;                //接收使能
        SciaRegs.SCICTL1.bit.TXENA        = 1;            //发送使能

使用特权

评论回复
6
kingkits| | 2017-7-12 10:36 | 只看该作者
你要确定你的芯片是不是正常启动了

使用特权

评论回复
7
dirtwillfly| | 2017-7-12 12:44 | 只看该作者
aaroncy79 发表于 2017-7-12 07:44
另一个设备查询命令一直在发,但是TI的2802只要重新烧写,不断电,都一直能接收,只要重新启动,另一个设 ...

有你说的这种可能,也有可能是时序或者波形改变了

使用特权

评论回复
8
aaroncy79|  楼主 | 2017-7-14 15:47 | 只看该作者
感谢版主和各位的帮忙,经查,是硬件问题,控制没问题,谢谢

使用特权

评论回复
9
dirtwillfly| | 2017-7-15 11:04 | 只看该作者
aaroncy79 发表于 2017-7-14 15:47
感谢版主和各位的帮忙,经查,是硬件问题,控制没问题,谢谢

使用特权

评论回复
10
minzisc| | 2017-7-16 22:49 | 只看该作者
都重新复位了吗?

使用特权

评论回复
11
minzisc| | 2017-7-16 22:52 | 只看该作者
重新上电之后试试,数据是否发送成功

使用特权

评论回复
12
usysm| | 2017-7-19 22:21 | 只看该作者
代码没有下载成功

使用特权

评论回复
13
htmlme| | 2017-7-19 22:22 | 只看该作者
这个重新复位之后其他的功能正常实现吗?

使用特权

评论回复
14
touser| | 2017-7-19 22:22 | 只看该作者
程序的引导有问题吗?

使用特权

评论回复
15
wwppd| | 2017-7-19 22:23 | 只看该作者
CMD文件的问题吗?

使用特权

评论回复
16
jkl21| | 2017-7-19 22:23 | 只看该作者
你这是没有下载程序,只是仿真而已。

使用特权

评论回复
17
eefas| | 2017-7-19 22:26 | 只看该作者
是函数不能执行了吗?

使用特权

评论回复
18
eefas| | 2017-7-19 22:30 | 只看该作者
是硬件重启吗?

使用特权

评论回复
19
backlugin| | 2017-7-19 22:30 | 只看该作者
这个就是仿真的时候能够使用,下载没有成功。

使用特权

评论回复
20
fengm| | 2017-7-19 22:31 | 只看该作者
数据接收是否有电平。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

30

帖子

0

粉丝