毕业设计(论文)基于51单片机的硬件加密锁的设计与实现_第1页
毕业设计(论文)基于51单片机的硬件加密锁的设计与实现_第2页
毕业设计(论文)基于51单片机的硬件加密锁的设计与实现_第3页
毕业设计(论文)基于51单片机的硬件加密锁的设计与实现_第4页
毕业设计(论文)基于51单片机的硬件加密锁的设计与实现_第5页
已阅读5页,还剩79页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、(输入章及标题)毕业设计(论文) 基于51单片机的硬件加密锁的设计与实现 学 院 年级专业 03电信3班 学生姓名 指导教师 专业负责人 答辩日期 6月24日 iii大学毕业设计(论文)任务书学院:里仁学院 系级教学单位:电子与通信工程系 学号3学生姓名专 业班 级2003级电子工程系3班题目题目名称基于51单片机的硬件加密锁的设计与实现题目类型工程设计实验研究型题目性质实际题目来源自选主要内容随着pc级的普及各种不同功能的计算机软件相继产生,使pc机的功能不段增强,方便了人们的学习,工作和生活。但是在利益的驱使下,软件盗版,盗用现象日益严重。如何保护软件开发者的知识产权和经济利益,保证正版软

2、件用户的权益,是一个亟待解决的问题。单纯的软件加密显然是不够的。因此我们需要一种更为有效的硬件加密方式。本设计要求基于51系列单片机设计出一种硬件加密锁,并加以实现。基本要求1.查阅与课题相关的文献,了解硬件“看门狗”的作用及工作原理2实现硬件电路 3.实现单片机软件算法4编制一个简单的demomcs-51单片机应用设计 张毅刚编 哈尔滨工业大学出版社 1990.8mcs-51单片机应用设计 张毅刚等编 哈尔滨工业大学出版社 1992.4单片机原理及系统设计胡汉才编著 清华大学出版社 2002周 次14周58周912周1316周1718周应完成的内容查阅资料熟悉内容硬件设计单片机程序设计软硬件

3、联合调试撰写论文指导教师:李林职称:讲师 年 月 日系级教学单位审批: 年 月 日说明:如计算机输入,表题黑体小三号字,内容五号字。本任务书一式二份,教师、学生各执一份。 摘要摘 要单片机是把主要计算机功能部件都集成在一块芯片上的微型计算机。单片机即单片微型计算机(single-chip microcomputer ),是集cpu ,ram ,rom ,定时,计数和多种接口于一体的微控制器。其中51单片机是各种单片机中最为典型和最有代表性的一种,广泛应用于各个领域。 本课题选择mcs-51单片机为核心控制元件,设计了一个日常生活中用到的硬件加密锁系统。该系统是由单片机系统及max232组成。使

4、用单片机汇编语言进行编程,实现了硬件加密锁的功能本论文主要介绍了硬件加密锁的软、硬件部分的设计,以及在设计、调试过程中遇到的问题及解决方案。经过实践证明,本课题设计的该系统结构简单,稳定,造价成本低,功能完全,具有很强的实用性。关键词8051单片机;硬件加密锁系统;max2327abstractthe single slice machine is the microcomputer which all integrates main calculator function partses on a piece of chip.single slice machine namely singl

5、e slice microcomputer(the microcomputer of the single-chip), gather cpu, ram, rom, count to connect in the tiny controller of integral whole with variety in fixed time.among them 51 single slice machines is various single slice machine in is a typical model most and have representative 1 kind most ,

6、 extensively applied in each realm.this topic choice mcs-51 single slice machine is a core control component, designed a daily life convenient arrive of the hardware encrypt lock system.that system constitutes to°from single slice machine system and max232.using the single slice machine edits c

7、ollected materials language to carry on weaving a distance, the function which carries out hardware to encrypt a lock originally the thesis mainly introduced hardware to encrypt to lock of soft, the design of hardware part, and meet in the design, adjust try the process of the problem and the soluti

8、on.pass by to practice a certificate, the system's structure ofwith this topic design simple, stabilize, build price cost low, function complete, have very strong function.keywords single chip computer 805151 the hardware encrypts lock system max232目 录摘 要iabstractii第1章绪论11.1课题背景11.1.1 课题的国内外现状11

9、.1.2 课题的发展趋势31.1.3 本文研究的主要内容71.2 本章小结7第2章总体方案与论证52.1 8051单片机52.1.1 8051的介绍52.2 本章小结11第3章硬件电路设计113.1 设计部分113.1.1 硬件部分113.4本章小结17第4章软件电路设计194.1程序框图194.1.1软件系统中的主程序流程图194.1.2软件电路设计204.2 系统调试204.3 测试过程214.4本章小结21结 论23参考文献24附录125附录231附录334附录447致谢1第1章绪论 第1章绪论1.1 课题背景1.1.1 课题的国内外现状 随着pc机的普及,各种不同功能的计算机软件相继产

