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

📄 epower_28x_sci.c

📁 在TI的TMSF2812平台上
💻 C
字号:
/* FILE:    Epower_28x_Sci.c
  
   TITLE:   DSP2812 Device SCI. 
   
   AUTHOR:  XuKangping
  
   ASSUMPTIONS:
  
            As supplied, this project is configured for "boot to H0" operation.  
  
   DESCRIPTION:
  
            This program uses SCIA module to communicate with PC
*/

#include "Epower_28x.h"

void InitSciGpio(void)
{
    // define the SCIA pin
    EALLOW;
    GpioMuxRegs.GPFMUX.bit.SCITXDA_GPIOF4 = 1;
    GpioMuxRegs.GPFMUX.bit.SCIRXDA_GPIOF5 = 1;
    EDIS;
    
    // define the SCIA cs pin(CNTR485)
    EALLOW;
    GpioMuxRegs.GPDMUX.bit.T1CTRIP_PDPA_GPIOD0 = 0;
    GpioMuxRegs.GPDDIR.bit.GPIOD0 = 1;
    EDIS;
    
    // define the transmit mode
    GpioDataRegs.GPDDAT.bit.GPIOD0 = SCI_TRANSMIT;
}

void InitScia(void)
{
    // 1 stop bit,  No loopback, No parity, 8 char bits, async mode, idle-line 
    // protocol 
    SciaRegs.SCICCR.all =0x0007; 
    
    // Enable RX, TX, internal SCICLK; disable RX ERR, SLEEP, TXWAKE      
    SciaRegs.SCICTL1.all = 0x0003;   
    // Disable TX interrupt and Receiver-buffer/break interrupt   
    SciaRegs.SCICTL2.bit.TXINTENA = 0;
    SciaRegs.SCICTL2.bit.RXBKINTENA = 1;
    
    // Baudrate = 9600 
    SciaRegs.SCIHBAUD = 0x01;
    SciaRegs.SCILBAUD = 0xE7;
    
    SciaRegs.SCICCR.bit.LOOPBKENA = 0;
    
    // SCI FIFO initiate 
    // Reset Transmit FIFO 
    SciaRegs.SCIFFTX.all = 0xc000;
    // Clear Receive FIFO overflow flag, Receive FIFO is empty, Clear
    // interrupt flag, receive interrupt level = 8 
    SciaRegs.SCIFFRX.all = 0x0028;
    SciaRegs.SCIFFCT.all = 0x0000;
    
    SciaRegs.SCIPRI.all = 0x0010;
    
    // Relinquish SCI from Reset  
    SciaRegs.SCICTL1.bit.SWRESET = 1;     
    SciaRegs.SCIFFTX.bit.TXFIFOXRESET = 1;
    SciaRegs.SCIFFRX.bit.RXFIFORESET = 1;
    
    // Set SCI transmit mode 
    GpioDataRegs.GPDDAT.bit.GPIOD0 = SCI_TRANSMIT;
}

// Transmit a character from the SCI'
void Scia_Xmit(Uint16 a)
{
    SciaRegs.SCITXBUF=a;
}

⌨️ 快捷键说明

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