找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1881|回复: 0
收起左侧

基于stc11f60的RFID RC522程序

[复制链接]
ID:222044 发表于 2018-5-13 16:12 | 显示全部楼层 |阅读模式
RT:见附件
单片机源程序如下:
  1. #include "include.h"


  2. sbit FMQ=P3^4;

  3. sbit LED1=P1^0;
  4. sbit LED2=P1^1;
  5. sbit LED3=P1^2;

  6. void delay_ms( INT16U tms )
  7. {
  8.     INT16U i;

  9.     while( tms-- )
  10.     {
  11.             for( i = 0; i < 300; i ++ )
  12.             {
  13.             nop();
  14.             nop();
  15.             nop();
  16.             nop();
  17.             nop();
  18.             nop();
  19.             }
  20.     }
  21. }

  22. void init_port( void )
  23. {
  24. //    P0M1 = 0x00;
  25. //    P0M0 = 0xff;

  26.     P3M1 &= ~0x10;
  27.     P3M0 |= 0x10;
  28.     //
  29.     //        P1M1=0x00;
  30.     //        P1M0=0x00;
  31.     //
  32.     //        P2M1=0x00;
  33.     //        P2M0=0xff;
  34.     //
  35.     //        P30=1;
  36.     //        P3M1=0x41;
  37.     //        P3M0=0xa2;
  38.     //
  39.     //        P4M1=0x02;
  40.     //        P4M0=0x00;
  41.     BEEP_OFF;
  42.     LED_OFF;
  43. }

  44. void init_par( void )
  45. {
  46.     BEEP_OFF;
  47.     LED_OFF;
  48. }

  49. void init_wdt( void )         //2.7S
  50. {
  51.     //        WDT_CONTR = 0xC1;
  52.     //        WDT_CONTR = 0x3E;
  53. }

  54. void feed_wdt( void )
  55. {
  56.     //        WDT_CONTR = 0x3E;
  57. }

  58. void init_all(void)
  59. {
  60.     EA = 0;

  61.     init_timer();
  62.     init_uart();
  63.     init_port();
  64.     //    init_rc522();
  65.     init_par();
  66.     //    init_wdt();

  67.     EA = 1;
  68. }

  69. void delay(int ms)// 延时子程序
  70. {
  71.     char i;
  72.     while(ms--)
  73.     {
  74.         for(i=0;i<120;i++);
  75.     }
  76. }

  77. void ledc(int i)
  78. {
  79.     P1 |= i;
  80.     delay(2000);
  81.     P1 &= ~i;
  82.     delay(2000);
  83.     P1 |= i;
  84.     delay(2000);
  85.     P1 &= ~i;
  86. }

  87. void main(void)
  88. {

  89.     if((PCON&0x10)==0) //如果POF位=0
  90.     {
  91.        PCON=PCON|0x10;  //将POF位置1
  92.        IAP_CONTR=0x60;  //软复位,从ISP监控区启动
  93.     }
  94.     else
  95.     {
  96.        PCON=PCON&0xef;  //将POF位清零
  97.     }

  98.     lcdInitinal();
  99.     lcdMsg("创思通信",2,2);
  100.     lcdMsg("www.csgsm.com",4,1);
  101.     delay_ms(1000);
  102.     lcdInitinal();
  103.     delay_ms(2);
  104.     lcdMsg("蓝牙模块",1,2);
  105.     lcdMsg("www.csgsm.com",2,1);

  106.     init_all();
  107.     clear_buf_uart();

  108.     while(1)
  109.     {
  110.         delay_ms(500);
  111.         if(strlen(UartBuf)> 0)
  112.         {
  113.             if(strstr(UartBuf,"f1")!=NULL)
  114.             {
  115.                 pass();
  116. //                FMQ=1;
  117.                 delay_ms(1000);
  118.             }
  119.             if(strstr(UartBuf,"f0")!=NULL)
  120.             {
  121.                 warn();
  122. //                FMQ=0;
  123.                 delay_ms(1000);
  124.             }
  125.             if(strstr(UartBuf,"k11")!=NULL)
  126.             {

  127.                 LED1=0;
  128.             }
  129.             if(strstr(UartBuf,"k10")!=NULL)
  130.             {
  131.                 LED1=1;
  132.             }
  133.             if(strstr(UartBuf,"k21")!=NULL)
  134.             {
  135.                 LED2=0;
  136.             }
  137.             if(strstr(UartBuf,"k20")!=NULL)
  138.             {
  139.                 LED2=1;
  140.             }
  141.             if(strstr(UartBuf,"k31")!=NULL)
  142.             {
  143.                 LED3=0;
  144.             }
  145.             if(strstr(UartBuf,"k30")!=NULL)
  146. ……………………

  147. …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码

所有资料51hei提供下载:
5.程序代码(原版).zip (5.91 MB, 下载次数: 23)

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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