10、生,使pc机的功能不断增强,方便了人们的学习,工作,和生活。但是在利益的驱使下,软件盗版盗用的现象日益严重。如何保护软件开发者的知识产权和经济利益,保证正版软件用户的利益是一个急需解决的问题。单纯的软件加密显然是不够的。因此我们需要一种更为有效的硬件加密方式。硬件加密锁,俗程“加密狗”。它通过硬件设备实现防止软件在使用过程中被非法复制和盗版。在当今中国市场上最主要的加密锁品牌有:1。美国彩虹公司(也是最早做硬件加密的公司)的国产品牌“加密狗”、美国品牌“圣天诺软件加密锁”;2。阿拉丁的“hasp”系列加密锁;3。德国威博公司的“wbukey”加密锁;4。深思洛克的“深思加密锁”;5。蓝宇风公司

11、的“金盾加密锁”;6。飞天公司的“rockey”加密锁等几个主要品牌。以上加密锁品牌的工作原理都是大同小异:被保护的软件加密锁之间形成一一对映的关系,被保护的软件在运行的过程当中不断通过其api函数向加密锁发指令来判断加密锁是否存在于,软件离开保护锁不能运行。第一代硬件保护锁,只是通过一个简单查询函数来验证并口的硬件保护锁是否存在,存在则程序继续运行,不再则软件终止运行,来完成并保护软件开发商的利益;第二代的硬件加密锁与第一代的产品相比较最大的改变在于加密锁硬件里头的运算芯片由rainbow公司写入了一个固定的“加密算法”,但这个算法是单一的固定的。以上两种产品对于软件开发商来说有一个相当大的

12、风险。如果rainbow把相同的产品出售给别人的话,别人拿到这个加密锁就能使用开发商的软件;第三代的硬件加密产品,这种产品彻底解决了软件开发商的后顾之忧。这种产品其运算芯片中内置了28种算法,共分为56个单元,每两个单元可以单独保护一个应用程序,故用rainbow公司的说法其一把锁可以保护28个应用程序;且这种加密锁的每个算法单元所采用的算法因子是由软件开发商自己设定的,当其写入加密锁后对于外界来说就相当于一个暗箱,是任何人也读不出来的。但随着解密者的技术的不断提高,rainbow中国公司研发出了第四代的产品智能狗,与现今的差不多所有品牌的加密锁相比较,这种狗有了一个质的飞跃:其通过在开发过程

13、中把一段代码加密后写入加密狗,当程序运行时再把加密狗里的代码在加密狗里自行运行,程序调用其运算结果来完成软件的加密,如此就从理论上杜绝了软件被破解的可能。 现在市面上的加密狗的工作原理不外乎rainbow的这两种形式:1、程序发命令查询加密狗运算后相应程序;2、把源代码放入加密狗内部执行。1.1.2 课题的发展趋势盗版既是软件行业的问题,也是一个社会问题。 在软件行业,所有的软件开发商、销售商都为来自光盘、来自internet的全球范围内的软件盗版而困扰。从软件使用者的角度来讲,往往只看到购买盗版“所占到的便宜”,而忽视了服务无法保证、系统安全风险等诸多问题的存在,也正是由于这种“忽视”,在很

14、大程度上限制了软件产业特别是民族软件产业的成长。我们回想一下有多少软件企业被盗版而扼杀在摇篮里?又有多少企业倒在了反盗版的路上?软件企业要生存,软件行业要持续、健康发展,因此软件保护才应运而生,大部分软件商最初采用的保护方式主要是软加密,主要有密码方式、 软件自校验方式和钥匙盘方式等纯软件的手段,但是随着软件保护行业的发展,解密技术也随之出现并快速的发展起来,软加密的方式已经“不堪一击”;在这种情况下,依赖于硬件的保护开始被广泛应用,成为最常用的保护手段。加密卡、加密狗(加密锁)等也成为了软件保护技术进步下的产物。 但是,加密与解密的斗争是永无休止的;很快,普通的硬件保护技术受到了挑战!于是,

