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.

DRV8302- F28035 ((RX)) SCI problem

Other Parts Discussed in Thread: CONTROLSUITE

Hi, Employees of TI,

I used Example_2803xSci_Echoback.c , the TX is working very well but I could not receive anything through RX

I measured the voltage of RX during running of program, it is 3.3 [v] , and does not change when pressing button from hyperterminal,  I think it should be 0 [v].

The configuration for SCI is as following:

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

void InitSciaGpio()
{
EALLOW;

/* Enable internal pull-up for the selected pins */
// Pull-ups can be enabled or disabled disabled by the user.
// This will enable the pullups for the specified pins.

GpioCtrlRegs.GPAPUD.bit.GPIO28 = 0; // Enable pull-up for GPIO28 (SCIRXDA) !!!
// GpioCtrlRegs.GPAPUD.bit.GPIO7 = 0; // Enable pull-up for GPIO7 (SCIRXDA)

GpioCtrlRegs.GPAPUD.bit.GPIO29 = 0; // Enable pull-up for GPIO29 (SCITXDA)
// GpioCtrlRegs.GPAPUD.bit.GPIO12 = 0; // Enable pull-up for GPIO12 (SCITXDA)

/* Set qualification for selected pins to asynch only */
// Inputs are synchronized to SYSCLKOUT by default.
// This will select asynch (no qualification) for the selected pins.

GpioCtrlRegs.GPAQSEL2.bit.GPIO28 = 3; // Asynch input GPIO28 (SCIRXDA)
// GpioCtrlRegs.GPAQSEL1.bit.GPIO7 = 3; // Asynch input GPIO7 (SCIRXDA)

/* Configure SCI-A pins using GPIO regs*/
// This specifies which of the possible GPIO pins will be SCI functional pins.

GpioCtrlRegs.GPAMUX2.bit.GPIO28 = 1; // Configure GPIO28 for SCIRXDA operation
// GpioCtrlRegs.GPAMUX1.bit.GPIO7 = 2; // Configure GPIO7 for SCIRXDA operation

GpioCtrlRegs.GPAMUX2.bit.GPIO29 = 1; // Configure GPIO29 for SCITXDA operation
// GpioCtrlRegs.GPAMUX1.bit.GPIO12 = 2; // Configure GPIO12 for SCITXDA operation

EDIS;
}

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Please help and advice.

Khaled

  • Khaled,

    If you are using the F28035 ISO controlCARD (labeled CC2803x ISO DIMM on the card itself), I think you may have found a tricky hardware issue.

    If I am correct above, try removing R27 on the controlCARD.

    The rationale here is that the FTDI chip (U8) that serves as the xds100 emulator also serves as an SCI transceiver.  As a result, this transceiver is pulling GPIO28 high and likely causing contention with other signals going to/from GPIO28.

    Take a look at the schematics in controlSUITE and the above will probably make more sense.


    Thank you,
    Brett

  • Thank you for your replaying and for help to find the solution for this problem.

    I started to use Delfino F28335 Experimental kit. I knew that the UART transceiver has been already build in the ControlCard so I connect the SCI pins to the hyperterminal computer directly but I could not receive or send any information.

    Neither send nor receive  succeeded 

    I downloaded the example (Example_2833xSci_Echoback.c) without any changes in the configurations.

    Please advice.

    Khaled

  • Khaled,

    I would recommend taking a look at the schematics.  One thing to check is the position of SW1 on the F28335 controlCARD.  Another is to look at whether you're connecting to GPIO28 & 29 or onto J3 of the DockingStation/Experimenter'sKit.


    Thank you,
    Brett

  • Hi Brett,

    Thank you for your replying, now everything is working well.

    I want to use CAN on F28335 Experimental kit, I downloaded the example (Example_2833xECanBack2Back.c), but I could not see any signal on oscilloscope when I connect the probes to the CAN-H and CAN-L pin.

    I think it is enough  to set some mailboxes as transmit to be appeared on the oscilloscope (which has been already done). 

    Because of that I could not receive nor transmit to other modules across CAN.

    What is the problem?

    Thank you in advance

    Khaled

  • Hey there, how did you get this to work I am having the same problem...  Thanks ^_^

  • If you are using the same example,

    First check the software:

    1- STM bit is self test so it should be 0 if you want to connect to GPIO.

    2-Some functions for CAN are already commented, cancel this.

    3-Make sure that you have all related files in your project.

    If everything is ok, and still not work, go to ECAN.c file and change the bite rate, it has already set to 1 MBit, but it may not work with your system.

    If still not work, use oscelloscope to check if the problem is with the hardware itself.

    Khaled

  • 1.  Where do I find the STM bit? Or how do I set it to 0?

    2.  What file would have that?

    3.  Well DSP2833x_ECAN.c wasn't part of the files soooo I added that.  What files do I need other then the ones defaulted to the example?

    Thanks man I am just new at this lol

  • Hi Austin,

    1- It is available as a code instruction in the main file:

    // Configure the eCAN for self test mode
    // Enable the enhanced features of the eCAN.
    EALLOW;
    ECanaShadow.CANMC.all = ECanaRegs.CANMC.all;
    ECanaShadow.CANMC.bit.STM = 1; // Configure CAN for self-test mode---------------------------Set this to 0.
    ECanaRegs.CANMC.all = ECanaShadow.CANMC.all;
    EDIS;

    2-by importing  ECAN_back2back example in code composer studio of the, all files will automatically be added ( Make import operation).

    Khaled

  • So if I remove R27 then am I correct in thinking that the xds100 emulator / debug etc will not load?

  • Richard,

    If you remove R27, then the FTDI's SCI interface will be broken (this means that some SCI-based GUIs designed for use in some kits may not work).

    However, it shouldn't effect the JTAG/xds100v1 interface.  This JTAG interface consists of TCK, TDI, TDO, TMS, and TRSTn.


    Thank you,
    Brett