Other Parts Discussed in Thread: CONTROLSUITE
Hi Everyone!
I am new to F28377S device, I got LAUNCHXL-F28377S to get started. I met an issue with transmitting messages from the board to PC. I am trying to send two test strings "abc" and "def". I used example sci_echoback from the controlSUITE v191, CCS version is 6.1.3.00033 . Here is a code:
#include "F28x_Project.h"
void scic_echoback_init(void);
void scic_fifo_init(void);
void scic_xmit(int a);
void scic_msg(char *msg);
void main(void)
{
char *msg;
InitSysCtrl();
InitGpio();
GPIO_SetupPinMux(62, GPIO_MUX_CPU1, 1);
GPIO_SetupPinOptions(62, GPIO_INPUT, GPIO_PUSHPULL);
GPIO_SetupPinMux(63, GPIO_MUX_CPU1, 1);
GPIO_SetupPinOptions(63, GPIO_OUTPUT, GPIO_ASYNC);
DINT;
InitPieCtrl();
IER = 0x0000;
IFR = 0x0000;
InitPieVectTable();
scic_fifo_init();
scic_echoback_init();
while (1)
{
msg = "abc\0";
scic_msg(msg);
msg = "def\0";
scic_msg(msg);
}
}
void scic_echoback_init()
{
ScicRegs.SCICCR.all =0x0007;
ScicRegs.SCIHBAUD.all = 0x0002;
ScicRegs.SCILBAUD.all = 0x008A;
ScicRegs.SCICTL1.all = 0x0023;
}
// Transmit a character from the SCI
void scic_xmit(int a)
{
while (!ScicRegs.SCICTL2.bit.TXRDY) {}
ScicRegs.SCITXBUF.all =a;
}
void scic_msg(char * msg)
{
int i = 0;
while(msg[i] != '\0')
{
scic_xmit(msg[i]);
i++;
}
scic_xmit('\n');
}
void scic_fifo_init()
{
ScicRegs.SCIFFTX.all=0xE040;
ScicRegs.SCIFFRX.all=0x2044;
ScicRegs.SCIFFCT.all=0x0;
}
Issue is that strings are not transmitted as planned, bellow are images from oscilloscope.
First transmit of abc:
Transmit of def:
Next transmit of abc:
Could someone help me with advice, what did I miss?
Thanks a lot!
Best
Sergii