15、 2001年以后,软件保护行业形成一轮新的技术升级浪潮,突破性地在金融、军队、网络身份认证等对安全性、稳定性要求极高的领域广泛使用的智能卡(smart card)技术来对商业软件的进行保护。以智能卡技术为核心构建的新一代的软件保护系统,对用户的软件代码和重要数据提供了全方位、高安全度的保护,被称为软件盗版的“终结者”。在与盗版的激烈斗争中,中国软件保护行业市场逐步形成并在市场的强烈激发和需求下快步的蓬勃发展,深思洛克、阿拉丁、彩虹天地(现为美国赛孚耐)等都是其中的佼佼者。 时至今日,在以智能卡技术为基础构建的软件保护技术已经非常完善,以深思洛克的代表产品-精锐iv加密锁为例。她所采用的芯片是目

16、前国际上唯一通过eal5+的安全芯片,以其优秀的防物理攻击、电子探测功能为加密锁提供了一个安全的“芯”。利用她强大的处理能力,软件开发商可以将软件中一段或几段关键的代码移植到加密锁中运行,或将软件运行所需的关键数据保存在锁内,外部软件通过接口函数访问硬件中的关键代码或数据,由于这些代码和数据在pc端没有副本存在,解密者根本无从猜测算法或窃取数据。然而,就在软件保护行业正在为技术变革带来的高安全性而欣喜的时候,软件开发商却提出了新的需求要求加密锁将软件销售渠道、加密锁生产、发行管理起来。目前,我国软件开发商大多采用代理制、分销制的发行方式,在享受其带来的诸多优势的同时,也给软件发行管理带来了诸多

17、问题,而这是传统加密锁根本无法解决的,事实证明所谓的这类普通加密锁已经在逐渐失去其存在的价值和意义。 首先,如果软件开发商是采用传统加密锁进行软件保护的,那么在软件升级及功能更新时候,必须将加密锁通过邮寄的方式往返于软件开发商和最终用户,这种方式大大增加了运输和管理成本;其次传统加密锁采用的是普通的单片机,所以单纯从硬件来说很难抵御目前快速发展的解密技术攻击,硬克隆这种完全的破解对于解密者来说也并非难事,传统的加密锁存在极大的被解密的风险;另外,传统的加密锁由于天生的安全缺陷,无法帮助软件企业对发行渠道进行有效地控制和管理,所以对渠道过程中“兼守自盗”束手无策,然而往往一些软件的盗版压力就来自

18、发行渠道。 基于以上亟待解决的问题,深思洛克率先在 2002年推出基于安全智能卡芯片的高强度加密锁,辅以及安全、高效的加密解决方案,使数千套软件得到安全无忧的保护,并利用智能卡所具有的网络安全特质,将加密锁的远程升级功能,以及软件授权管理功能赋予了安全的智能卡加密锁,从而成功的解决了软件企业及软件保护行业共同面临的难题。 如果说智能卡加密锁的安全解决方案以及“远程更新”技术是实现软件销售管理的基础,那么授权管理技术则是这一应用得以实现的保障。他不仅可以成功解决软件企业眼前的难题,更重要的是基于软件授权管理可以打造全新的软件销售模式,为软件行业带来革命性的进步。客户可以根据自己的需求按使用时间或

19、使用次数定制软件,也可以按自己的要求定制使用的软件种类与模块组合,客户只需要为自己必须的应用功能或服务付款;并通过试用,确定符合自己的需求的基础上,购买服务,并通过远程开通来使用这种服务! 可见,新的“加密锁整体保护方案”与传统“软件加密”有太大不同。首先,软件企业利用这种管理模式可以非常方便的管理自己的销售渠道和最终用户;其次,消费者可以通过远程申请使用满足自己需求的软件模块,并且不需要初期昂贵的投资,而仅仅需要按次或按时支付固定的费用。 可以预见,软件租赁服务一旦成为软件销售的主流形式,对软件保护行业来说,则意味着许多商业机会,如财务、crm、hr等需要较多服务的管理类软件或建筑类、娱乐类

20、对安全有较高要求,对客户信息需要管理的软件采用传统的加密已远远无法满足需求!大多数软件企业将采用这种新的管理模式,软件企业关心的将不仅仅是盗版问题,而是在软件安全的情况下如何提高服务质量、如何轻松实现渠道、客户信息的可控管理、如何保证授权管理的高安全性1.1.3 本课题研究的主要内容本设计目的使学生熟练掌握mcs-51本操作和调试程序的各种指令。熟悉编程及调试程序的方法。掌握8051的工作原理和应用编程方法,练习编写中断程序的方法。掌握8051的工作原理、工作方式及其应用编程。本设计的要求:1.查阅与课题相关的文献,了解硬件“看门狗”的作用及工作原理2.实现硬件电路3.实现单片机软件算法4.编

