历史上的今天
返回首页

历史上的今天

今天是:2024年10月22日(星期二)

正在发生

2019年10月22日 | avr单片机+RFID的门禁系统

2019-10-22 来源:51hei

设计文档:
 


单片机源程序如下:

/******************************************************************************************************************

程序名:      射频卡门禁系统

功能概述:

                         1、  点阵LCD(128*64)显示。在正常、设置情况下LCD显示系统各个时期的菜单以供选择。

                         2、  射频卡开锁,开锁时用射频卡放在读卡器上(距离<15CM)即可开锁,如果用非法卡连续刷写次数超过3

                              次则报警(报警功能没有添加),这时系统将关闭刷卡器30分钟,在30分钟后再允许刷卡。

                         3          本系统分为:

                                      1)、1个主机。

                                      2)、2个读卡头(一个在门外供刷卡用、一个在主机旁用于管理操作)

                         4、  本锁开锁时供电,平时断电(12V)。

                         5、  8个按键(AD转换采样取值)(设置、+、-、↑、↓、确认、返回、说明)

                         6、  每次按下键、刷卡时有峰鸣器指示

                         7、  LCD背光在有按键按下时、或刷卡时自动点亮,延时30秒关闭

                         8、  门外有人体红外传感器探头,发现2米内有人,自动进入预警状态,如果是在晚上超过7点钟,则点亮门前的灯泡照明,

                              如果此时有人破坏(比如取下灯泡、剪断灯炮的线、打烂灯泡)也要报警。否则、连续在门前超过1分钟,就开始报警。

                              (此功能没有添加)

                         9、  开门时发出“欢迎光临”,并提示关门(此功能没有添加)

                         10、 本机带有门铃,并能记录前10天门铃按下的次数。(此功能没有添加)

                         11、 LCD显示日期、星期、时间、室内温度、锁的状态、功能设置(菜单显示)等

                         12、 可以查询过去10天内的开门记录并由LCD显示出来(此功能没有添加)

                         13、 可以于电脑通过RS-232接口连接进行通信,监看门的状态、开门记录等,方便打印(此功能没有添加)

                         14、 要求锁误判率小于1PPM

                         15、 系统配有UPS(12V) 平时用UPS电能,只有当主机检测到电压低于11.5V时,自动接入火电进行充电。

                              电瓶充满时(大约5小时)自动断电。

                         16、 电压:12V   

                         17、 电流:待机时<50MA  


射频卡类型: 4001、EM4100和含E2PROM的RF卡。如E5550。

MCU类型:     ATmega16

晶振频率:    7.3728MHZ

版本:             V0.1

******************************************************************************************************************/

#include

#include

#include

#include"LCD_12864.H"                                                                                //LCD头文件

#include"read_card.H"                                                                                //读卡头文件

#define key_inc  (PINC&(1<#define key_dec  (PINC&(1<#define BAUDRATE        9600                                                                //波特率

#define F_CPU                        7372800                                                          //晶振频率

#define LCD_LAMP                60                                                                  //LCD默认30S后关闭

#define BATTERY_TIME        5                                                                        //每十分钟检测一次电池电量


#define ADC_PINA0                 0x00                                                                //ADC0                按键AD    单端通道,不放大

#define ADC_PINA1                 0x01                                                                //ADC1                温度采样

#define ADC_PINA2                 0x02                                                                //ADC2                电平电量检测


#define LCD_BACK_ON           PORTC&=~(1<#define LCD_BACK_OFF           PORTC|=(1<#define buzzer_on                  PORTD&=~(1<#define buzzer_off          PORTD|=(1<

#define charge_on                  PORTC&=~(1<#define charge_off          PORTC|=(1<


#define LOCK_ON                  PORTC&=~(1<#define LOCK_OFF                  PORTC|=(1<


#define CHARGE_STATUS          (PINC&(1<

#define null                 0

#define vref            5000                                                                                //AD转换参考电压

#define OVER_FLOW          10                                                                                //进入菜单设置时,如果在10S内没有按下任何键,则自动退出


#pragma data:code

//const uchar manage_card[5]={0x0b,0,0x2d,0x23,0x5f};                        //住房卡-----当作管理卡        

const uchar manage_card[5]={0x33,0,0x7c,0x09,0xb1};                        //000 8128945-----当作管理卡        

//*************************************************温度测定查表****************************************************        

//******************************************温度范围是:-30度----+99度*********************************************

