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

📄 t2.c

📁 T2做为波特率发生器初始化函数 用于串行通信
💻 C
字号:
#include <reg51.h>
#include <absacc.h> 
sbit L0=P2^0;
sbit L1=P2^1;
unsigned char temp;
unsigned char key;
void DELAYx100ms(void);

void System_Initialize(void)
{
   	EA = 1;					//开启中断
	ES = 1;					//开启串行口中断允许
	PS = 1;					//串口中断优先
        ET2 = 0;			        //关闭定时器2中断
   	TMOD = 0x11;				//设置定时器0,定时器1
        SCON = 0xd0;				//设置9位通用异步接收方式
        T2CON = 0x30;				//设定定时器2做为波特率发生器
	RCAP2H = 0xFF;				//设置波特率为9600
	RCAP2L = 0xDC;
        temp = 1;                               //初始化参数
        kye = 0;                                //初始化参数 
        L0 = 0;                                 //初始化端口
        L1 = 0;                                 //初始化端口
}

	
void main(void)                                //主函数
{
    while(1)                                   //主函数中的死循环                                 
    {                                       
       if(temp==1)                            //检测到接收数据
       {
          SBUF = 0xff;
          while(!TI);			     //等待中断发送完成标志
	  TI = 0;			     //软件将TI置零
          if( key == 1)
          {
             L1 = 1;
             L0 = 1;
             DELAYx100ms();
             L1 = 0;
             L0 = 0;
             tmep = 0;
           }
       }
     }
}

void serial(void) interrupt 4 using 1 				//serial interrupt
{
    if( TI )						     //发送中断标志位TI等于1,则进  入中断
    {			
	  TI = 0;					     //清除中断标志位
	  key = 1;
     }    
}		

void DELAYx100ms(void)
{
   	unsigned int i;   

   	for(i = 8000; i >0 ; i--);  			//delay 100ms
}

⌨️ 快捷键说明

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