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.

Connect two C2000 chips using SCI

Other Parts Discussed in Thread: CONTROLSUITE

I am using two F29069 chips for a project, and need one to send data to the other one. Both are using the Peripheral Explorer Board. I am trying to use the SCI interface to connect them, but I am running into an issue finding open pins. It is my understanding that SCIA (GPIO 28,29) is used by the USB interface and SCIB's pins are used by the AIC23 (GPIO 22,23).

Does this mean that the pins used by the F28069 to do SCI communications are unavailable to me if I am using the Peripheral Explorer Board? The overview sheet I linked to also shows a "Comms (SCI)" feature near the Line in/out ports. However, I looked at the board schematic and these pins are simply labeled "ISO-TX, ISO-RX, Y33-ISO". I do not know what that means, or which pins these correspond to on the F28069.

I am providing my SCI code just in case that will prove useful, but I am currently stuck on which pins on the Peripheral Explorer Board will even output the SCI signal. Any help is greatly appreciated. The code simply tries to write a character using the SCI interface repeatedly.

SCIA Init Function

/*
* SCIA.c
*
*  Created on: Mar 29, 2015
*/

#include "Lab.h"

/* Init SCIA to receive information about the pitch of the signal */
void InitSCIA(void) {

SciaRegs.SCICTL1.bit.SWRESET = 0; //hold the SCIA module in reset while we configure it

SciaRegs.SCICCR.bit.STOPBITS = 0; //one stop bit
SciaRegs.SCICCR.bit.PARITYENA = 0; //parity disabled (no need to set even/odd parity)
SciaRegs.SCICCR.bit.LOOPBKENA = 0; //disable loopback
SciaRegs.SCICCR.bit.ADDRIDLE_MODE = 0; //idle mode, no added bit for address transmissions
SciaRegs.SCICCR.bit.SCICHAR = 7; // character length is 8 bits

SciaRegs.SCICTL1.bit.SWRESET = 1; //release SCIA module once we have configured it

//Baud rate =
// LSPCLK / (BRR + 1)*8
// 20MHz / (2082 + 1)*8
// = ~9600 bps
//Note: LSPCLK = SYSCLKOUT/4, SYSCLKOUT = 80MHz
SciaRegs.SCIHBAUD = 0;
SciaRegs.SCILBAUD = 2802;

SciaRegs.SCICTL1.bit.TXENA = 1; //enable SCI transmit
SciaRegs.SCICTL2.bit.TXINTENA = 0; //disable TXRDY interrupt
SciaRegs.SCICTL2.bit.RXBKINTENA = 0; //disable RXRDY interrupt


}

Code Called in main() while loop:


SciaRegs.SCITXBUF = 0x55; //transmit 8-bit char
while (!SciaRegs.SCICTL2.bit.TXRDY) {}; //spin while we send the char