21、制一个简单的demo1.2 本章小结本章简单介绍了本次设计的课题国内外现状和发展趋势和研究的主要内容,为以后的设计的设计作好准备。第2章总体方案与论证 第2章总体方案与论证2.1 8051单片机 2.1.1 8051简介8051系列单片机是8051是mcs-51系列单片机的典型产品,美国atmel公司前些年推出的一种新型高性能低价位、低电压低功耗的8位cmos微型计算机。     8051单片机包含中央处理器、程序存储器(rom)、数据存储器(ram)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线

22、,现在我们分别加以说明: 下图是mcs-51系列单片机的内部结构示意图。 中央处理器:     中央处理器(cpu)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,cpu负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。 存储器:单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(harvard)结构,另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的结构,即普林斯顿(princeton)结构。intel的mcs-51系列单片机采用的是哈佛结构的形式,而后

23、续产品16位的mcs-96系列单片机则采用普林斯顿结构。8051单片机的存储器在物理结构上分为程序存储器空间和数据存储器空间,共有4个存储空间:片内程序存储器、片外程序存储器以及片内数据存储器、片外数据存储器空间。这种程序存储和数据存储分开的结构形式被称为哈佛结构。但从用户的角度,8051存储器地址空间可分为3类:片内、片外统一编址0000hffffh的64kb程序存储器地址空间(用16位地址);64kb片外数据存储器地址空间,地址也从0000hffffh(用16位地址)编址;256b片内数据存储器地址空间(用8位地址)。 上述4个存储空间地址是重叠的,如图所示。8051的指令系统设计了不同的

24、数据传送指令以区别这4个不同的逻辑空间:cpu访问片内、片外rom指令用movc,访问片外ram指令用movx,访问片内ram指令用mov。 数据存储器(ram):     8051内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的的ram只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。 程序存储器(rom):  8051共有4096个8位掩膜rom,用于存放用户程序,原始数据或表格。程序存储器用于存放编好的

25、程序和表格常数。程序通过16位程序计数器寻址,寻址能力为64kb。这使得指令能在64kb的地址空间内任意跳转,但不能使程序从程序存储器空间转移到数据存储器空间。实际上,当引脚ea接高电平时,8051的程序计数器pc执行片内rom中的程序,当指令地址超过片内rom地址时,就自动转向片外rom中去取指令。当引脚ea接低电平(接地)时,8051片内rom不起作用,cpu只能从片外rom中取指令,地址可以从0000h开始编址。8051从片内程序存储器和片外程序存储器取指时的执行速度相同。 定时/计数器(rom): 8051不仅有丰富的可用端口,其还内含有两个16位的计时器/定时器,称为计数器

26、to及计数器t1,以实现定时或计数产生中断用于控制程序转向。其主要作用有两点:第一,做一段特定时间长短的计时。第二,可以计算由to或tl引脚的输入脉冲数。前者在应用上可以产生正确的时间延迟及定时去执行中断服务程序,这是mcu在软件控制程序上常用到的技巧,而后者的应用则是计数器或是频率计的设计。这两个计数器本身都有4种工作模式可以选用: 模式0:13位计时工作模式 模式1:16位计时工作模式 模式2:具有从新载入计数值的8位计时模式 模式3:计数器tl停止计时工作,而计数器0分为两个独立的8位计数器由tlo和tho来负责计时工作。计数器的初值设定是由下面的公式来计算的,设c为要计数的次数则: 并

27、行输入输出(i/o)口:     8051共有4组8位i/o口(p0、 p1、p2或p3),用于对外部数据的传输。p0口有三个功能: 1、外部扩展存储器时,当做数据总线(如图1中的d0d7为数据总线接口) 2、外部扩展存储器时,当作地址总线(如图1中的a0a7为地址总线接口) 3、不扩展时,可做一般的i/o使用,但内部无上拉电阻,作为输入或输出时应在外部接上拉电阻。 p1口只做i/o口使用:其内部有上拉电阻。 p2口有两个功能: 1、扩展外部存储器时,当作地址总线使用 2、做一般i/o口使用,其内部有上拉电阻; p3口有两个功能: 除了作为i/o使用外(

28、其内部有上拉电阻),还有一些特殊功能,由特殊寄存器来设置。 全双工串行口:     8051内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。 8051单片机的串行端口有4种基本工作方式,通过编程设置,可以使其工作在任一方式,以满足不同应用场合的需要。其中,方式0主要用于外接移位寄存器,以扩展单片机的io电路;方式1多用于双机之间或与外设电路的通信;方式2、3除有方式1的功能外,还可用作多机通信,以构成分布式多微机系统。 串行端口有两个控制寄存器,用来设置工作方式、发送或接收的状态、特征位

