scitest.c

来自「DSP2812 SCI232总线接口 源码 比普通232快」· C语言 代码 · 共 66 行

C
66
字号

#include "DSP28_Device.h"

unsigned int SCiRxData[100];
unsigned int i,j,SendFlag;
void main(void)
{
	InitSysCtrl();			//初始化系统

	DINT;					//关中断
	IER = 0x0000;
	IFR = 0x0000;

	InitPieCtrl();			//初始化PIE中断
	InitPieVectTable();		//初始化PIE中断矢量表
    InitSci();				//初始化SCIA寄存器
    
    for(i = 0; i < 100; i++)//初始化变量
    {
    	SCiRxData[i] = 0x0000;
    }
    i = 0;
    j = 0;
    SendFlag = 0;
    
    #if SCIA_INT			//设置中断服务程序入口地址/
	EALLOW;			
	PieVectTable.TXAINT = &SCITXINTA_ISR;
	PieVectTable.RXAINT = &SCIRXINTA_ISR;
	EDIS;   
	IER |= M_INT9;			//开中断
	#endif
	
	EINT;   				// Enable INTM
	ERTM;					// EnableDBGM
    
	for(;;)
	{
		if((SciaTx_Ready() == 1) && (SendFlag == 1))
		{
			SciaRegs.SCITXBUF = SCiRxData[i];
			SendFlag = 0;
			i++;
			if(i == j)
			{
				i = 0;
				j = 0;
			}
		}
		
		#if !SCIA_INT
		if(SciaRx_Ready() == 1)
		{
			SCiRxData[j] = SciaRegs.SCIRXBUF.all;
			SendFlag = 1;
			j++;
			if(j == 100)
			{
				j = 0;
			}
		}
		#endif
	}

} 	

⌨️ 快捷键说明

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