资源简介

1、全自动检测人员靠近和测量体温,过程中无需操作本系统,仅需在PROTEUS软件中调整环境值。使用GP2D12红外测距传感器测量人员接近距离(PROTEUS软件中可点击GP2D12模块上的“ ”和“-”调整环境值),若测量距离小于等于设定距离,说明有人接近,开始测量体温。使用DS18B20传感器测量人体温度(PROTEUS软件中可点击GP2D12模块上的“ ”和“-”调整环境值),若测量的体温小于等于设定值,说明人员健康,驱动电磁锁开门。人员离开后,自动关闭电磁锁。若测量的体温大于设定值,则闪灯并响铃警报,该警报只能在状况恢复正常时点击“解除警报”按钮解除。
2、点击“设置”按钮,多次点击“设置”可在距离、温度之间切换。进入设置页面,页面上方显示当前的设置参数,按数字键时下方会显示输入,按确定键确认输入,若数值正确(距离10~80,温度30~45)则完成更改。按“返回”键退出设置界面。
3、点击“输入密码”按钮,输入管理员密码(“8888”,可在代码中修改),点击确认,可以立即打开门锁并不会自动关闭。点击“关门”按钮后,当人员离开门(距离大于设定值)后,门自动关闭。
4、预留了串口功能,可以上位机或者别的模块通信,协同工作。

资源截图

代码片段和文件信息

#include “1602.h“
/*******************************************
    LCD1602 Driver mapped as IO peripheral
*******************************************/  
// Delay
void delay(unsigned int j)
{ unsigned char i = 60;
   for(; j>0; j--)
    { while(--i);
      i = 59;
      while(--i);
      i = 60;
    }
}

// Test the Busy bit
void check_busy(void)
 { do
    { LCD_Data = 0xff;
      LCD_E = 0;
      LCD_RS = 0; 
      LCD_WR = 1;
      LCD_E = 1;
      _nop_();
    } while(LCD_Data & 0x80);
   LCD_E = 0;
 }

// Write a command
void write_command(unsigned char com)
 { check_busy();
   LCD_E = 0;
   LCD_RS = 0;
   LCD_WR = 0;
   LCD_Data = com;
   LCD_E = 1;
   _nop_();
   LCD_E = 0;
   delay(1);
 }

// Write Data
void write_data(unsigned char datad)
 { check_busy();
   LCD_E = 0;
   LCD_RS = 1;
   LCD_WR = 0;
   LCD_Data = datad;
   LCD_E = 1;
   _nop_();
   LCD_E = 0;
   delay(1);   
 }

// Initialize LCD controller
void LCD_init(void

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2020-05-12 16:13  AT89C51 temp_manager\keil\
     文件        2018  2020-04-26 20:12  AT89C51 temp_manager\keil\1602.c
     文件         926  2019-11-10 19:28  AT89C51 temp_manager\keil\1602.h
     文件       93345  2020-05-12 16:13  AT89C51 temp_manager\keil\51_temp_manager.uvgui.yiqiu
     文件        8478  2020-05-12 10:12  AT89C51 temp_manager\keil\51_temp_manager.uvopt
     文件       15869  2020-05-12 10:12  AT89C51 temp_manager\keil\51_temp_manager.uvproj
     文件        1089  2020-05-12 15:05  AT89C51 temp_manager\keil\adc0809.c
     文件         333  2020-05-12 11:58  AT89C51 temp_manager\keil\adc0809.h
     文件        3713  2020-05-12 15:05  AT89C51 temp_manager\keil\ds18b20.c
     文件         183  2020-05-12 10:24  AT89C51 temp_manager\keil\ds18b20.h
     文件        2351  2020-04-29 00:27  AT89C51 temp_manager\keil\key.c
     文件         545  2019-11-09 14:16  AT89C51 temp_manager\keil\key.h
     目录           0  2020-05-12 15:36  AT89C51 temp_manager\keil\Listings\
     文件        4265  2020-04-26 20:12  AT89C51 temp_manager\keil\Listings\1602.lst
     文件       37126  2020-05-12 15:36  AT89C51 temp_manager\keil\Listings\51_temp_ctrl.m51
     文件       28373  2020-04-26 18:14  AT89C51 temp_manager\keil\Listings\51calculator.m51
     文件        2687  2020-05-12 15:05  AT89C51 temp_manager\keil\Listings\adc0809.lst
     文件        6874  2020-05-12 15:05  AT89C51 temp_manager\keil\Listings\ds18b20.lst
     文件        4647  2020-04-29 00:27  AT89C51 temp_manager\keil\Listings\key.lst
     文件       11476  2020-05-12 15:36  AT89C51 temp_manager\keil\Listings\main.lst
     文件       14149  2019-11-11 18:12  AT89C51 temp_manager\keil\Listings\STARTUP.lst
     文件        5411  2020-05-12 16:12  AT89C51 temp_manager\keil\main.c
     目录           0  2020-05-12 15:36  AT89C51 temp_manager\keil\objects\
     文件         116  2020-04-26 20:12  AT89C51 temp_manager\keil\objects\1602.__i
     文件        6031  2020-04-26 20:12  AT89C51 temp_manager\keil\objects\1602.obj
     文件       30535  2020-05-12 15:36  AT89C51 temp_manager\keil\objects\51_temp_ctrl
     文件        1060  2020-05-12 15:36  AT89C51 temp_manager\keil\objects\51_temp_ctrl.build_log.htm
     文件       10613  2020-05-12 15:36  AT89C51 temp_manager\keil\objects\51_temp_ctrl.hex
     文件         212  2020-05-12 15:36  AT89C51 temp_manager\keil\objects\51_temp_ctrl.lnp
     文件       24242  2020-04-26 18:14  AT89C51 temp_manager\keil\objects\51calculator
     文件        1190  2020-04-26 18:14  AT89C51 temp_manager\keil\objects\51calculator.build_log.htm
............此处省略16个文件信息

评论

共有 条评论