29、、数据传送的波特率(每秒传送的位数)以及作为中断标志等。串行端口有一个数据寄存器sbuf(在特殊功能寄存器中的字节地址为99h),该寄存器为发送和接收所共同。发送时,只写不读;接收时,只读不写。在一定条件下,向阳uf写入数据就启动了发送过程;读sbuf就启动了接收过程。 串行通信的波特率可以程控设定。在不同工作方式中,由时钟振荡频率的分频值或由定时器tl的定时溢出时间确定,使用十分方便灵活。8051的串行i/o有4中工作模式可供选择:模式0:此模式是做串行传送1/0控制,而非真正的串行通信应用。工作于此模式时由txd引脚发送出同步移位脉冲,由rxd引脚送出或接收串行数据。串行数据形式是8位数据

30、,同步脉冲的宽度也是固定的,为系统工作震荡的1/12,等于8051的一个工作周期。 模式1:此模式为经常使用的串行工作模式,串行数据位由txd引脚传送出去,由rxd引脚将对方发来的串行数据位接收进来。至于传输的波特率是由计时器t1来规划的,只要将不同的计数器初值载入计时器中,可以做不同的波特:而在模式1和模式3下的波特率由内部计数器t1来控制,此时应使用计数器工作模式2,自动重新载入计时模式。在模式2下,使用的计数寄存器为tl 1,而th 1则是在做自动载入计时值的设定。波特率的计算公式为:将上式整理得: 中断系统:     8051具备较完善的中断功能

31、,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。8051单片机的中断系统简单实用,其基本特点是:有5个固定的可屏蔽中断源,3个在片内,2个在片外,它们在程序存储器中各有固定的中断入口地址,由此进入中断服务程序;5个中断源有两级中断优先级,可形成中断嵌套;2个特殊功能寄存器用于中断控制和条件设置的编程。5个中断源的符号、名称及产生的条件如下:int0:外部中断0,由p32端口线引入,低电平或下跳沿引起。int1:外部中断1,由p33端口线引入,低电平或下跳沿引起。t0:定时器计数器0中断,由t0计满回零引起。t1:定时器计数器l中断,由t1计满

32、回零引起。tiri:串行io中断,串行端口完成一帧字符发送接收后引起。整个中断系统的结构框图见下图一所示。由图一可见,外部中断有下跳沿引起和低电平引起的选择;串行中断有发送(ti)相接收(r1)的区别;各个中断源打开与否,受中断自身的允许位和全局允许位的控制,并具有高优先级和低优先级的选择。中断系统的控制寄存器:中断系统有两个控制寄存器ie和ip,它们分别用来设定各个中断源的打开关闭和中断优先级。此外,在tcon中另有4位用于选择引起外部中断的条件并作为标志位。 时钟电路:     8051内置最高频率达12mhz的时钟电路,用于产生整个单片机运行的脉冲

33、时序,但8051单片机需外置振荡电容。后面章节详细介绍。2. 本章小结本章介绍了8051单片机的结构及工作原理,为以后的设计做准备。17第3章硬件电路设计 第3章硬件电路设计3.1 设计部分3.1.1 硬件部分1 8051单片机的引脚介绍 目前制造工艺为hmos的mcs-51的单片机都采用40只引脚的双列直插封装方式,40只引脚按其功能分,可分为三个部分: 图1-11 电源及时钟引脚:vcc,vss;xtal1.xtal2.2 控制引脚:psen、ale、ea、reset3 i/o口引脚:p0、p1、p2、p3,为4个8位i/o口的外部引脚。电源及时钟引脚( 1 )电源引脚接入单片机的工作电源

34、。vcc(40脚):接+5v电源;vss(20脚):接地。( 2 )时钟引脚xtal1、xtal2。时钟引脚接外接晶体与片内的反相放大器构成了一个振荡器,它提供单片机的时钟控制信号。时钟引脚也可外接晶体振荡器。( 3 )控制引脚此类引脚提供控制信号,有的还具有复制功能。( 4 )rst/vpd(9脚):当振荡器运行时,在此引脚外加上两个机器周期的高电平将使单片复位(rst)。掉电期间,此引脚可接上备用电源(vpd),以保持内部ram的数据,当vcc下掉到低于规定的值,而vpd在其规定的电压范围内(5±0.5v)时,vpd就向内部ram提供备用电源。(5)ale/prog(30脚):当

35、访问单片机外部存储器时,ale输出脉冲的负跳沿用于16位地址的低8位的锁存信号。即使不访问外部存储器,ale端仍有正脉冲信号输出,此频率为时钟频率的1/6。但是,每当访问外部数据存储器时,在两个机器周期中ale只出现一次,即丢失一个ale脉冲。因此,严格来说,用户不能用ale做时钟愿或定时。ale端可以驱动8个ttl负载(6)psen(29脚):此角的输出是单片机访问外部程序存储器的读选通信号。在由外部程序存储器取指令期间,每个机器周期psen有两次有效。但在此期间,每当访问外部数据存储器时,这两次有效的psen信号不出现。psen可以驱动8个ttl负载。(7)ea/vpp(31脚):当ea端

