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

📄 serial.c

📁 采用STC89C51RC单片机
💻 C
字号:

#include <config.h>


/*******************************************************************************************************
** Function name: UART_Init
** Descriptions:  串口初始化               
** Input: 无
** Output: 无
********************************************************************************************************/ 
void UART_Init(void)
{
	SCON = 0x50;  					//方式1,10位异步收发; ren:1,允许接收
	TMOD = (TMOD & 0x0F) | 0x20;	//定时器1,方式2,自动重装8
	PCON = PCON | 0x80;
	TH1 = 0xE6; 					//9600
	TL1 = 0xE6;
	
	TR1 = 1;
	TI = 1;
	RI = 1;
//	ET1 = 1;
//	IP	= 0x10;
	ES  = 0;
}

/*******************************************************************************************************
** Function name: UART_UnInit
** Descriptions:  关闭串口              
** Input: 无
** Output: 无
********************************************************************************************************/ 
void UART_UnInit(void)
{
	SCON = 0x00;
	TMOD = TMOD & 0x0F;
	TH1 = 0x00; 
	TR1 = 0;
//	ET1 = 0;
	TI  = 0;
}

/*******************************************************************************************************
** Function name: UART_SendChar
** Descriptions:  向串口发送一个字节            
** Input: 要发送的字符
** Output: 无
********************************************************************************************************/ 
void UART_SendChar(uint8 ch)
{
	SBUF = ch;
	TI = 0;
	while(!TI);
}

/*******************************************************************************************************
** Function name: UART_SendStr
** Descriptions:  向串口发送一个字符串            
** Input: 要发送的字符串
** Output: 无
********************************************************************************************************/
void UART_SendStr(uint8 *pszStr)
{
	while (*pszStr)
		UART_SendChar(*pszStr++);
}


/*******************************************************************************************************
** Function name: UART_ReceiveChar
** Descriptions:  从串口接收一个字符            
** Input: 无
** Output: 接收的字符
********************************************************************************************************/
uint8 UART_ReceiveChar(void)
{
	while (!RI);	
	RI = 0;
	return (SBUF);
}

⌨️ 快捷键说明

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