51单片机的简单密码器
引言 2
一、 单片机与其相关软件 3
(一)什么是单片机 3
(二)keil软件 3
(三) Protel 99SE软件 4
(四) Proteus 软件 4
二、 密码器的设计方案 5
(一)设计的主要功能描述 5
(二)元器件清单 5
三、系统框图 6
(一)系统结构框图 6
四、 计算器原理图 6
(一) 硬件设计 6
(二) 矩阵系统 7
(三)AT24C02电路 7
(四) 蜂鸣器LED电路 8
(五) 液晶屏电路 9
五、软件的运行 11
(一)主程序设计流程图 11
(二)Proteus Pro 7.8仿真的使用 12
(三)keil软件的使用 12
六、困难与解决方案 13
(一) C程序 13
(二)软件的问题 13
(三) 实际操作 13
总结 14
参考文献 15
谢辞 16
附录 17
引言
当今社会是一个信息化的社会,处处都离不开各种各样的密码。作为一个学生我们也有着从游戏账号到银行密码等各式各样的密码。而单片机相当于一个微型的计算机(最小系统)的单片机就给了我们明确的目标,和计算机相比它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。而且,学习使用单片机是认识计算机原理和结构的很好的途径。所以我选择了以单片机来制作一个简单密码器的方案。 *好棒文|www.hbsrm.com +Q: ^3^5`1^9`1^6^0`7^2#
r /> 随着社会信息化的发展,人们开始对于信息安全更加重视,因为电子密码锁具有防盗报警等功能,所以逐渐代替了传统的机械锁。而单片机控制的密码锁不仅有电子密码锁的功能,还可以引入智能管理,专家分析等功能,从而使得电子密码锁更加安全可靠,所以他的使用也越来越广泛。
一、单片机与其相关软件
(一)什么是单片机
单片机是指一个集成在一块芯片上的完整计算机系统,虽然他的大部分功能集成在一块小芯片上,但是它具备一个完整计算机所需要的大部分原件:CPU、内存、内部与外部总线系统,现在大部分还有外存。它就相当于一个计算机,它具有体积小、质量轻、价格便宜、方便用于学习开发应用。单片机应用广泛,几乎无孔不入,目前已经应用到一下几个领域:(1)智能化家用电器(2)办公自动化设备(3)商业营销(4)工业自动化控制(5)智能仪表(6)智能化通信产品(7)汽车电子产品(8)航空航天系统和国防军事【1】
图1-1为单片机实物图
1-1 单片机实物图
(二)keil软件
Keil C51是美国Keil Software公司的51系列兼容单片机C语言软件开发系统。 Keil软件拥有丰富的库函数和强大的集成开发调试功能,全新Windows界面。通过该软件可以完成编辑,编译,仿真,连接,调试等整个开发流程。
现在经常使用的Keil C51开发系统是uVersion IDE版本,开发人员可以用IDE或其他编辑器编辑汇编或C语言程序,然后分别由A51或C51编译器编译生成目标代码(.OBJ)。目标文件可以由LIB51创建生成库文件,也可以与库文件一起经过L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换称标准的HEX文件,以供调试器(dScope51或tScope51)进行代码级调试,也可用仿真器直接对目标般调试,还可以直接写入程序存储器中。
Keil C5集成开发环境的主要工功能有以下几点:(1)RTX-51实时操作系统:简化了复杂的实时应用软件项目的设计。(2)C51国际准化C交叉编译器:从C源代码生成可以再次定位的目标模块。(3)LIB51库管理器:从目标模块生成连接器可以使用的库文件。(4)BL51链接器/定位器:组合由C51和A51产生可重新定位的目标模块,生成绝对目标模块。(5)A51宏汇编器:从89C51汇编源代码产生可重新定位的目标模块(6)OH51目标文件至HEX格式转换器,从绝对目标模块生成Intel Hex文件【2】
(三)Protel 99SE软件
这是一款我们比较熟悉的软件,简单的说他是Protel公司近十年来致力于Windows平台开发的最新结晶,能实现从电学概念设计到输出物理生产数据,以及之间的分析验证和设计数据管理。因此protel最新产品不仅仅是PCB设计工具,而是比较系统的工具,包括以PCB为核心的整个设计,它拥有以下几个功能:自动布线,PLD设计,自动布线等,原理图设计。
Protel 99 SE是第一个在桌面环境下拥有独到的设计管理与协作技术的 全面印制电路板设计系统。
它是基于Windows的完全32位EDA设计系统。Protel 99 SE采用了三大技术:SmartDoc、SmartTeam、SmartTool。这些技术把产品并发的三个方面有机的结合到了一起——人、由人建立的文件和建立文件的工具。
SmartDoc技术:所有文件全部存储在一个综合设计数据库里面。包括原理图、PCB、输出文件、材料清单。有其他设计文件如:使用注意事项、报表、电路图全部存储在一个综合设计数据库中,方便了对它们进行有效管理。
SmartTeam技术:全部的设计工具(原理图设计、电路仿真、PLD设计、PCB设计、自动布线、信号完整性分析以及文件管理器)都集中到一个独立的、直观的设计管理器界面上。
SmartTool技术:研发小组成员可以同时进入同一个设计数据库的综合信息,发布通告,锁定保护,确保整个研发小组的研发工作顺利。
(四)Proteus 软件
Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机 与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真 软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种编译器 。【4】
二、密码器的设计方案
(一)设计的主要功能描述
仿照世面上的“电子密码器”,密码为一个6位密码。以4*4按钮代替“电子密码器”中的0~9以及确定、清零、重置按钮即S1—S10为0—9,S11为清除S12为确定S13为重置。以LCD1602液晶屏代替“电子密码器”中的显示屏并用蜂鸣器来增强其实用性。当运行时液晶屏上显示Input password提示输入密码,初始密码为123456,当你输入错误时候可以按S11清零,当你输入正确可以点S12确定。如果密码码错误时LED小灯是不会亮的,并且蜂鸣器会发出警报,液晶屏上显示Input password error。如果密码正确,LED小灯会亮并且液晶屏上会显示Input password opening 。修改密码时候需要按S13,液晶屏上显示Input old code 也就是说修改密码需要事先输入一次旧密码,当旧密码输入对了,液晶屏上会提示Input new code,这是就可以输入新的密码了。输入密码的时候按键按下,蜂鸣器会响。
一、 单片机与其相关软件 3
(一)什么是单片机 3
(二)keil软件 3
(三) Protel 99SE软件 4
(四) Proteus 软件 4
二、 密码器的设计方案 5
(一)设计的主要功能描述 5
(二)元器件清单 5
三、系统框图 6
(一)系统结构框图 6
四、 计算器原理图 6
(一) 硬件设计 6
(二) 矩阵系统 7
(三)AT24C02电路 7
(四) 蜂鸣器LED电路 8
(五) 液晶屏电路 9
五、软件的运行 11
(一)主程序设计流程图 11
(二)Proteus Pro 7.8仿真的使用 12
(三)keil软件的使用 12
六、困难与解决方案 13
(一) C程序 13
(二)软件的问题 13
(三) 实际操作 13
总结 14
参考文献 15
谢辞 16
附录 17
引言
当今社会是一个信息化的社会,处处都离不开各种各样的密码。作为一个学生我们也有着从游戏账号到银行密码等各式各样的密码。而单片机相当于一个微型的计算机(最小系统)的单片机就给了我们明确的目标,和计算机相比它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。而且,学习使用单片机
r /> 随着社会信息化的发展,人们开始对于信息安全更加重视,因为电子密码锁具有防盗报警等功能,所以逐渐代替了传统的机械锁。而单片机控制的密码锁不仅有电子密码锁的功能,还可以引入智能管理,专家分析等功能,从而使得电子密码锁更加安全可靠,所以他的使用也越来越广泛。
一、单片机与其相关软件
(一)什么是单片机
单片机是指一个集成在一块芯片上的完整计算机系统,虽然他的大部分功能集成在一块小芯片上,但是它具备一个完整计算机所需要的大部分原件:CPU、内存、内部与外部总线系统,现在大部分还有外存。它就相当于一个计算机,它具有体积小、质量轻、价格便宜、方便用于学习开发应用。单片机应用广泛,几乎无孔不入,目前已经应用到一下几个领域:(1)智能化家用电器(2)办公自动化设备(3)商业营销(4)工业自动化控制(5)智能仪表(6)智能化通信产品(7)汽车电子产品(8)航空航天系统和国防军事【1】
图1-1为单片机实物图
1-1 单片机实物图
(二)keil软件
Keil C51是美国Keil Software公司的51系列兼容单片机C语言软件开发系统。 Keil软件拥有丰富的库函数和强大的集成开发调试功能,全新Windows界面。通过该软件可以完成编辑,编译,仿真,连接,调试等整个开发流程。
现在经常使用的Keil C51开发系统是uVersion IDE版本,开发人员可以用IDE或其他编辑器编辑汇编或C语言程序,然后分别由A51或C51编译器编译生成目标代码(.OBJ)。目标文件可以由LIB51创建生成库文件,也可以与库文件一起经过L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换称标准的HEX文件,以供调试器(dScope51或tScope51)进行代码级调试,也可用仿真器直接对目标般调试,还可以直接写入程序存储器中。
Keil C5集成开发环境的主要工功能有以下几点:(1)RTX-51实时操作系统:简化了复杂的实时应用软件项目的设计。(2)C51国际准化C交叉编译器:从C源代码生成可以再次定位的目标模块。(3)LIB51库管理器:从目标模块生成连接器可以使用的库文件。(4)BL51链接器/定位器:组合由C51和A51产生可重新定位的目标模块,生成绝对目标模块。(5)A51宏汇编器:从89C51汇编源代码产生可重新定位的目标模块(6)OH51目标文件至HEX格式转换器,从绝对目标模块生成Intel Hex文件【2】
(三)Protel 99SE软件
这是一款我们比较熟悉的软件,简单的说他是Protel公司近十年来致力于Windows平台开发的最新结晶,能实现从电学概念设计到输出物理生产数据,以及之间的分析验证和设计数据管理。因此protel最新产品不仅仅是PCB设计工具,而是比较系统的工具,包括以PCB为核心的整个设计,它拥有以下几个功能:自动布线,PLD设计,自动布线等,原理图设计。
Protel 99 SE是第一个在桌面环境下拥有独到的设计管理与协作技术的 全面印制电路板设计系统。
它是基于Windows的完全32位EDA设计系统。Protel 99 SE采用了三大技术:SmartDoc、SmartTeam、SmartTool。这些技术把产品并发的三个方面有机的结合到了一起——人、由人建立的文件和建立文件的工具。
SmartDoc技术:所有文件全部存储在一个综合设计数据库里面。包括原理图、PCB、输出文件、材料清单。有其他设计文件如:使用注意事项、报表、电路图全部存储在一个综合设计数据库中,方便了对它们进行有效管理。
SmartTeam技术:全部的设计工具(原理图设计、电路仿真、PLD设计、PCB设计、自动布线、信号完整性分析以及文件管理器)都集中到一个独立的、直观的设计管理器界面上。
SmartTool技术:研发小组成员可以同时进入同一个设计数据库的综合信息,发布通告,锁定保护,确保整个研发小组的研发工作顺利。
(四)Proteus 软件
Proteus是世界上著名的EDA工具(仿真软件
二、密码器的设计方案
(一)设计的主要功能描述
仿照世面上的“电子密码器”,密码为一个6位密码。以4*4按钮代替“电子密码器”中的0~9以及确定、清零、重置按钮即S1—S10为0—9,S11为清除S12为确定S13为重置。以LCD1602液晶屏代替“电子密码器”中的显示屏并用蜂鸣器来增强其实用性。当运行时液晶屏上显示Input password提示输入密码,初始密码为123456,当你输入错误时候可以按S11清零,当你输入正确可以点S12确定。如果密码码错误时LED小灯是不会亮的,并且蜂鸣器会发出警报,液晶屏上显示Input password error。如果密码正确,LED小灯会亮并且液晶屏上会显示Input password opening 。修改密码时候需要按S13,液晶屏上显示Input old code 也就是说修改密码需要事先输入一次旧密码,当旧密码输入对了,液晶屏上会提示Input new code,这是就可以输入新的密码了。输入密码的时候按键按下,蜂鸣器会响。
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jxgc/jdgc/1910.html