资源简介

本程序是为了实现电梯的自动控制。该控制系统具有以下功能: 1。一般的电梯自动功能,即一般模式 2。具有特别用途的管理模式,如维护,紧急事故,报警 在该模式下,该系统能提供几管理员,能直达指定楼层而不响应其他指令, 并且通过串口能记录和发送哪位管理的哪些操作。如"Admtor 5 from 1 to 8"表示 序号为5的管理员这时从1楼直达8楼。当退出该模式时,能恢复一般模式的指令。而且 为了便于管理和提高保密性,每个管理都有不同的密码。使该系统能适用特别场合, 如酒店,社区(花园),商场等商业性场合。 3。为了提高人们的人身安全,该控制系统能提供报警功能。 当受害者按下报警减时,该控制系统能使电梯运行到指定的楼层(如低层,顶层), 从而能捉住施害者。同时该系统也能通过串口发送报警信息,如"Admtor 0 from 6 to 8(顶层)" 表示6楼有人按下报警键,电梯会在8楼停住,其中"Admtor 0"表示报警信息,因为该系统是没有 序号为0的管理员的。 4。同时,该系统的显示部分(LED和SEG7)采用动态显示,节省电量和资源。

资源截图

代码片段和文件信息

/*************************电梯的自动控制系统******************************************
**************************************************************************************
本程序是为了实现电梯的自动控制。该控制系统具有以下功能:
1。一般的电梯自动功能,即一般模式
2。具有特别用途的管理模式,如维护,紧急事故,报警
    在该模式下,该系统能提供几管理员,能直达指定楼层而不响应其他指令,
并且通过串口能记录和发送哪位管理的哪些操作。如“Admtor 5 from 1 to 8“表示
序号为5的管理员这时从1楼直达8楼。当退出该模式时,能恢复一般模式的指令。而且
为了便于管理和提高保密性,每个管理都有不同的密码。使该系统能适用特别场合,
如酒店,社区(花园),商场等商业性场合。
3。为了提高人们的人身安全,该控制系统能提供报警功能。
当受害者按下报警减时,该控制系统能使电梯运行到指定的楼层(如低层,顶层),
从而能捉住施害者。同时该系统也能通过串口发送报警信息,如“Admtor 0 from 6 to 8(顶层)“
表示6楼有人按下报警键,电梯会在8楼停住,其中“Admtor 0“表示报警信息,因为该系统是没有
序号为0的管理员的。
4。同时,该系统的显示部分(LED和SEG7)采用动态显示节省电量和资源。
***************************************************************************************
时间:2007.5.4
作者:aking(bbs:gamew)
邮箱:s_yjwu@stu.edu.cn
*************************************************************
修改时间:5月18日增加电梯超载与满载功能控制任务
***********************************************************/
#include“config.h“
//sbit StairRun = P3^5;//声明变量
/*全局变量*/
uchar counter=0; //为切换计数器
uchar counter_10ms=0;
uchar counter_1s=0;
sbit StairOverweightSem = P3^1;
//uchar 
//uchar
//uchar

int main(void)
{
UART_init(); //初始化串口,设置波特率为1200
Time0_init(); //定时器0初始化,方式1,10ms中断一次,用于任务切换和定时

/*初始化*/        
StairNow = 1;
StairGoLast = 0;
StairGoto = 0;
DirUpFg = 0;
KeyValue = 0;
// StairRun    = 1; //低电平有效
StairRunFg = 0;
OPEN_INT(); //开总中断
while(1){ //任务开始循环执行
switch(counter%TASK_MAX_NUM){ //每10ms切换一次
case TASK_0:DisStairLED_go(); //-|
    break; //  |----这两个任务最好合在一起
case TASK_1:DisStairSEG7_now(); //-|
   break;
case TASK_2:KeyScan();
break;
case TASK_3:KeyResponses();
break;
case TASK_4:StairStopCon();
break;
/*5月18日增加电梯超载与满载功能*/
case TASK_5:StairOverweightCon();
break;
/*5月18日增加电梯超载与满载功能*/
default:break;
}
if(StairRunFg){ //不参与轮番调度的任务,当电梯运行时,输出PWM信号
StairRunPWM();
}
}
return 0;
}

void T0_10ms_int(void) interrupt 1 using 3 
{
CLOSE_INT();
TH0 = INT_CNT_16B/256;
TL0 = INT_CNT_16B%256;
counter++;
counter_10ms++;
if(counter_10ms == 200){ //1s
counter_10ms = 0;
counter_1s++;
}
if(StairRunFg == 1){ //当电梯处于运行状态下
if(counter_1s == TempCurCnt_1s+MAX_SEC_Dly && counter_10ms == TempCurCnt_10ms){//MAX_SEC_Dly计时到
Task_4_Suspend = 0; //任务不再挂起
RUN_TASK(TASK_4); //指定任务运行,响应需要延迟时间
CLOSE_INT(); //防止再次被中断,拖延任务延迟时间
return;
}
}
OPEN_INT();
}

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

     文件         93  2007-04-30 22:36  time.h

     文件         43  2007-05-19 11:41  流程图.txt

     文件       2661  2007-05-19 02:01  说明.txt

     文件       1435  2007-05-13 12:05  config.h

     文件       3194  2007-05-22 08:19  main_stair.c

     文件       6988  2014-08-05 11:14  main_stair.LST

     文件       8649  2014-08-05 11:14  main_stair.OBJ

     文件       1412  2013-07-16 17:31  RS232.C

     文件        526  2007-05-05 17:45  RS232.h

     文件       2845  2014-08-05 11:14  RS232.LST

     文件       5718  2014-08-05 11:14  RS232.OBJ

     文件        623  2013-07-16 17:31  SentToRS232.C

     文件       1712  2007-05-02 21:30  SentToRS232.LST

     文件       2046  2007-05-02 21:30  SentToRS232.OBJ

     文件      39157  2014-08-05 11:14  stair

     文件        544  2014-08-05 11:18  stair.plg

     文件       2108  2014-08-05 11:14  stair.Uv2

     文件       7471  2014-08-05 11:14  stair.hex

     文件        104  2014-08-05 11:14  stair.lnp

     文件      28020  2014-08-05 11:14  stair.M51

     文件       2269  2014-08-05 11:18  stair.Opt

    .......      2050  2014-08-05 11:14  stair_Opt.Bak

    .......      2152  2013-07-16 17:28  stair_Uv2.Bak

     文件       5115  2002-04-16 14:32  STARTUP.A51

     文件      11665  2014-08-05 11:14  STARTUP.LST

     文件        749  2014-08-05 11:14  STARTUP.OBJ

     文件      18173  2007-05-22 08:17  task.c

     文件       3159  2007-05-20 17:20  task.h

     文件      39043  2014-08-05 11:14  task.LST

     文件      22173  2014-08-05 11:14  task.OBJ

............此处省略7个文件信息

评论

共有 条评论