serial.c

来自「三色点阵控制」· C语言 代码 · 共 35 行

C
35
字号
#include <reg51.h>

#include "Serial.h"

//串口初始化函数 9600 baud at 11.0592MHz.
void InitCom(void)
{
	SCON  = 0x50;		/* SCON: mode 1, 8-bit UART, enable rcvr 	*/
    TMOD |= 0x20;       /* TMOD: timer 1, mode 2, 8-bit reload      */
	PCON |= 0x80;		/* PCON: baud*2								*/
    TH1   = 0xf4;       /* TH1:  reload value 9600 baud				*/
						/* 22.1184MHZ--0xf4  11.0592MHZ--0xfa   	*/
    TR1   = 1;          /* TR1:  timer 1 run                        */

	EA 	  = 1;   		//打开CPU总中断请求
	ES	  = 0;			//关串口中断
	REN   = 0;			//不允许接收
}

//向串口输出一个字符(非中断方式)
void WriteByte(uchar OutData)
{
	SBUF = OutData;		//输出字符
	while(!TI); 		//空语句判断字符是否发完
	TI = 0; 			//清TI
}

//发送字符串到串口
void WriteString(uchar *pData)
{
	for(;*pData!=0;pData++)		//遇到停止符0结束
		WriteByte(*pData);
}

⌨️ 快捷键说明

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