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

📄 main.c

📁 基于51系列单片机的与PC通信(RS232)的应用 正在学习单片机,编来
💻 C
字号:
#include "reg52.h"			//包函8051内部资源的定义
unsigned char dat;         //用于存储单片机接收发送缓冲寄存器SBUF里面的内容
sbit gewei=P2^0;          //个位选通定义
sbit shiwei=P2^1;         //十位选通定义
unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,
                            0x6d,0x7d,0x07, 0x7f,0x6f,}; 
void Delay(unsigned int tc)     //延时程序
{
	while( tc != 0 )			
	   {unsigned int i;			
	    for(i=0; i<100; i++);	
	    tc--;}
}
void LED()                  //LED显示接收到的数据(十进制)
{  
   shiwei=0; P0=table[dat/10]; Delay(8); shiwei=1;
   gewei=0;  P0=table[dat%10]; Delay(5); gewei=1;
}
///////功能:串口初始化,波特率9600,方式1///////
void Init_Com(void)
{
     TMOD = 0x20;
     PCON = 0x00;
     SCON = 0x50;			
     TH1 = 0xFd;
     TL1 = 0xFd;
     TR1 = 1;				
}
/////主程序功能:实现接收数据并把接收到的数据原样发送回去/////
void main()
{
  Init_Com();//串口初始化
  while(1)
   {
       if ( RI )      //扫描判断是否接收到数据
       {
            dat = SBUF;			//接收数据SBUF赋与dat
			
            SBUF = dat;RI=0;			//在原样把数据发送回去
		}	
	LED();  //显示接收到的数据
   }
}





/*#include "reg52.h"
sbit _led = 0x97;
void Init_Com(void)
{
     TMOD = 0x20;
     PCON = 0x00;
     SCON = 0x50;													//		;串口为方式1	8 UART
     TH1 = 0xFd;
     TL1 = 0xfd;
     TR1 = 1;										//		;波特率9600
     REN = 1;
     ES = 1;
     EA = 1;
}
void ComInt() interrupt 4
{
    unsigned char dat;
    ES = 0;
    RI = 0;
    dat = SBUF;
    SBUF = dat;
    do{}while( TI == 0 );
    _led = 0;
    TI = 0;
    ES = 1;
}


void Delay_xMs(unsigned int x)
{
        unsigned int i,j;
        for( i =0;i < x;i++ )
        {
                for( j =0;j<1000;j++ );
        }
}
void main()
{
  Init_Com();
  while(1)
  {
        Delay_xMs(5);
        _led = 1;
  }
}*/

⌨️ 快捷键说明

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