EDABOSS电子论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 596|回复: 2

[资料共享] stc51单片机做的六位密码锁控制54步进电机自动开门 源程序

[复制链接]

48

主题

0

回帖

399

E币

技术员

Rank: 2

积分
96
发表于 2017-5-5 13:10:10 | 显示全部楼层 |阅读模式
单片机源程序:
  1. #include"reg52.h"
  2. #include"1602.h"
  3. #include"key.h"
  4. #include"54power.h"

  5. #define uint unsigned int
  6. #define uchar unsigned char

  7. void UsartInit()                                    //串口初始化函数
  8. {
  9.         SCON=0X50;                                                           //设置为工作方式1
  10.         TMOD=0X20;                                                          //设置计数器工作方式2
  11.         PCON=0X80;                                                                //波特率加倍
  12.         TH1=0XF3;                                                                        //计数器初始值设置,波特虑4800
  13.         TL1=0XF3;
  14.         ES=1;                                                                                        //打开接收中断
  15.         EA=1;                                                                                        //打开总中断
  16.         TR1=1;        
  17. }

  18. void main()
  19. {
  20.         int i = 0;        
  21.         UsartInit();                                  //中断初始化
  22.         init();                                 //1602初始化
  23.         while(n)
  24.         {
  25.                 t = 0;
  26.                 printfstart();                        //1602第一行输出“Welcome back ! "
  27.                 printf();                             //通过串口1602显示屏显示输入的六位密码
  28.                 write_com(0x0C);                      //开显示屏,光标不显示
  29.                 check();                                    //检测输入的六位密码,正确灯亮
  30.                 write_com(0x0F);                      //开显示屏,光标显示
  31.                 write_com(0x01);
  32.         }
  33.         while(1);
  34. }

  35. void timeint(void) interrupt 1
  36. {
  37.         TH0=0xFE;
  38.         TL0=0x0C;                     //设定时每隔0.5ms中断一次
  39.         count++;
  40.         spcount--;
  41.         if(spcount<=0)
  42.         {
  43.                 spcount = speedlevel;
  44.                 gorun();
  45.         }
  46. //        turn = 1;
  47. //        step_index = 7;
  48. //        gorun();
  49. //                        step_index = 7;
  50. //                gorun();
  51. }

  52. void Usart() interrupt 4
  53. {
  54.         receiveData[t++] = SBUF;
  55.         RI = 0;
  56.         SBUF = receiveData[t-1];                      //将接收到的数据放入发送寄存器
  57.         while(!TI);                                   //等待数据发送完成


  58. …………限于本文篇幅 余下代码请从论坛下载附件…………
复制代码


捕获.PNG

全部资料下载:
门禁.rar (46.16 KB, 下载次数: 3)


积分规则
回复

使用道具 举报

0

主题

100

回帖

33

E币

技术员

Rank: 2

积分
100
发表于 2019-1-4 22:47:49 | 显示全部楼层
謝謝........................
Conseil des pharmaciens [url=https://www.viagrasansordonnancefr.com/]viagrasansordonnancefr.com[/url
回复

使用道具 举报

0

主题

100

回帖

33

E币

技术员

Rank: 2

积分
100
发表于 2019-1-4 22:49:02 | 显示全部楼层
分享謝謝
Conseil des pharmaciens [url=https://www.viagrasansordonnancefr.com/]viagrasansordonnancefr.com[/url
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|EDABOSS电子论坛

GMT+8, 2024-4-23 16:38 , Processed in 0.043275 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表