36、保持高电平时,单片机访问内部程序存储器,但在pc只超过0fffh时,将自动转向执行外部程序存储器内的程序。当ea保持低电平时,则只访问外部程序存储器,不管是否有内部程序存储器。2 max232的介绍 max232一般说明: max232是双路驱动/接收器,内部包括电容型的电压生成器,可以将单5v电源转换成符合eia/tia-232-e的电压等级。接收器将eia/tia-232-e标准的输入电平转换成5vttl/cmos电平。接收器的典型临界值是1.3v,典型磁滞是0.5v,可以接收±30v的输入信号。驱动器(发送器)将ttl/cmos输入电平转换成eia/tia-232-e电平。 特

37、性:单5v电源 ,linbicmos工艺 ,两个驱动器和两个接收器 ,±30v的输入电平 ,低工作电流:8ma典型值 ,满足和超过ansi eia/tia-232-e和itu推荐标准v.28 ,可以和maxim的max232互换应用,eia/tia-232-e标准,电池供电系统 ,终端modem计算机,esd保护超过2000v(mil-std-883,method 3015)。3 rs232的介绍 rs232rs232接口就是串口,电脑机箱后方的9芯插座,旁边一般有 "|o|o|" 样标识。 一般机箱有两个,新机箱有可能只有一个。笔记本电脑有可能没有。 有很多工业

38、仪器将它作为标准通信端口。通信的内容与格式一般附在仪器的用户说明书中。 计算机与计算机或计算机与终端之间的数据传送可以采用串行通讯和并行通讯二种方式。由于串行通讯方式具有使用线路少、成本低,特别是在远程传输时,避免了多条线路特性的不一致而被广泛采用。 在串行通讯时,要求通讯双方都采用一个标准接口,使不同 的设备可以方便地连接起来进行通讯。 rs-232-c接口(又称 eia rs-232-c)是目前最常用的一种串行通讯接口。它是在1970年由美国电子工业协会(eia)联合贝尔系统、 调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标 准。它的全名是“数据终端设备(dte)和数据通讯设

39、备(dce)之间 串行二进制数据交换接口技术标准”该标准规定采用一个25个脚的 db25连接器,对连接器的每个引脚的信号内容加以规定,还对各种信 号的电平加以规定。 (1)接口的信号内容 实际上rs-232-c的25条引线中有许多是很少使用的,在计算机与终端通讯中一般只使用3-9条引线。rs-232-c最常用的9条引线的信号内容见附表1所示 (2)接口的电气特性 在rs-232-c中任何一条信号线的电压均为负逻辑关系。即:逻 辑“1”,-5 -15v;逻辑“0” +5 +15v 。噪声容限为2v。即 要求接收器能识别低至+3v的信号作为逻辑“0”,高到-3v的信号 作为逻辑“1” (3) 接口

40、的物理结构 rs-232-c接口连接器一般使用型号为db-25的25芯插头座,通常插头在dce端,插座在dte端. 一些设备与pc机连接的rs-232-c接口,因为不使用对方的传送控制信号,只需三条接口线,即“发送数据”、“接收数据”和“信号地”。所以采用db-9的9芯插头座,传输线采用屏蔽双绞线。 (4)传输电缆长度 由rs-232c标准规定在码元畸变小于4%的情况下,传输电缆长度应为50英尺,其实这个4%的码元畸变是很保守的,在实际应用中,约有99%的用户是按码元畸变10-20%的范围工作的,所以实际使用中最大距离会远超过50英尺,美国dec公司曾规定允许码元畸变为10%而得出附表2 的实

41、验结果。其中1号电缆为屏蔽电缆,型号为decp.no.9107723 内有三对双绞线,每对由22# awg 组成,其外覆以屏蔽网。2号电缆为不带屏蔽的电缆。型号为decp.no.9105856-04是22#awg的四芯电缆。 1.rs-232-c是美国电子工业协会eia(electronic industry association)制定的一种串行物理接口标准。rs是英文“推荐标准”的缩写,232为标识号,c表示修改次数。rs-232-c总线标准设有25条信号线,包括一个主通道和一个辅助通道,在多数情况下主要使用主通道,对于一般双工通信,仅需几条信号线就可实现,如一条发送线、一条接收线及一条地

