⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dsp28_sci.c

📁 在ccs编程环境下
💻 C
字号:
//
//      TMDX ALPHA RELEASE
//      Intended for product evaluation purposes
//
//###########################################################################
//
// FILE:	DSP28_Sci.c
//
// TITLE:	DSP28 SCI Initialization & Support Functions.
//
//###########################################################################
//
//  Ver | dd mmm yyyy | Who  | Description of changes
// =====|=============|======|===============================================
//  0.55| 06 May 2002 | L.H. | EzDSP Alpha Release
//  0.56| 20 May 2002 | L.H. | No change
//  0.57| 27 May 2002 | L.H. | No change
//  0.58| 29 Jun 2002 | L.H. | No change
//###########################################################################

#include "DSP28_Device.h"

//---------------------------------------------------------------------------
// InitSPI: 
//---------------------------------------------------------------------------
// This function initializes the SPI(s) to a known state.
//
void InitSci(void)
{
	// Initialize SCI-A:

	//tbd...
 	

	// Initialize SCI-B:

	//tbd...
}	

void scia_loopback_init(void)
{    
    // Note: Clocks were turned on to the SCIB peripheral
    // in the InitSysCtrl() function
   
 	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.SCICTL2.all =0x0003; 
	SciaRegs.SCICTL2.bit.TXINTENA =1;
	SciaRegs.SCICTL2.bit.RXBKINTENA =1;
//	SciaRegs.SCIHBAUD    =0x0000 ; //对应输出波特率为9.6k(10416),外接晶振是10M
//	SciaRegs.SCILBAUD    =0x0095;
//	SciaRegs.SCIHBAUD    =0x0001 ; //对应输出波特率为9.6k(10416),外接晶振是30M
//	SciaRegs.SCILBAUD    =0x00c1;	//BRR = 37.5M/(BAUD*8)-1
	
	SciaRegs.SCIHBAUD    =0x0000 ; //对应输出波特率为9.6k(10416),外接晶振是30M
	SciaRegs.SCILBAUD    =0x0028;	//BRR = 37.5M/(BAUD*8)-1=39.69(0x28或0x29)

	SciaRegs.SCICCR.bit.LOOPBKENA =0; // Enable loop back  
	SciaRegs.SCICTL1.all =0x0023;     // Relinquish SCI from Reset 
}

void scib_loopback_init(void)
{    
    // Note: Clocks were turned on to the SCIB peripheral
    // in the InitSysCtrl() function
   
 	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.SCICTL2.bit.TXINTENA =1;
	ScibRegs.SCICTL2.bit.RXBKINTENA =1;
//	ScibRegs.SCIHBAUD    =0x0000 ; //对应输出波特率为9.6k(10416),外接晶振是10M
//	ScibRegs.SCILBAUD    =0x0095;
//	ScibRegs.SCIHBAUD    =0x0001 ; //对应输出波特率为9.6k(10416),外接晶振是30M
//	ScibRegs.SCILBAUD    =0x00c1;	//BRR = 37.5M/(BAUD*8)-1
	
	ScibRegs.SCIHBAUD    =0x0000 ; //对应输出波特率为9.6k(10416),外接晶振是30M
	ScibRegs.SCILBAUD    =0x0028;	//BRR = 37.5M/(BAUD*8)-1=39.69(0x28或0x29)

	ScibRegs.SCICCR.bit.LOOPBKENA =0; // Enable loop back  
	ScibRegs.SCICTL1.all =0x0023;     // Relinquish SCI from Reset 
	// Select GPIOs to be SciB pinsP
	GpioMuxRegs.GPGMUX.bit.SCIRXDB_GPIOG5 =1;
	 GpioMuxRegs.GPGMUX.bit.SCITXDB_GPIOG4 =1;	
	 // Select GPIOs to be SciB pinsP
	 //GpioMuxRegs.GPFMUX.bit.SCITXDA_GPIOF4 = 1;
	 //GpioMuxRegs.GPFMUX.bit.SCIRXDA_GPIOF5 = 1;
}

// Initalize the SCI FIFO
void scia_fifo_init(void)										
{
    SciaRegs.SCIFFTX.all=0xA040;
    SciaRegs.SCIFFRX.all=0x004f;
    SciaRegs.SCIFFCT.all=0x0;
    
}  
void scib_fifo_init(void)										
{
    ScibRegs.SCIFFTX.all=0xA040;
    ScibRegs.SCIFFRX.all=0x004f;
    ScibRegs.SCIFFCT.all=0x0;
    
}  
	
//===========================================================================
// No more.
//===========================================================================

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -