|
新人学习,stc系列的51单片机做的六位密码锁控制54步进电机自动开门源程序。用的普通的开发板,希望大家多多指导
单片机源程序:
- #include"reg52.h"
- #include"1602.h"
- #include"key.h"
- #include"54power.h"
- #define uint unsigned int
- #define uchar unsigned char
- void UsartInit() //串口初始化函数
- {
- SCON=0X50; //设置为工作方式1
- TMOD=0X20; //设置计数器工作方式2
- PCON=0X80; //波特率加倍
- TH1=0XF3; //计数器初始值设置,波特虑4800
- TL1=0XF3;
- ES=1; //打开接收中断
- EA=1; //打开总中断
- TR1=1;
- }
- void main()
- {
- int i = 0;
- UsartInit(); //中断初始化
- init(); //1602初始化
- while(n)
- {
- t = 0;
- printfstart(); //1602第一行输出“Welcome back ! "
- printf(); //通过串口1602显示屏显示输入的六位密码
- write_com(0x0C); //开显示屏,光标不显示
- check(); //检测输入的六位密码,正确灯亮
- write_com(0x0F); //开显示屏,光标显示
- write_com(0x01);
- }
- while(1);
- }
- void timeint(void) interrupt 1
- {
- TH0=0xFE;
- TL0=0x0C; //设定时每隔0.5ms中断一次
- count++;
- spcount--;
- if(spcount<=0)
- {
- spcount = speedlevel;
- gorun();
- }
- // turn = 1;
- // step_index = 7;
- // gorun();
- // step_index = 7;
- // gorun();
- }
- void Usart() interrupt 4
- {
- receiveData[t++] = SBUF;
- RI = 0;
- SBUF = receiveData[t-1]; //将接收到的数据放入发送寄存器
- while(!TI); //等待数据发送完成
- …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
全部资料下载:
门禁.rar
(46.16 KB, 下载次数: 30)
|
评分
-
查看全部评分
|