42、线。rs-232-c标准规定的数据传输速率为每秒50、75、 100、150、300、600、1200、2400、4800、9600、19200波特。rs-232-c标准规定,驱动器允许有2500pf的电容负载,通信距离将受此电容限制,例如,采用150pf/m的通信电缆时,最大通信距离为15m;若每米电缆的电容量减小,通信距离可以增加。传输距离短的另一原因是rs-232属单端信号传送,存在共地噪声和不能抑制共模干扰等问题,因此一般用于20m以内的通信。 2.rs-485总线,在要求通信距离为几十米到上千米时,广泛采用rs-485 串行总线标准。rs-485采用平衡发送和差分接收,因此具有抑制共

43、模干扰的能力。加上总线收发器具有高灵敏度,能检测低至200mv的电压,故传输信号能在千米以外得到恢复。 rs-485采用半双工工作方式,任何时候只能有一点处于发送状态,因此,发送电路须由使能信号加以控制。rs-485用于多点互连时非常方便,可以省掉许多信号线。应用rs-485 可以联网构成分布式系统,其允许最多并联32台驱动器和32台接收器。 以往,pc与智能设备通讯多借助rs232、rs485、以太网等方式,主要取决于设备的接口规范。但rs232、rs485只能代表通讯的物理介质层和链路层,如果要实现数据的双向访问,就必须自己编写通讯应用程序,但这种程序多数都不能符合iso/osi的规范,只

44、能实现较单一的功能,适用于单一设备类型,程序不具备通用性。在rs232或rs485设备联成的设备网中,如果设备数量超过2台,就必须使用rs485做通讯介质,rs485网的设备间要想互通信息只有通过“主(master)”设备中转才能实现,这个主设备通常是pc,而这种设备网中只允许存在一个主设备,其余全部是从(slave)设备。而现场总线技术是以iso/osi模型为基础的,具有完整的软件支持系统,能够解决总线控制、冲突检测、链路维护等问题。.4 电路图的设计连接电路:连接从计算机串口取电电路,实现系统供电;连接max232接口电平转换电路,实现逻辑电平与rs232的电平的相互转换。51单片机有一个

45、全双工的串行通讯口,所以单片机和电脑之间可以方便地进行串口通讯。进行串行通讯时要满足一定的条件,比如电脑的串口是rs232电平的,而单片机的串口是ttl电平的,两者之间必须有一个电平转换电路,我们采用了专用芯片max232进行转换,虽然也可以用几个三极管进行模拟转换,但是还是用专用芯片更简单可靠。我们采用了三线制连接串口,也就是说和电脑的9针串口只连接其中的3根线:第5脚的gnd、第2脚的rxd、第3脚的txd。这是最简单的连接方法,但是对我们来说已经足够使用了,电路如上图所示,max232的第10脚和单片机的11脚连接,第9脚和单片机的10脚连接,第15脚和单片机的20脚连接。3.4本章小结

46、本章介绍了硬件电路的总电路图,以及各个模块的理论原理。比较细致的学习各个模块的工作原理。第4章软件电路设计 第4章软件电路设计4.1程序框图4.1.1软件设计的主程序流程图开始下位机发送数据下位机收到数据下位机算出数据比较数据下位机向上位机发送数据开始通信下位机不回应上位机结束4.1.2软件电路设计 大多控制系统都把pc作为上位机,单片机系统作为下位机。单片机系统必需把采集的数据传输给pc机,以便进行存储和处理。pc机几乎都具有rs232接口,因此,单片机通过rs232口与pc机通信最方便,也是嘴常用的方法。但是单片机并没有rs232电气接口,要进行通信,必需要进行接口扩展。本设计采用了接口扩

47、展的方案,并根据自行设计的通讯协议,编写了通信软件。编写程序:编写单片机单片机端串口结束电和发送程序;编写上位机端串口发送和接受程序。以上是串口通信的一般流程。对于本设计的硬件加密锁的设计。要求在下位机中设计一个算法。上位机发送数据。下位机接受数据,并根据算法计算出结果,然后比较数据如果一致就进行串口通信。不一致就停止通信。程序见附录4.2 系统调试本次设计的最后一项任务是对系统进行调试,并测试程序和硬件是否能按照要求工作。单片机应用系统的程序存储器必须放入调试好的应用程序,系统才能运行。如果研制人员对单片机的结构、系统硬件结构、指令系统十分熟悉,能确保所编制的程序不会出错时,可不需要开发工具

