打印

急!!DSP的SCI进不去中断

[复制链接]
3244|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
MapleSugar|  楼主 | 2017-11-23 11:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
DSP, pi, gp, IO, GPIO
本帖最后由 MapleSugar 于 2017-11-23 14:23 编辑

RXBUF中有数据,但是进不去中断,怎么办?求助各位大神



#include "DSP28x_Project.h"     // Device Headerfile and Examples Include File

// Prototype statements for functions found within this file.
void scib_loopback_init(void);
void scib_fifo_init(void);
void scib_xmit(int a);
void configGPIO(void);
__interrupt void SCIRXINTb_ISR(void);
__interrupt void cpu_timer0_isr(void);
// Global counts used in this example
Uint16 LoopCount=0;
Uint16 ErrorCount;
Uint16 sci_count;
Uint16 ReceiveChar;
Uint16 Char;
unsigned char Navdata[85];

void main(void)
{

        InitSysCtrl();
        configGPIO();
        DINT;
        InitPieCtrl();
        IER = 0x0000;
        IFR = 0x0000;
        InitPieVectTable();

    EALLOW;
    PieVectTable.TINT0 = &cpu_timer0_isr;
    PieVectTable.SCIRXINTB= &SCIRXINTb_ISR;
    EDIS;

    InitScibGpio();
    scib_fifo_init();           // Initialize the SCI FIFO
    scib_loopback_init();  // Initalize SCI for digital loop back

    InitCpuTimers();
    ConfigCpuTimer(&CpuTimer0,90,1000000);

    CpuTimer0Regs.TCR.all = 0x4000;

    IER = 0x101;  // Enable CPU INT
    PieCtrlRegs.PIECTRL.bit.ENPIE = 1;
    PieCtrlRegs.PIEIER1.bit.INTx7 = 1;
    PieCtrlRegs.PIEIER9.bit.INTx3 = 1;     // PIE Group 9, INT3   Receive Navigation information

    EINT;   // Enable Global interrupt INTM
    ERTM;   // Enable Global realtime interrupt DBGM
   
        for(;;)
    {
         

    }

}

void scib_loopback_init()
{
         ScibRegs.SCICCR.all =0x0007;   // 1 stop bit,  No loopback
                                   // No parity,8 char bits,
                                   // async mode, idle-line protocol
        ScibRegs.SCICTL1.all =0x0003;  // enable TX, RX, internal SCICLK,
                                   // Disable RX ERR, SLEEP, TXWAKE
        ScibRegs.SCICTL2.all =0x0003;
        ScibRegs.SCICTL2.bit.TXINTENA =1;
        ScibRegs.SCICTL2.bit.RXBKINTENA =1;
    ScibRegs.SCIHBAUD    =64>>8;
    ScibRegs.SCILBAUD    =64 & 0x00FF;//38400波特率

        ScibRegs.SCICCR.bit.LOOPBKENA =0; // Enable loop back
        ScibRegs.SCICTL1.all =0x0023;     // Relinquish SCI from Reset
}


void scib_xmit(int a)
{
    ScibRegs.SCITXBUF=a;
}


void scib_fifo_init()
{
    ScibRegs.SCIFFTX.all=0xE040;
    ScibRegs.SCIFFRX.all=0x2044;
    ScibRegs.SCIFFCT.all=0x0;

}

void configGPIO(void)
{
        EALLOW;

        GpioCtrlRegs.GPAMUX2.bit.GPIO20 = 0;    //配置为通用I/O口
        GpioCtrlRegs.GPAMUX2.bit.GPIO21 = 0;

        GpioCtrlRegs.GPADIR.bit.GPIO20 = 1;     //作为输出I/O
        GpioCtrlRegs.GPADIR.bit.GPIO20 = 1;

        GpioDataRegs.GPADAT.bit.GPIO20 = 0;
        GpioDataRegs.GPADAT.bit.GPIO21 = 1;


        EDIS;
}

__interrupt void SCIRXINTb_ISR(void)     // SCI-B-RX  Receive Navigation
{

        int i;
        for (i=0;i<16;i++)
                Navdata = ScibRegs.SCIRXBUF.all;

        PieCtrlRegs.PIEACK.all = PIEACK_GROUP9;
}
interrupt void cpu_timer0_isr(void)
{
        ErrorCount++;
        PieCtrlRegs.PIEACK.all = PIEACK_GROUP1;
}

相关帖子

沙发
MapleSugar|  楼主 | 2017-11-23 14:24 | 只看该作者
Help!

使用特权

评论回复
板凳
zhangmangui| | 2017-11-23 22:29 | 只看该作者
看看相关外设的时钟有没有使能

使用特权

评论回复
地板
soodesyt| | 2017-11-23 22:29 | 只看该作者
楼主是怎么查看到sci有数据的?

使用特权

评论回复
5
mnynt121| | 2017-11-23 22:30 | 只看该作者
可以使用查询的方法。

使用特权

评论回复
6
plsbackup| | 2017-11-23 22:30 | 只看该作者
scib_loopback是什么意思?

使用特权

评论回复
7
mnynt121| | 2017-11-23 22:35 | 只看该作者
有可能中断没有开启。

使用特权

评论回复
8
plsbackup| | 2017-11-23 22:35 | 只看该作者
楼主的中断代码在哪配置的

使用特权

评论回复
9
soodesyt| | 2017-11-23 22:35 | 只看该作者
是单步调试吗?

使用特权

评论回复
10
xuerock| | 2019-1-16 16:17 | 只看该作者
//C2000ware
SCI_clearOverflowStatus(SCIA_BASE);
SCI_clearInterruptStatus(SCIA_BASE, SCI_INT_RXFF);

使用特权

评论回复
11
蒋博1026| | 2019-1-21 11:25 | 只看该作者
时钟使能了吗?如果没有使能,也会出现这种情况

使用特权

评论回复
12
狼烟客| | 2019-2-15 11:54 | 只看该作者
1、貌似没见使能SCI时钟;
2、使能SCI接收中断时,没有使用EALLOW对;

使用特权

评论回复
13
hitycy| | 2019-6-13 22:55 | 只看该作者
楼主问题解决了吗?把经验分享一下啊

使用特权

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

本版积分规则

3

主题

5

帖子

0

粉丝