This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

仿真器只能连接一半



编译 没有报错,这是怎么回事?

  • 从你的截图看不出什么问题,请问你说的仿真器只能连接一半是什么意思?详细说明下你的问题

  • 上面是正常情况;

    void InitECapture()
    {

    ECap1Regs.ECEINT.all = 0x0000; // Disable all capture interrupts
    ECap1Regs.ECCLR.all = 0xFFFF; // Clear all CAP interrupt flags
    ECap1Regs.ECCTL1.bit.CAPLDEN = 0; // Disable CAP1-CAP4 register loads
    ECap1Regs.ECCTL2.bit.TSCTRSTOP = 0; // Make sure the counter is stopped

    // Configure peripheral registers
    ECap1Regs.ECCTL2.bit.CONT_ONESHT = 1; // One-shot
    ECap1Regs.ECCTL2.bit.STOP_WRAP = 3; // Stop at 4 events
    ECap1Regs.ECCTL1.bit.CAP1POL = 1; // Falling edge
    ECap1Regs.ECCTL1.bit.CAP2POL = 0; // Rising edge
    ECap1Regs.ECCTL1.bit.CAP3POL = 1; // Falling edge
    ECap1Regs.ECCTL1.bit.CAP4POL = 0; // Rising edge
    ECap1Regs.ECCTL1.bit.CTRRST1 = 1; // Difference operation
    ECap1Regs.ECCTL1.bit.CTRRST2 = 1; // Difference operation
    ECap1Regs.ECCTL1.bit.CTRRST3 = 1; // Difference operation
    ECap1Regs.ECCTL1.bit.CTRRST4 = 1; // Difference operation
    ECap1Regs.ECCTL2.bit.SYNCI_EN = 1; // Enable sync in
    ECap1Regs.ECCTL2.bit.SYNCO_SEL = 0; // Pass through
    ECap1Regs.ECCTL1.bit.CAPLDEN = 1; // Enable capture units

    // ECap1Regs.ECCTL2.bit.TSCTRSTOP = 1; // Start Counter
    // ECap1Regs.ECCTL2.bit.REARM = 1; // arm one-shot
    // ECap1Regs.ECCTL1.bit.CAPLDEN = 1; // Enable CAP1-CAP4 register loads
    // ECap1Regs.ECEINT.bit.CEVT4 = 1; // 4 events = interrupt

    }

    如果把 后4条加上去,就是连接一半的情况。

    map 文件如下,堆栈已经设成0x100

    ******************************************************************************
    TMS320C2000 Linker PC v6.1.0
    ******************************************************************************
    >> Linked Thu Sep 11 14:26:37 2014

    OUTPUT FILE NAME: <F28027.out>
    ENTRY POINT SYMBOL: "_c_int00" address: 00008813


    MEMORY CONFIGURATION

    name origin length used unused attr fill
    ---------------------- -------- --------- -------- -------- ---- --------
    PAGE 0:
    BEGIN 00000000 00000002 00000002 00000000 RWIX
    RAMM0 00000050 000003b0 000000c3 000002ed RWIX
    PRAML0 00008000 00000fff 0000096e 00000691 RWIX
    IQTABLES 003fe000 00000b50 00000000 00000b50 RWIX
    IQTABLES2 003feb50 0000008c 00000000 0000008c RWIX
    IQTABLES3 003febdc 000000aa 00000000 000000aa RWIX
    BOOTROM 003ff27c 00000d44 00000000 00000d44 RWIX
    RESET 003fffc0 00000002 00000000 00000002 RWIX

    PAGE 1:
    BOOT_RSVD 00000002 0000004e 00000000 0000004e RWIX
    RAMM1 00000400 00000400 00000100 00000300 RWIX
    DEV_EMU 00000880 00000105 00000004 00000101 RWIX
    SYS_PWR_CTL 00000985 00000003 00000003 00000000 RWIX
    FLASH_REGS 00000a80 00000060 00000008 00000058 RWIX
    CSM 00000ae0 00000010 00000010 00000000 RWIX
    ADC_RESULT 00000b00 00000020 00000020 00000000 RWIX
    CPU_TIMER0 00000c00 00000008 00000008 00000000 RWIX
    CPU_TIMER1 00000c08 00000008 00000008 00000000 RWIX
    CPU_TIMER2 00000c10 00000008 00000008 00000000 RWIX
    PIE_CTRL 00000ce0 00000020 0000001a 00000006 RWIX
    PIE_VECT 00000d00 00000100 00000100 00000000 RWIX
    COMP1 00006400 00000020 00000011 0000000f RWIX
    COMP2 00006420 00000020 00000011 0000000f RWIX
    EPWM1 00006800 00000040 00000040 00000000 RWIX
    EPWM2 00006840 00000040 00000040 00000000 RWIX
    EPWM3 00006880 00000040 00000040 00000000 RWIX
    EPWM4 000068c0 00000040 00000040 00000000 RWIX
    ECAP1 00006a00 00000020 00000020 00000000 RWIX
    GPIOCTRL 00006f80 00000040 00000040 00000000 RWIX
    GPIODAT 00006fc0 00000020 00000020 00000000 RWIX
    GPIOINT 00006fe0 00000020 0000000a 00000016 RWIX
    SYSTEM 00007010 00000020 0000001f 00000001 RWIX
    SPIA 00007040 00000010 00000010 00000000 RWIX
    SCIA 00007050 00000010 00000010 00000000 RWIX
    NMIINTRUPT 00007060 00000010 00000010 00000000 RWIX
    XINTRUPT 00007070 00000010 00000010 00000000 RWIX
    ADC 00007100 00000080 00000051 0000002f RWIX
    I2CA 00007900 00000040 00000022 0000001e RWIX
    DRAML0 00008900 00000700 00000148 000005b8 RWIX
    PARTID 003d7fff 00000001 00000001 00000000 RWIX
    CSM_PWL 003f7ff8 00000008 00000008 00000000 RWIX

  • 把程序删掉一点就可以仿真了,但是ram空间是够的呀,不知道为什么? 


  • void main(void)
    {
    Uint16 temp;

    InitSysCtrl();
    Init_Gpio();

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

    EALLOW;
    PieVectTable.ADCINT1 = &adc_isr;
    PieVectTable.EPWM3_INT = &epwm3_isr;
    PieVectTable.ECAP1_INT = &ecap1_isr;
    EDIS;

    为什么 程序到了InitPieVectTable();   就飞了 ?

  • 你好,大神,我能否问你一个问题,就是我用FPGA控制DSP,编写HPI程序时HDRY信号一直是低电平?纠结了一个礼拜了!以下是时序图