#i nclude "DSP2833x_Device.h" // DSP2833x Headerfile Include File
#i nclude "DSP2833x_Examples.h" // DSP2833x Examples Include File
//---------------------------------------------------------------------------
// InitSci:
//---------------------------------------------------------------------------
// This function initializes the SCI(s) to a known state.
//
void Sci_init(void)
{
// Initialize SCI-A:
EALLOW;
GpioCtrlRegs.GPAPUD.bit.GPIO28 = 0; // Enable pull-up for GPIO28 (SCIRXDA)
GpioCtrlRegs.GPAPUD.bit.GPIO29 = 0; // Enable pull-up for GPIO29 (SCITXDA)
GpioCtrlRegs.GPAQSEL2.bit.GPIO28 = 3; // Asynch input GPIO28 (SCIRXDA)
GpioCtrlRegs.GPAMUX2.bit.GPIO28 = 1; // Configure GPIO28 for SCIRXDA operation
GpioCtrlRegs.GPAMUX2.bit.GPIO29 = 1; // Configure GPIO29 for SCITXDA operation
DIS;
EALLOW;
SysCtrlRegs.PCLKCR0.bit.SCIAENCLK = 1; // SCI-A
EDIS;
SciaRegs.SCIFFTX.all=0x8000;
SciaRegs.SCICCR.all =0x0007; // 1 stop bit, No loopback
// No parity,8 char bits,
// async mode, idle-line protocol
SciaRegs.SCICTL1.all =0x0003; // enable TX, RX, internal SCICLK,
// Disable RX ERR, SLEEP, TXWAKE
SciaRegs.SCIHBAUD = 0x01;
SciaRegs.SCILBAUD = 0xE7; // BAUD = 9600
SciaRegs.SCICTL2.bit.RXBKINTENA = 1;
SciaRegs.SCICTL2.bit.TXINTENA = 1;
SciaRegs.SCICTL1.bit.SWRESET =1;
// SciaRegs.SCICTL2.all =0x0003;
// SciaRegs.SCICTL1.all =0x0023; // Relinquish SCI from Reset
/* // Initialize SCI-B:
EALLOW;
GpioCtrlRegs.GPAPUD.bit.GPIO18 = 0; // Enable pull-up for GPIO18 (SCITXDB)
GpioCtrlRegs.GPAPUD.bit.GPIO19 = 0; // Enable pull-up for GPIO19 (SCIRXDB)
GpioCtrlRegs.GPAQSEL2.bit.GPIO19 = 3; // Asynch input GPIO19 (SCIRXDB)
GpioCtrlRegs.GPAMUX2.bit.GPIO18 = 2; // Configure GPIO18 for SCITXDB operation
GpioCtrlRegs.GPAMUX2.bit.GPIO19 = 2; // Configure GPIO19 for SCIRXDB operation
EDIS;
EALLOW;
SysCtrlRegs.PCLKCR0.bit.SCIBENCLK = 0; // SCI-B
EDIS;
ScibRegs.SCIHBAUD = 0x01;
ScibRegs.SCILBAUD = 0xE7; //BAUD = 9600
ScibRegs.SCIFFTX.all=0x8000;
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.SCICTL1.all =0x0023; // Relinquish SCI from Reset
*/
// Initialize SCI-C:
/*
EALLOW;
GpioCtrlRegs.GPBPUD.bit.GPIO62 = 0; // Enable pull-up for GPIO18 (SCITXDB)
GpioCtrlRegs.GPBPUD.bit.GPIO63 = 0; // Enable pull-up for GPIO19 (SCIRXDB)
GpioCtrlRegs.GPBQSEL2.bit.GPIO62 = 3; // 11异步模式,仅用于外设I/0模式(SCIRXDB) 00与SYSCLKOUT同步
GpioCtrlRegs.GPBMUX2.bit.GPIO63 = 01; // Configure GPIO63 for SCITXDC operation
GpioCtrlRegs.GPBMUX2.bit.GPIO62 = 01; // Configure GPIO62 for SCIRXDC operation
EDIS;
EALLOW;
SysCtrlRegs.PCLKCR0.bit.SCICENCLK = 1;
EDIS;
// ScicRegs.SCIFFTX.bit.SCIFFENA = 0;
ScicRegs.SCICCR.all = 0x0007; // 1 stop bit, No loopback
ScicRegs.SCICTL1.all =0x0003; // enable TX, RX, internal SCICLK,
ScicRegs.SCICTL2.all =0x0003; // enable RXRDY和TXINT
// ScicRegs.SCICTL2.bit.TXINTENA=1;
// ScicRegs.SCICTL2.bit.RXBKINTENA=1;
ScicRegs.SCIHBAUD = 0x0001;
ScicRegs.SCILBAUD = 0x00e7; //01 E7 BAUD = 9600 | 03 D0 BAUD 4800 |07 A0 2400
ScicRegs.SCIFFTX.all=0x8000;
ScicRegs.SCICTL1.all =0x0023; // Relinquish SCI from Reset
*/
}
//===========================================================================
// End of file.
//===========================================================================