串口发送与接收
时间:2026-01-22
时间:2026-01-22
////////////////////////////////////// //////////
//程序编写人:小艾 QQ:873808971
//程序编写的时间:2012-4-25
//程序实现的功能:串口发送单字节
//////////////////////////////////////////////////////
#include"reg52.h"
#define uchar unsigned char
#define uint unsigned int
extern void fasong(unsigned char *s);
extern void delay(unsigned int x);
void chuangkuo(void) ;
///////////////主程序//////////////////////////////
main()
{
chuangkuo();//调用串口初始化
while(1)
{
ES=0;
fasong("星梦奕缘:坚持自己的理想,坚持自己的梦想.");//发送字符串子程序 ES=1;
delay(65500);
}
}
/////////////串口初始化//////////////////////////////////////
void chuangkuo(void)
{
SCON=0x50; //串口工作方式,采用方式1,允许接收
PCON=0x00; //电源控制寄存器设计
TMOD |=0x20; //定时器工作方式,采用方式1,能自动重装高低八位 TH1=0xfd; //高八位赋值,采用9600波特率
TL1=0X00; // 低八位赋值
TR1=1 ; //启动定时起
EA=1; //开总中断
}
/////////////////////////////////////////////////////
void zhongduan(void) interrupt 4 using 1
{
char a; //定义局部变量
if(RI==1) // 判断是否是接收
{ //
RI=0; //接收标志位置零
a=SBUF; //接收数据
P1=a; //把数据送给显示