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

📄 test.c

📁 单片机开发例子(串口程序) 适合初学者
💻 C
字号:
#include "reg52.h"

void init_serial(void) 
                  
{
				//定时器1的工作方式2
	TMOD=0x20;	//装载计数初值
	TL1=0xfd;
	TH1=0xfd;	//采用串口工作方式1,无奇偶校验
	SCON=0x50;	//串口波特率不加倍
	PCON=0x00; 	//开总中断,开串口中断
	IE=0x90; 	//启动定时器1
	TR1=1;
}
code unsigned char send_txt[]={"测试程序,OK!\n"};
void test_serial(void)
{
	int i;
	EA=0;
	
	for(i=0;i<sizeof(send_txt);i++)
	{
		SBUF=send_txt[i];
		while(TI==0);
		TI=0;
	}
	EA=1;

}

//中断源编号为4,即串口中断

void getch(void) interrupt 4 
{
		
	unsigned char a;
	EA=0;//清除中断标志,硬件置位,软件清零
	RI=0; 
	     
	a=SBUF;	//接受串口缓冲区数据

	if(a==0x0a)
	{
		test_serial();
	}
    //通过串口缓冲区向外发送数据
	//SBUF=a;    
	//判断是否发送结束:TI==1为结束
	//while(TI==0); 
	//发送结束标志清零
	//TI=0; 
	EA=1;
	 	     
}

main()
{
	init_serial();
	test_serial();
	while(1);		
}

⌨️ 快捷键说明

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