48、,只要把所开发的软件固化到系统的eprom中即可。一般来说,都需要借助开发工具来调试应用软件。开发工具的主要作用是:(1)系统硬件电路的诊断与检查;(2)程序的输入与修改;(3)程序的运行、调试,具有单步运行、状态查询等功能;(4)能将程序固化到eprom芯片上去。本次测试的工具主要是:面包板一个(用来进行硬件连接),导线若干,伟幅仿真器一个(用来对便好的程序进行调试,以及看最终结果是否符合设计要求),电源一台(供给仿真器及单片机电源),万用表一个。4.3 测试过程测试过程的第一项任务是建立自己的项目文件,首先选择菜单文件/新建文件功能在弹出的文件中输入所编写的程序。然后选择菜单文件/保存文件

49、或文件/令存为功能,给出文件所要保存的位置以及文件名,单击保存。接下来的任务是建立新的项目选择菜单文件/新建项目功能。此不工作要分三步完成。(a)加入模块文件,在加入模块文件的对话框中选择刚才所保存的文件,按打开键。(b)加入包含文件,在加入包含文件的对话框中,选择所要加入的包含文件。(c)保存项目,在保存项目的对话框中输入醒目的名称,无需加后缀,软件会自动将后缀设成“.asm“.按保存键将项目保存在源程序相同的文件加下。项目保存好后,如果项目是打开的,可看到项目中的“模块文件“已有一个模块,并且就是你所保存的文件名,如果项目窗口没有打开,可以选择菜单窗口/项目窗口功能来打开。以上是编译程序的

50、初步阶段,然后就是编译程序了。选择菜单项目/编译功能或按编译快捷图标,编译项目。在编译过程中,如果有错误可以在信息窗口中显示出来,双击错误信息,可以在源程序定位所在的行。纠正错误后,再次编译直到没有错误后,就可调试程序了。下一步工作是单步调试程序,选择执行/跟踪功能或按跟踪快捷图标或按f7键进行单步跟踪调试程序,单步跟踪调试程序就一条指令一条指令地执行程序,若有子程序调用,也会跟踪到子程序中去。在这个过程中,可以观察程序每步执行的结果。连接硬件仿真时,按照说明书,将仿真器通过串行电缆连接计算机上,将仿真头连接到仿真器,检查连线无误后,接上电源,打开仿真器的电源开关,如果仿真器和仿真头设置正确,

51、并且硬件连接正确,就会出现“硬件仿真“的对话框,并显示仿真器、仿真头的型号及仿真器的序列号。重新编译程序,全速执行程序,就可仿真了。在这过程中遇到的最多困难是在程序的编译过程中,因为有时候是子程序没有定义而编译不过去,有时候是指令写得不对,这就要求我们对单片机的知识了解得比较精。 4.4本章小结本章利用前面已经掌握的知识设计出了软件流程图,并根据流程图编写出程序。然后将编好的主程序进行调试,看是否能实现预期的功能,找出缺陷和不足并解决出现的问题。7结 论硬件加密锁的设计通过运用以前所掌握的单片机知识,设计出所需要的能够实现加密锁功能硬件电路,并在 protel99 中把电路图绘制完成。然后运用

52、单片机知识进行程序地编写和编译仿真,最后进行硬件连调,并加上相应的外部电路和连线,来对所设计的电路的功能进行验证。实验结果完成了最初的设计预想,实现了设计所要达到的功能.这次设计对我们的影响意义非凡。首先从选题来说,他的选题考虑到了我们大学四年所学的所有知识,既要求我们对知识掌握的牢固,又要求我们对知识能够灵活运用。从运用到的知识面来说,它不仅要求我们运用所学过的知识还要求我们去寻找,学习,借鉴其他科目或门类的知识。从时间上来说,这次设计的时间是最长的,因此我们有足够的时间去重新温习学过的知识,更有充足的时间去搜集学习一些我们没有涉猎过的知识。这样不仅锻炼了我们学习新知识的能力,同时也拓宽了我

53、们的知识面。并且我们还有足够时间去修改我们的设计中的缺陷,这也是对我们将来走入社会独立完成一项课题的考验。而对于我们来说最重要的是,这次实习告诉我们怎样才能系统地完成一项实用的工作,他都需要哪些步骤。因此当我们步入社会后对于公司给我们的一个实际的应用项目将不会在感到陌生。附录1 参考文献李华mcs-51系列单片机实用接口技术北京:航空学院出版社,1993.84 吴金戌,沈庆阳,郭庭吉8051单片机实践与应用 清华大学出版社,19947 张毅刚,彭喜源,谭晓昀mcs-51单片机应用设计 哈尔滨工业大学出版社, 1997.128 楼然苗,李光飞51系列单片机设计实例北京:航空航天大学出版社, 2003.310 s-h. cho, h. kumagai, and k. midorikawa, ¡°fabrication of multi-core structure in optical fibers using plasma self-channeling excited by a femtosecond laser,¡± cleo pacific rim¡¯ol,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论