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

📄 sci_exam.c

📁 F2812的串口通信的例子
💻 C
字号:
/*This is my sci exmple by shoushan*/

#include "DSP281x_Device.h"
#include "DSP281x_Examples.h"
Uint16 ReceiveChar;



void InitGpio(void)
{
// Set GPIO A port pins,AL(Bits 7:0)(input)-AH(Bits 15:8) (output) 8bits
// Input Qualifier =0, none
     EALLOW;
     GpioMuxRegs.GPFMUX.all=0x750F;     
    // GpioMuxRegs.GPFDIR.all=0xFF00;    	// upper byte as output/low byte as input
   //  GpioMuxRegs.GPFQUAL.all=0x0000;	// Input qualifier disabled

// Set GPIO B port pins, configured as EVB signals
// Input Qualifier =0, none
// Set bits to 1 to configure peripherals signals on the pins
     GpioMuxRegs.GPGMUX.all=0xFFFF;   
   //  GpioMuxRegs.GPGQUAL.all=0x0000;	// Input qualifier disabled
     EDIS;
}

void InitSci(void)
{
	ScibRegs.SCICTL2.all=0x0000;//禁止接收和发送中断
	ScibRegs.SCICCR.all=0x0007;//1个停止位,禁止校验,8位字符,禁止自测试,异步空闲线协议

	ScibRegs.SCIHBAUD=0x01;
	ScibRegs.SCILBAUD=0xAD;  //波特率为9600

	ScibRegs.SCICTL1.all=0x0023;  //使能接收发送

	 	
} 

void main(void)
{
  InitSysCtrl();
  DINT;
  IER=0x0000;
  IFR=0x0000;
  InitGpio();
  InitSci();
  while(1)
  {
  	while (ScibRegs.SCIRXST.bit.RXRDY!=1)
	{}
	ReceiveChar=ScibRegs.SCIRXBUF.all;
	ScibRegs.SCITXBUF=ReceiveChar+1;

	while(ScibRegs.SCICTL2.bit.TXRDY==0){}
	while(ScibRegs.SCICTL2.bit.TXEMPTY==0){}
  
  } 	

}

⌨️ 快捷键说明

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