serial.c

来自「基于8051的驱动源码.包括STN LCD driver, I2C driver」· C语言 代码 · 共 51 行

C
51
字号
//
//
#include "serial.h"
#include "reg52.h"

void UART_Init(void)
{
	SCON = 0x50;//mode:1, ren:1;
	TMOD = (TMOD & 0x0F) | 0x20;//timer 1:mode 2;
	PCON = PCON | 0x80;
	TH1 = 0xF3; //4800
	TL1 = 0xF3;
	TR1 = 1;
//	ET1 = 1;
	TI  = 1;
}

void UART_Uninit(void)
{
	SCON = 0x00;
	TMOD = TMOD & 0x0F;
	TH1 = 0x00; 
	TR1 = 0;
//	ET1 = 0;
	TI  = 0;
}

void UART_SendChar(S_BYTE ch)
{
	while (!TI);

	TI = 0;
	SBUF = ch;
}

void UART_SendStr(S_BYTE *pszStr)
{
	while (*pszStr)
		UART_SendChar(*pszStr++);
}

S_BYTE UART_ReceiveChar(void)
{
	while (!RI);
	
	RI = 0;

	return SBUF;
}

⌨️ 快捷键说明

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