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

📄 com.h

📁 是关于size_of的测试程序
💻 H
字号:
/************************************************************/
/*********          COM.H C51 driver            *************/
/**********  Written by WangBiao---20060416  ****************/
/************************************************************/
//P3_0->RXD  ;;  P3_1->TXD
//-----------------------------------------------------------------------

//-----------------------------------------------------------------------
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
//-----------------------------------------------------------------------
//-----------------------外部函数----------------------------------------
void Init_Com(void);
void sendstr(char *ptr);
void SendChar(unsigned char InData);
void SendHex(unsigned char InData);
void ct(void);//chang tab==enter
//void serial() interrupt 4 using 3;//ES interrupt,set read_flag
//unsigned char rece_wait(void);//wait until the RI=1;
//unsigned char rece_short(void);//wait for RI=1 for a little time;
//-----------------------------------------------------------------------
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
//-----------------------------------------------------------------------
//--------------------------------------------------------------------
void Init_Com(void) 
{
	TMOD=0x20; //定时器1,方式2
	TL1=0xFD; 
	TH1=0xFD; //11.0592MHZ晶振,波特率为9600
	PCON=0x00;
	SCON=0x50; //方式3
	ET0 = 1;
	TR1=1; //启动定时
}
//------------------------------------------------------------------
//发送一个字节
//------------------------------------------------------------------
void SendChar(unsigned char InData) 
{	 	
	TMOD=0x20; //定时器1,方式2
	TL1=0xFD; 
	TH1=0xFD; //11.0592MHZ晶振,波特率为9600
	SBUF=InData;
	while(TI!=1);TI=0;
}
//------------------------------------------------------------------
//-----------------------------------------------------------------
//发送十六进制数据
//-----------------------------------------------------------
void SendHex(unsigned char InData)
{
	unsigned char i;

	SendChar('0');
	SendChar('x');
	i=InData>>4;
	if(i>9){i=i+0x57;}
	else i=i+0x30;
	SendChar(i);

	i=InData&0x0F;
	if(i>9){i=i+0x57;}
	else i=i+0x30;
	SendChar(i);
}





//发送一串字符

//------------------------------------------------------------------
void sendstr(unsigned char *ptr)
{	
	unsigned char i,l=0;
	while(ptr[l]>31) l++;//get length
	for(i=0;i<l;i++) SendChar(*(ptr+i));
}
//-------------------------------------------------------------------
//回车、换行
//-------------------------------------------------------------------
void ct(void)
{	
	SendChar(0x0d);SendChar(0x0a);
}
//--------------------------------------------------------------------
//查询接收(一直查询)
//--------------------------------------------------------------------
unsigned char rece_wait(void)//wait until the RI=1;
{   unsigned char a;
	while(RI!=1);
	RI=0;
	a=SBUF;
	return(a);
}
//--------------------------------------------------------------------
//查询接收(查询一段时间)
//--------------------------------------------------------------------
unsigned char rece_short(void)//wait for RI=1 for a little time;
{   unsigned char a=0;
	unsigned int i;
	for(i=0;i<100;i++)
	{	if(RI) 
		{	RI=0;
			a=SBUF;
			break;
		}
	}
	return(a);
}

//--------------------------------------------------------------------

⌨️ 快捷键说明

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