const uint temp_1[130]={

                                                        4304,4270,4235,4198,4161,4122,4083,4042,4001,3958,

                                                        3914,3870,3824,3778,3731,3683,3635,3585,3535,3484,

                                                        3433,3381,3329,3276,3223,3169,3116,3062,3008,2953,

推荐阅读

史海拾趣

Anders DX公司的发展小趣事

Anders DX是一家专注于设计和制造显示解决方案的公司,以下是该公司发展的相关故事:

  1. 公司成立与初期阶段:Anders DX成立于2002年,总部位于英国霍尔特。公司的创始人包括Neil Jarvis和David Vallis,他们都在显示技术领域拥有丰富的经验。公司成立之初,主要从事自定义显示解决方案的设计和制造,为各种行业的客户提供定制化的显示产品。

  2. 技术创新与产品开发:Anders DX在其成立初期就致力于技术创新和产品开发。公司团队与客户紧密合作,根据客户的需求和应用场景,设计和制造各种类型的显示解决方案,包括液晶显示屏、触摸屏、OLED显示屏等。他们采用先进的制造工艺和技术,不断推出新产品,满足客户不断变化的需求。

  3. 客户合作与市场拓展:随着公司业务的发展,Anders DX与越来越多的客户建立了紧密的合作关系。公司的客户群涵盖了各个行业,包括医疗、工业、汽车、消费电子等领域。通过与客户的合作,Anders DX不断拓展产品的应用领域和市场份额,在行业内树立了良好的声誉。

  4. 全球布局与生产基地:为了更好地服务全球客户,Anders DX逐步在全球建立了生产基地和销售网络。除了在英国的总部外,公司还在亚洲和美洲地区设立了生产工厂和销售办事处,以满足不同地区客户的需求。这些生产基地拥有先进的设备和技术,能够为客户提供高质量的定制化显示解决方案。

  5. 持续发展与未来展望:作为一家专注于显示解决方案的公司,Anders DX将继续致力于技术创新和产品开发。公司将继续与客户紧密合作,不断推出适应市场需求的新产品,并不断提升生产效率和产品质量,以保持在行业内的竞争优势。同时,Anders DX也将继续关注行业的发展趋势和技术变革,及时调整战略,以确保公司持续健康发展。

Anpec(茂达)公司的发展小趣事

随着市场的不断变化和客户需求的日益多样化,茂达电子开始积极扩展产品线。除了原有的电源转换及电源管理IC外,公司还成功研发了放大器及驱动IC、离散式功率元件等系列产品。这些新产品的推出,不仅丰富了茂达电子的产品线,也为客户提供了更多样化的选择。

Aerovox Corporation公司的发展小趣事

为了适应全球化的市场趋势,茂达电子制定了全面的全球化战略。公司不仅加强了与国际市场的联系,还积极寻求与国际知名企业的合作机会。同时,茂达电子还加大了对海外市场的投入,通过设立海外分支机构、参加国际展会等方式,不断提升品牌知名度和市场影响力。

这五个故事只是Anpec(茂达电子)发展历程中的一部分,但它们充分展示了茂达电子在电子行业中的崛起和成就。作为一家具有创新精神和市场洞察力的企业,茂达电子将继续致力于为客户提供优质的产品和服务,推动电子行业的持续发展。

Good-Ark公司的发展小趣事
用于将处理后的信号与预设的阈值进行比较,以确定是否需要触发报警。
CLANDELL公司的发展小趣事

在电子产品市场日益同质化的背景下,CLANDELL公司意识到技术创新的重要性。公司投入大量资源研发新型电子元件,通过优化设计和材料选择,成功推出了具有更高性能、更低能耗的电子产品。这一创新不仅提升了CLANDELL公司的市场竞争力,也为整个行业带来了技术进步的推动力。

ERP公司的发展小趣事

为了进一步拓展市场和提高竞争力,电子智链开始寻求与其他企业建立生态合作关系。公司与多家电子制造设备供应商、原材料供应商和物流服务商建立了战略合作关系,共同打造了一个覆盖电子产业全链条的生态圈。这一合作模式不仅为客户提供了更加全面和高效的解决方案,还促进了整个电子产业的协同发展。

问答坊 | AI 解惑

户用电热式热能量表的合作与开发

户用电热式热能量表的合作与开发 一、合作内容 针对我国户用热能量表市场提出的一种全新的户用电热式热能量表,以电热方式,对热能量以公平公正的方式进行交换,摆脱了供热与用热双方对以往使用的户用机械旋翼式热能量表所出现的困扰 ,即计量 ...…

查看全部问答>

sst 单片机

这是我们做单片机的出租车的计价器用到的,很便宜,还算实用!…

查看全部问答>

光传感器TSL12S 资料

光传感器TSL12S 资料…

查看全部问答>

想做私活的进!!!!!!

http://www.yateshi.com/community/member_register.php?uid=73801 想做私活的,只要注册用户就可以发布服务,就会有人找你,我试过了,真的不错…

查看全部问答>

驱动已加载到BuiltIn中, 为什么CreateFile 打不开?

           驱动已加载到BuiltIn中, 为什么应用程序用CreateFile(L\"IRB0:\", ...) CreateFile(L\"IRB1:\", ...) 打不开? 要如何操作?            ========== ...…

查看全部问答>

WinCE下一个与CxImage有关的问题

原来我在VC程序中用CxImage类时编译及链接都没有问题,但是将程序移植到WinCE平台中编译没有问题,但是在链接的时候总出错: error LNK2019: 无法解析的外部符号 \"public: bool __cdecl CxImage::Load(char const *,unsigned long)\" (?Load@CxIm ...…

查看全部问答>

Modelsim后仿需要什么文件?除了sdf

现在手上有布图工具导出的.sdf文件,和门级网表.v,还有工艺文件.lib,在仿真设置里我添加了.sdf,但没办法编译,说找不到门级网表那些单元。该怎样把.lib转为modelsim可以编译的格式呢?要做什么特别的设置吗?谢谢!…

查看全部问答>

关于加载描述符

本帖最后由 dontium 于 2015-1-23 13:34 编辑 我用的是5416的开发板,自己做拉一块板子,想对USB口进行测试, 就用的开发板自带的USB测试程序,但是运行到 load descriptors时候就停止拉 出错拉,而且用USB线连接自己的板子电脑没反映,不知道这 ...…

查看全部问答>

铁电 vs LaunchPad !

我认为的特点 铁电MSP-EXP430FR5739 MSP430 LaunchPad  铁电 RAM    3轴加速计 快速 便宜 挑战8位? 开源项目 生产就绪型, 无需外部电源 主要 IDE 是免费且非 ...…

查看全部问答>