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

📄 uart.c

📁 51单片机上实现tcp/ip的源代码
💻 C
字号:
/*********************************************************************
*            Copright(c) 2004,张会福 湖南科技大学计算机学院 
*						All rights reserved.
*					   http://www.zlgmcu.com
*
*文件名称:	uart.c
*文件标识: 
*摘    要: 串口输入输出函数定义文件
*
*当前版本: V1.0
*完成日期: 2004.4.10
*
*********************************************************************/
#define  UART_GLOBALS
#include "net_cfg.h"

/**********************************************************************
**函数原型:    uchar 	Get_Char()
**参数说明:	无
**返 回 值:	无      
**说    明:	从串口接收一个字符
************************************************************************/
unsigned char Get_Char()
{unsigned char temp;
temp = ComRxdBuf[ComRxdRead];
ComRxdRead++;
if(ComRxdRead == COM_RXD_BUFF_SIZE){ComRxdRead=0;}
if(temp == 'c'){Tcp_Drop_Count++;}else{Tcp_Drop_Count=0;}
return(temp);
}
/**********************************************************************
**函数原型:    void  	Printf_Char(uchar ascii)
**参数说明:	ascii:	发送到串口的ASCII
**返 回 值:	无      
**说    明:	往串口发送一个字符
************************************************************************/
void Printf_Char(uchar ascii)
{
	ea=0;
	ComTxdBuf[ComTxdWrite]=ascii;
	ComTxdWrite++;
	if(ComTxdWrite==COM_TXD_BUFF_SIZE)
		ComTxdWrite=0;
	if(ComTxdBufempty)
	{
		ti=1;
	}
	ea=1;
}
/**********************************************************************
**函数原型:    void  		Printf_String(uchar code *string)
**参数说明:	string:	字符串的起始地址
**返 回 值:	无      
**说    明:	向串口发送字符串,碰到0x00结束
************************************************************************/
void Printf_String(uchar  *string)
{
	while(*string!=0)
	{
		Printf_Char(*string);
		string++;
	}
}
/**********************************************************************
**函数原型:    void 	Printf_IPStr(union Ip_Address_Type ip)
**参数说明:	union Ip_Address_Type ip
**返 回 值:	无      
**说    明:	向串口发送IP字符串,碰到0x00结束
************************************************************************/
void Printf_IPStr(union Ip_Address_Type ip)
{
	IP_Hex2Str(ip);
	Printf_String(IpStr);
}
/**********************************************************************
**函数原型:    void 	Printf_PortStr(union u portnum)
**参数说明:	union u portnum
**返 回 值:	无      
**说    明:	向串口发送端口号字符串,碰到0x00结束
************************************************************************/
void Printf_PortStr(unsigned int portnum)
{
	Port_Hex2Str(portnum);
	Printf_String(PortStr);
}

/**********************************************************************
**函数原型:    void  		Printf_Hex(unsigned char senddata)
**参数说明:	senddata:	发送到串口的数据
**返 回 值:	无      
**说    明:	向串口发送HEX
************************************************************************/
void Printf_Hex(unsigned char senddata)
{
	uchar ch;
	ch=senddata>>4;
	Printf_Char(HexTable[ch]);
	ch=senddata&0x0F;
	Printf_Char(HexTable[ch]);
}

/******************************************************************************/

⌨️ 快捷键说明

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