analyse.c

来自「一种语音芯片XF-S3011的51IO口模拟放音程序。」· C语言 代码 · 共 55 行

C
55
字号
#define MACRO_ENDFLAG  0x0d

uchar idata test_flag ;
uchar idata SerialDLength ;
uchar idata SerialDBuf[50] ;

void Serial_Deal(uchar indata)
{
	uchar command ;
	uchar temp,i ;
	
	if(indata != MACRO_ENDFLAG)
	{
		if(indata == 0xfe)	SerialDLength = 0 ;
		SerialDBuf[SerialDLength] = indata ;
		if(SerialDLength<50) SerialDLength++ ;
		return ;
	}	
	else
	{
		command = SerialDBuf[1] ;
		SerialDLength -= 2 ;
		switch(command)
		{
			case 1:
				temp = Send_Play_Play(SerialDLength,SerialDBuf+2) ;
				if(test_flag == 1)
				{
					for(temp=0;temp<40;temp++)
					{
						Serial_SendCommand(3,"OK\n") ;
						i=255 ;
						while(i--) ;
					}
				}
				break ;
			case 2:
				temp = Send_Stop_Play() ;
				Serial_SendCommand(3,"OK\n") ;
				break ;
			case 3:
				Serial_SendCommand(3,"OK\n") ;
				break ;
			case 4:
				if(SerialDBuf[2] == 1) test_flag = 1 ;
				else	test_flag = 0 ;
				Serial_SendCommand(3,"OK\n") ;
				break ;
			default:
				break ;
		}
	}
	SerialDLength = 0 ;
	return ;
}

⌨️ 快捷键说明

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