欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOCX文档下载  

    微机课程设计---电子报警器.docx

    • 资源ID:10678639       资源大小:487.78KB        全文页数:22页
    • 资源格式: DOCX        下载积分:6
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要6
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    微机课程设计---电子报警器.docx

    微机原理与接口技术课程设计题 目:电子报警器设计学院(系):三系年级专业:电子信息工程学 号:20110310238学生姓名:指导教师:宿迁学院微机原理与接口技术课程设计课程设计任务书学生姓名: 专业班级: 电子信息工程2班指导教师: 工作单位: 题目:电子报警器设计一、设计条件:1 .运用所学的微机原理和接口技术知识;2 .微机原理和接口技术实验室的实验箱设备。二、主要任务:(包括课程设计工作量及其技术要求以及说明书撰写等具要求)该课程设计要求采用手动输入密码方式进行,对输入的密码是否正确进行 判别,可进行连续三次的密码输入,若都不正确,则会有报警器发出频率为5HZ的报警声响,并伴有红绿黄三个灯的闪耀,并通过液晶显示器显示相关警报信息。 若正确,则亮起走马灯程序。具体要求如下:1 .采用手动输入密码方式进行2 .对输入的密码是否正确进行判别3 .可进行连续三次的密码输入4 .若都不正确,则会有报警器发出频率为 5HZ的报警声响,并伴有红绿黄 三个灯的闪耀,并通过液晶显示器显示相关警报信息。5 .若正确,则亮起走马灯程序。三、时间安排:序号阶段内容所需时间(天)1设计思路、原理电路设计12编程调试33撰写课程设计报告1合 计5指导教师签名:基于微机原理电子报警器的设计摘要随着电子技术的发展,计算机在现代科学技术的发展中起着越来越重要的作 用。多媒体技术、网络技术、智能信息处理技术、自适用控制技术、数据挖掘与 处理技术等都离不开计算机。本课程设计是基于微机原理与接口技术的简单应 用。运用所学的微机原理和接口技术知识完成电子报警器系统。 通过硬件与软件 的结合,用我们刚刚学过的汇编语言编写程序模拟分析了现代电子系统密码安全 问题的现状,结合密码安全的实际情况阐述了电子报警器控制系统的工作原理, 给出了一种简单实用的电子报警器控制系统的硬件、软件电路设计方案。该系统适用于各类电子防盗系统,能有效防止非法盗用密码等问题!宿迁学院微机原理与接口技术课程设计41.1 电子报警器方案的论证与比较 41.2 电子报警器的功能与要求 41.3 电子报警器设计方案的确定 4、硬件设计2.1 电子报警器设计所需硬件2.3 硬件引脚功能 三、软件设计3.1 主程序流程图 93.2 三次密码输入程序设计 103.3 正确之后走马灯程序设计 103.4 三次输入错误之后程序设计 1112五、设计体会与小结14六、参考文献15七、附录 15一、设计要求与设计方案1.1 电子报警器方案的论证与比较设想制作一个防盗器件。 具体要求: 采用手动输入密码方式进行, 按动键盘6 位密码,对输入的密码是否正确进行判别,如果不正确,则再次输入,可进行连续三次的密码输入,若都不正确,则会有报警器发出频率为5HZ的报警声响,并伴有红绿黄三个灯的闪耀,并通过液晶显示器显示相关警报信息。按动键盘6位密码,如果密码正确,8个LED不停光闪,呈现走马灯,同时在液晶显示器上 显示相应的警报信息。1.2 电子报警器的功能与要求在设计发声报警时利用了 8253 可编程定时定时记数器。在设计发光报警时利用了8255 芯片,在一个时间间隔里小灯循环闪动代表输入正确,想起警报声并且有红绿蓝三灯在闪动表示正在报警。1.3 电子报警器设计方案的确定根据设计任务和要求,在设计前必须对微机原理与接口技术中的 8255 和8253芯片熟悉了解和掌握。 设计中主要采用手动输入密码方式进行, 按动键盘 6 位密码, 对输入的密码是否正确进行判别, 同时内扬声器发出警报声, 且在屏幕 上显示警报信息。在设计发声报警时利用了 8253 可编程定时定时记数器。在设计发光报警时利用了 8255芯片。在程序设计中利用 INT 09H 实现在屏幕上显示相关的警报信息。宿迁学院微机原理与接口技术课程设计二、硬件设计1.1 电子报警器设计所需硬件1.8253定时计数器。2 .并行接口电路芯片8255。3 .扬声器。2.2 硬件连接1 .定时/计数器8253A芯片模块的GATE2R + 5V,提供高电平。2 .定时/计数器8253A芯片模块的OUT1接扬声器。3 .定时/计数器8253A芯片模块的CLK0接500KHz的分频频率。4 .并行接口电路芯片 8255的PAg PA7分别接入LED的D0D7。/RDIOR/WRIOW8253CSY0A0A0A1A1CLC0T1 (500K)OUT0CLC1OLJT1UIJDJD1J0J88253接线图8255线路图2.3 硬件引脚功能8255是可编程I/O 口扩展芯片。对8255输入不同的指令可改变I/O 口的 工作方式。8255与单片机系统连接方式简单,工作方式由程序设定,图2为8255 的引脚图。8255内部有4个寄存器:分别为寄存器 A、B、C和控制寄存器。A、B、C寄 存器的数据就是引脚PA入PA。PB入PB。PC入PC0上输入或输出的数据。而 控制寄存器的数据则表明 PA PB PC的工作方式。通过 CS AR A1、RD和WR 对4个寄存器进行操作。1) CS为低电平时选通8255; 2) A1、A0为地址选通;3) RD和W时读、写信号: RD为低、W财高时为t方式,RD为高、WRM氐时为写方式。4) D0D7为数据 口。向控制寄存器写入不同的数据可以使 8255工作在三种不同的方式下。这里只 介绍应用最多的方式 0。方式0下8255的PA PB及PC口上半部分(PC入PC4 和下半部分(PC"PCO中任何一个端口都可以设定为输入或输出, PC 口还可 以进行位操作。控制寄存器各位的含义如图 3所示。SLPC-24中8255工作在方 式0。PA PB为输入口、PC为输出口,对控制寄存器写入的数据为 10010010B, 即 92Ho宿迁学院微机原理与接口技术课程设计8255 引脚功能 :RESET复位输入线,当该输入端外于高电平时,所有内部寄存器(包括控制寄存 器)均被清除,所有I/O 口均被置成输入方式。CS:片选信号线,当这个输入引脚为低电平时,表示芯片被选中,允许 8255与 CPU!行通讯。RD:读信号线,当这个输入引脚为低电平时,允许8255通过数据总线向CP3送 数据或状态信息,即CPU从8255读取信息或数据。WR写入信号,当这个输入引脚为低电平时,允许CPU等数据或才S制字写8255。D0D7:三态双向数据总线,8255与CPUt据传送的通道,当CPU执行输入输出 指令时,通过它实现8 位数据的读/ 写操作,控制字和状态信息也通过数据总线传送。PAg PA7:端口 A输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位 的数据输入锁存器。PBg PB7:端口 B输入输出线,一个8位的I/O锁存器,一个8位的输入输出缓 冲器。PC3 PC7:端口 C输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位 的数据输入缓冲器。端口 C可以通过工作方式设定而分成 2个4位的端口,每 个4位的端口包含一个4位的锁存器,分别与端口 A和端口 B配合使用,可作为 控制信号输出或状态信号输入端口。8253 引脚功能 :8253 具有 3 个独立的 16 位计数器 ,6 种不同的工作方式。1方式0计数到终点输出变为高电平当将某计数器设置成方式0后,其输出OU彼低电平,装入初值后,仍 保持低电平。 门控为高电平开始计数。 每来一个计数脉冲CLK, 计数器的值减1,当计数到达终点即计数器的值变成 0时,OU彼为高电平。在计数期间可用门控 信号暂停计数( 即门控为低电平时,计数暂停) 。2. 方式 1可编程单稳态触发器所谓单稳,是指这样的电路,它有两种状态,但只能稳定在一种状态。在一定的外界作用下, 它能从这一种状态进入到另一种状态, 但经过一定时间后, 又 自动恢复到原来的状态。 这个时间参数一般是由外加电阻、电容的值决定的。8253 的方式 1 就是模拟单稳电路,其处于非稳定状态的时间可通过程序进行设 置。3. 方式 2分频脉冲发生器( 分频器 )方式2用来对输入脉冲(即计数脉冲CLK)N分频(N为预置的初值),在输出 信号周期中低电平的时间为一个 CLK周期。设置此方式后,OU侬高电平,装入初值后便自动开始计数,减到 1时OUT 变低电平。经过一个CLK周期,OUTR复高电平,且计数器又自动装入初值,重 新开始计数。如此循环下去。如图6 23 所示是工作在方式2 的示意图。在上述过程中GATEE一直保持高电平。若GAT或低电平将禁止计数,并使输出为高电平。在GATES次变高电平时,计数器将重新装入预置的初值,并开始计数。4方式3方波发生器方式 3 类似于方式2,输出是周期性的。不同的是方式3 输出方波。如果预置的初值N 为偶数,则输出周期中高电平和低电平的宽度相等;如果N 为奇数,则输出周期中高电平比低电平多一个 CLK周期的时间,当N相当大时,也可认为 是方波。当然,一般采用方式3 时,置初值为偶数。设置成方式3后,OU侬高电平,装入初值后便自动开始计数。如初值为偶 数,每个CLK使计数器减2,计到终点改变电平。如初值为奇数,则输出为高电 平时第一个CLK使计数器减1,随后每个CLK使计数器减2;输出为低电平时第 一个CLK使计数器减3,随后每个CLK使计数器减2。每当计数到终点都会改变 电平,初值又被重新装入,并开始计数。如此循环下去。5方式4软件触发选通设置成方式4后,OU侬高电平,写入计数值后自动开始计数(所以称之为 软件触发),计数到终点输出一个CLK周期的低电平脉冲。GAT或低可暂停计数, 用GATE勺上升沿可重新赋初值,并开始计数。6方式5硬件触发选通设置成该方式后,OU位高电平,写入计数值后需等待 GATEL1升沿的到来 才开始计数(所以称之为硬件触发)。计数到终点也输出一个CLK周期的低电平脉 冲。计数过程中不受GATES平的影响。此后,用 GATE勺上升沿可重新赋初值,宿迁学院微机原理与接口技术课程设计并开始计数。计数寄存器用来寄存计数初值,计数工作单元为16位减1计数器,它的初值 便是计数寄存器内容,计数单元对CLK脉冲计数,每出现一个CLK脉冲,计数器减 1,当减为零时,通过OUT输出指示信号表明计数单元已为零。当作为定时器工作 时,每当计数单元为零时,计数寄存器内容会自动重新装入 计数单元,而且CLK输 入是均匀的脉冲序列,于是OUT输出频率是降低了的(相对于CLK信号频率)脉冲 序列。当作为计数器工作时,表明只关心在CLK端出现(代表事件)的脉冲个数,当 CLK端出现了规定个数的脉冲时,OUT输出一个脉冲信号。三、软件设计3.1 主程序流程图宿迁学院微机原理与接口技术课程设计3.2 三次密码输入程序设计mov cl,00hmov ah,01hint 21h;等待一个输入cmp al,2;这里判断输入的数是否是密码的第一位jnz hjj1inc cl;如果是,则将cl 加 1hjj1: mov ah,01hint 21h;等待一个输入cmp al,0;这里判断输入的数是否是密码的第二位jnz hjj2inc clhjj2: mov ah,01hint 21h;等待一个输入cmp al,1;这里判断输入的数是否是密码的第三位jnz hjj3inc clhjj3: mov ah,01hint 21h;等待一个输入cmp al,3;这里判断输入的数是否是密码的第四位jnz hjj4inc clhjj4: mov ah,01hint 21h;等待一个输入cmp al,1;这里判断输入的数是否是密码的第五位jnz hjj5inc clhjj5: mov ah,01hint 21h;等待一个输入cmp al,4;这里判断输入的数是否是密码的第六位jnz hjj6inc clhjj6: mov dl,0dhmov ah,02hint 21hmov dl,0ahmov ah,02hint 21hcmp cl,6;这里判断六位密码是否全部正确3.3 正确之后走马灯程序设计lea dx,Ymov ah,09h;输出字符串到屏幕int 21hxor ax,ax;把AX寄存器清零Mov al,80hMov dx,io8255bOut dx,alStc;进位位置为指令Mov al,00hMov dx,io8255aok: rcl al,1;RCL通过进位的循环左移Out dx,alPushfCall delayPopfJmp ok;循环使跑马灯亮起Delay proc near3.4 三次输入错误之后程序设计mov dx,io8253k ;mov al,36hout dx,almov ax,1000mov dx,io8253aout dx,al;mov al,ah out dx,al;mov dx,io8253kmov al,76hout dx,almov ax,250mov dx,io8253bout dx,al;mov al,ah out dx,al;mov dl,0ahmov ah,02hint 21h lea dx,N8253写控制字使 0通道为工作方式3写入循环计数初值1000先写入低字节后写入高字节设 8253通道 1工作方式 2写入循环计数初值250先写低字节后写高字节mov ah,09h ;输出字符串到屏幕int 21hmov ah,01宿迁学院微机原理与接口技术课程设计int 21h等待一个输入: masn5.0>lisZthe the thepassword:0000S0 passwordpassuord: 00(1060rror:m*sm5.0>lease Enter lease entei* lease entericrnsof t (R Ouei*lay Lin hep pyriglit (C> Microsoft Carp 19B3-1?8?. All rights reserued.un File 1HS2.EXE】:ist File NUL.MAP:ibraries .LIB3:ENK : uarnIng L4021- no stack segment-xiiasriS .0>link四、系统的安装与调试n File (HG2.EXE1:.1st File NUL.MAP:ibraries L.LIB:INK : uatninsr L4021 : no stack segmenticrosoft <R> Ouerlay Linker Uersion 3.60 pyiight CC) HierosoFt Corp 1983-1987. All rights reserved宿迁学院微机原理与接口技术课程设计五、设计体会与小结通过这次的课程设计, 我回忆了好多以前已经忘怀的微机原理知识, 也重新学习了相当多的汇编语言知识, 真可以用温故而之心来形容, 使我对以前所学过的知识印象更加深刻,也更加熟练的掌握了8253, 8255 的功能特性,相关知识原理等。实验中也遇到了相当多的问题, 还好在同组同学的共同努力下, 以及在老师的细心,耐心的指导下,才一步一步的解决了问题。真的好好感谢老师的帮助。起初程序并不像我们想象的那样的显示出来, 红灯没有闪烁, 只是齐刷刷的亮了,我们一开始摸不着头绪,后来在程序中找到了原因。因为我们只是让8255 芯片实现了小灯的亮, 没有用程序去解决各个灯延时闪亮的问题。 后来我们加入了新的内容便成功了。这次的课程设计是基于上个学期对微机原理课程学习的基础上的一个提高,通过对8255, 8253 芯片的编程更好的理解了其内在的原理。也是对书面知识的一种巩固与更新。 在这次的设计中, 我们用了一个星期的时间去做相关知识的搜索, 关于报警器的原理有了整体的认识之后才去上机试验。 起初因为程序的一些错误, 只实现了相关的一小部分内容, 只是就闪烁问题得到解决, 但是我们又通过请教老师解决了报警这部分的设计, 用了另外一个灯显示报警信息。 通过试验出错再试验的过程,才得以完成。当我们完成这个程序时, 发现脑中关于微机原理的知识更加清晰。 这才让我们相信, 只有不断的试验, 不断的动手去演练, 基础知识才能转化成真正在生活中能够实现的东西。 我想我们以后无论在什么方面, 特别是在研究设计方面。 动手加动脑才是成功的关键,一味的在理论上追根问底根本不可能在现实中实现。这是我从这次课程设计中得到的最大的体会。六、参考文献1 杨素行 .1994 年. 微机原理及应用 . M. 清华大学出版社2 郑学 , 周斌 . 1994. 微型计算机原理及应用 . M. 清华大学出版社3 . 周明德 . 2002. 微机原理与接口技术实验指导与习题集 . M. 人民邮电出版社4 李芷 . 2002. 微机原理与接口技术 . M. 电子工业出版社七、附录实验程序:ioport equ 0ff00h-0280hio8255a io8255b io8255c io8253aio8253b io8253kequ ioport+288h equ ioport+28bh equ ioport+28ah equ ioport+280h equ ioport+281h equ ioport+283hdata segmentS DB please enter the password:$Y DBN DBI*>*Correct*$ Error*$data endscode segmentassume cs:code,ds:data start:把数据放到数据段里面mov ax,data mov ds,axmov bl,4 sc4: dec blcmp bl,0 jz sc5 lea dx,S mov ah,09hint21h在屏幕上显示出 please enter the password等待一个输入 这里判断输入的数是否是密码的第一位字样mov cl,00hmov ah,01hint 21hcmp al,2jnz hjj1inc cl;如果是,则将cl 加 1hjj1: mov ah,01hint 21h;等待一个输入cmp al,0;这里判断输入的数是否是密码的第二位jnz hjj2inc clhjj2: mov ah,01hint 21h;等待一个输入cmp al,1;这里判断输入的数是否是密码的第三位jnz hjj3inc clhjj3: mov ah,01hint 21h;等待一个输入cmp al,3;这里判断输入的数是否是密码的第四位jnz hjj4inc clhjj4: mov ah,01hint 21h;等待一个输入cmp al,1;这里判断输入的数是否是密码的第五位jnz hjj5inc clhjj5: mov ah,01hint 21h;等待一个输入cmp al,4;这里判断输入的数是否是密码的第六位jnz hjj6inc clhjj6: mov dl,0dhmov ah,02hint 21hmov dl,0ahmov ah,02hint 21hcmp cl,6;这里判断六位密码是否全部正确jnz sc4sc5: cmp bl,0 ;判断是否 bl 由 4 减到0,即密码是否输入三次jz sclea dx,Ymov ah,09h;输出字符串到屏幕int 21hxor ax,ax;把AX寄存器清零Mov al,80hMov dx,io8255bOut dx,alStc;Mov al,00hMov dx,io8255aok:rcl al,1;RCLOut dx,alPushf进位位置为指令通过进位的循环左移Call delayPopfJmp okDelay proc nearMov bx,04ffhX2:mov bp,0ffffhX1:dec bpJnz x1循环使跑马灯亮起Dec bxJne x2 RetDelay endp sc:mov dx,io8253k mov al,36h out dx,al mov ax,1000 mov dx,io8253a out dx,al;mov al,ah out dx,al;mov dx,io8253k mov al,76h out dx,al mov ax,250 mov dx,io8253b out dx,al;mov al,ahout dx,al;mov dl,0ah mov ah,02h int 21h lea dx,N输出正确到屏幕上向 8253 写控制字使0 通道为工作方式3写入循环计数初值1000先写入低字节后写入高字节设 8253 通道 1 工作方式 2写入循环计数初值250先写低字节后写高字节mov ah,09h int 21h输出字符串到屏幕mov ah,01int 21h;等待一个输入mov ah,4ch ; 否则返回int 21hcode endsend start

    注意事项

    本文(微机课程设计---电子报警器.docx)为本站会员(罗晋)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开