打印

飞思卡尔单片机MC9S12D64同时打开两个串口中断单片机死机

[复制链接]
3400|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
luciatian|  楼主 | 2011-12-1 18:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近用飞思卡尔单片机MC9S12D64同时打开两个串口(串口接收中断),利用232转485模块做485多级通信。发现只接其中任何一路都能正常发送接收,但当同时接上两路时单片机直接死机!请问哪位知道怎么回事,下面是串口初始化程序!
void InitSCI(void)
{
    SCI0BDH=0x00;   //
    SCI0BDL=0x1a;   //12M,28800bps   BAUD=12M/16*BDL
    SCI0CR1=0x14;   //1个起始位,9个数据位,1个停止位
    SCI0CR2=0x2c;
   
    SCI1BDH=0x00;   //
    SCI1BDL=0x1a;    //12M,28800bps   BAUD=12M/16*BDL
    SCI1CR1=0x14;   //1个起始位,9个数据位,1个停止位
    SCI1CR2=0x2c;
    //以下为232转485模块控制
    SCI0_EN;            //串口0使能
    SCI1_EN;            //串口1使能
    SCI0_RX;            //串口0允许接收
    SCI1_RX;            //串口1允许接收
    //以下为多机通信时从机(单片机)判断主机发送的地址时用
    SCI0CR1_M=1;
    SCI0DRH_R8=0;

    SCI1CR1_M=1;
    SCI1DRH_R8=0;

    return;                                
}

相关帖子

沙发
luciatian|  楼主 | 2011-12-5 09:11 | 只看该作者
现象是解决了,在使用SCI的同时,使用了CAN通信和外部中断,关闭外部中断后都正常了,但具体原因不知为何?

使用特权

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

本版积分规则

3

主题

17

帖子

0

粉丝