基于51单片机的排队叫号系统

资料编号:187

功能介绍:

实现医院或者银行各种场所的排队叫号辅助功能:

1、主机通过按键完成叫号,数码管显示被叫的号码;蜂呜器响,提醒顾客接受服务:

2、从机通过串行通信方式完成排队取号功能;

3、从机显示队列中排在其前面的顾客数

下面是部分程序展示:

void main()
{
    uchar k=0;
    SCON=0X50;            //设置为工作方式1
    TMOD=0X21;            //设置计数器工作方式2
    TH1=0XFD;            
    TL1=0XFD;
    ES=1;                        //打开接收中断
    TR1=1;                    //打开计数器

    TH0=(65536-1000)/256;
    TL0=(65536-1000)%256;    
    ET0=1;//打开定时器0中断允许
    EA=1;//打开总中断
    TR0=1;//打开定时器
    while(1)
    {
        //叫号
        if(!k1 &&(k!=1))
        {
            k=1;
            if(num2<num1)
            {
                 mode=1;
                num2++;
                SBUF=num2;while(!TI);TI=0;
                 beep_time=1000;
            }
            else
                mode=0;
             
        }
        //休息 
        if(!k2 &&(k!=2))
        {
             k=2;
             mode=0;
        } 
        //显示
        if(mode>0)
        {
            P0=0;duan=1;delay(1);duan=0;//消隐
            P0=0xfe;wei=1;delay(1);wei=0;//位选
            P0=smgduan[num2/10];duan=1;delay(1);duan=0;//数据
            delay(50);
            P0=0;duan=1;delay(1);duan=0;//消隐
            P0=0xfd;wei=1;delay(1);wei=0;//位选
            P0=smgduan[num2%10];duan=1;delay(1);duan=0;//数据
            delay(50);
        }
        else
        {
            P0=0x40;duan=1;delay(1);duan=0;//减号
            P0=0;wei=1;delay(1);wei=0;//位选
        }
        if(k1 && k2)
            k=0;
    }
}

下面是叫号机流程图

下面是取号机流程图

源文件分享下载链接:
https://mp.weixin.qq.com/s/rLyO3SiEvSKWXGN_K3DvQQicon-default.png?t=M85Bhttps://mp.weixin.qq.com/s/rLyO3SiEvSKWXGN_K3DvQQ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值