• 大小: 14KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-11
  • 语言: 其他
  • 标签: 51单片机  门禁  

资源简介

用Keil uVision3开发环境实现的门禁控制系统

资源截图

代码片段和文件信息

#include“Io.h“
#include 
//串口接收中断函数
/***********************************************************************************/
/* 功能定义:接收串口数据到接受缓冲区rxdataBUF*/
/* input :    */
/* output:   char */
/***********************************************************************************/
void serial () interrupt 4 using 3
{
    if(TI)
     TI=0;
    if(RI)
    {
        unsigned char ch;
unsigned char i;
        RI = 0;
recvFLG = 1;

TR2 = 0;//TEST
TH2=TH2TIME;
       TL2=TL2TIME;

        ch=SBUF;
if(redataPOINT == 0)
{
rxdata.sync = ch;
if(ch == 0x0F)
redataPOINT++;
else if(((ch&0x0F) == 0x0F)||(ch == 0x55))
{
for(i=0;i {
if(rxdataBUF[i].sync == 0)
{
rxdataBUF[i] = rxdata;
reinfoFLG = 1;
break;
}
}
memset(&rxdata.num‘\0‘sizeof(structdata));
}
}
else if(redataPOINT == 1)//||(redataPOINT ==2))
{
redataPOINT++;
rxdata.command = ch;
}
else if(redataPOINT == 2)
{
redataPOINT = 0;
rxdata.num = ch;
if(rxdata.sync+rxdata.command == ch)
{
for(i=0;i {
if(rxdataBUF[i].sync == 0)
{
rxdataBUF[i] = rxdata;
reinfoFLG = 1;
break;
}
}
}
memset(&rxdata.num‘\0‘sizeof(structdata));
}
TR2 = 1;
}
}


/***********************************************************************************/
/* 功能定义:延时delaytime发送一字节数据*/
/* input :    */
/* output:   bit = 0:unsucceed */
/***********************************************************************************/
bit send_data(BYTE delaytimeBYTE info)
{
BYTE i=0;
if(delaytime>0)//检测接收脚
{
if(!msFLG)
delaytime++;
while(delaytime>0)
{
delaytime--;     
    i=100;
    while(i!=0)
    {
        i++;
        if(!Srxd)         
          return 0;                 
    }     
}
}
ES = 0;
SBUF=info;
while(!TI)
{
i++;
  /* while(i<255)
    {
        i++;
        if(TI)
           i=255;
    }
    if(!TI)     
return 0;  */

}
TI = 0;
i = 0;
while(!RI)
{
   for(;i<255;i++)
   {
       if(RI)
           break;
   }
   if(i>=255)              
       break;
}
RI=0;
ES = 1;
if((i>=255)||(info!=SBUF))              
    return 0;
else
    return 1;
}


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       8942  2006-09-30 10:14  51系列门禁源程序\Init.c

     文件       9852  2006-09-30 09:52  51系列门禁源程序\IO.H

     文件      10797  2006-09-30 09:52  51系列门禁源程序\Main.c

     文件       7448  2006-09-30 09:40  51系列门禁源程序\PROCESS.C

     文件       1159  2006-09-30 10:14  51系列门禁源程序\TIMER0.C

     文件       2459  2006-09-30 09:34  51系列门禁源程序\common.c

     文件        146  2006-05-28 23:30  51系列门禁源程序\DELAY.C

     文件      15518  2005-12-29 13:42  51系列门禁源程序\EEPROM.C

     目录          0  2010-07-29 23:08  51系列门禁源程序

----------- ---------  ---------- -----  ----

                56321                    9


评论

共有 条评论