基于单片机的三层电梯系统设计
附录1 元件清单
序号 名称 型号 单位 数量 备注 1 2 3 4 5 电阻 电容 晶振 按键 7段显示数码管 10K 30P 12MHZ --- SM42038 支 支 支 个 个 1 3 1 8 2 6 7 8 9 10 11 12 电池盒 电池 导线及焊锡 自锁开关 排阻 单片机 万用板 --- --- --- --- 102 AT89C51 --- 个 节 --- 个 个 个 块 1 3 若干 1 2 1 1
1
基于单片机的三层电梯系统设计
附录2 程序部分
#include #define LCD1 P1 #define LCD2 P3
void Zero();
void Delay_ms(unsigned int Time);
void Display(unsigned int n,unsigned char a); void Flash(unsigned int Time); void KBScan(); void dl_ms(); void Destination(); void Up(); void Down();
//P2与查询式键盘硬件相连 sbit P2_0=P2^0; sbit P2_1=P2^1; sbit P2_2=P2^2; sbit P2_3=P2^3; sbit P2_4=P2^4; sbit P2_5=P2^5; sbit P2_6=P2^6;
unsigned int lift=1; /*电梯所在楼层*/
unsigned int status=1; /*电梯上行为1,下行为0*/ unsigned char request[3]={0,0,0}; /*1~3楼有无请求,有请求为1*/ unsigned char dst=1; /*电梯的目的楼层*/
//清零程序 void Zero() {
LCD1=0x00; LCD2=0x00; }
//延时程序,以毫秒为单位,用软件计时,输入的参数 void Delay_ms(unsigned int Time) {
unsigned int i=0,j=0;
2
基于单片机的三层电梯系统设计
for(i=0;i