虫虫首页| 资源下载| 资源专辑| 精品软件
登录| 注册

设计与分析

  • 电子密码锁的设计与实现

    电子密码锁的设计与实现一、实验目的 1.进一步掌握键盘扫描和LED显示的程序设计。 2.了解按键消抖的方法。 3.综合运用微机原理的软硬件知识。 二、实验内容与要求 1.基本要求 (1)具有密码输入功能,密码最多为6位;(2)设置退格键,以便删除输入错误的密码;(3)在输入的密码时数码管上只显示8,并根据输入位数依次横移;(4)设置确认键,当确认键按下后,判断输入密码是否正确;(5)当输入密码正确时,点亮发光二极管;当输入密码不正确时,发光二极管不亮并且蜂鸣器报警,重新输入,当三次密码输入不正确时,系统应锁定键盘10s。2.提高要求 将用户分为管理者和使用者,管理者拥有超级密码,可以修改其他人的密码。使用者不能修改密码。 三、实验报告要求 1.设计目的和内容 2.总体设计 3.硬件设计:原理图(接线图)及简要说明 4.软件设计框图及程序清单5.设计结果和体会(包括遇到的问题及解决的方法) 四、总体设计 电子密码锁的原理是:从键盘输入一组密码,CPU把该密码和设置密码比较,对则将锁打开(不同锁的控制方式不一样,比如加电控制电磁铁抽回,从而打开),错则要求重新输入,并记录错误次数,如果三次错误,则被强制锁定并报警,除非超级密码或者其他的手段打开,比如延时一段时间。 初步设计思路如下: 1.输入密码用矩形键盘,包括数字键和功能键,功能键包括退格键和确认键。 2.LED数码管显示输入密码,但是只是输出显示符号8 。采用动态扫描输出。 3.用发光二极管模拟锁的情况,锁关时发光二极管灭,打开时发光二极管亮。 4.输入密码错误时报警,3次输入错误时键盘锁定10s,键盘无法接收数据。 软件的设计主要包括矩形键盘键值的读取、LED动态扫描输出程序、密码判断程序和报警程序。   五、硬件设计 根据设计思路,硬件电路可通过实验平台上的一些功能模块电路组成,由于实验平台上的各个功能模块已经设计好,用户在使用时只要设计模块间电路的连接,因此,硬件电路的设计及实现相对简单。完整系统的硬件连接如图1所示。硬件电路由LED数码管显示模块、按键模块、发光二极管电路和蜂鸣器模块组成。各个模块的详细说明:1.LED数码管模块实验平台上提供一组六个LED数码管。插孔CS1用于数码管段选的输出选通,插孔CS2用于数码管位选信号的输出选通。本设计用6个数码管来动态显示时分秒,动态显示的定时时间由8253定时/计数器来实现。8253主要是实现每位显示时间1ms,由8253的计数器0来实现。Clk0接实验平台分频电路输出Q6,f=46875hz。GATE0接8255的PA0,由8255的PA0输出来控制计数器的起停。OUT0接8259的IRQ2,定时完成请求中断,进入中断服务程序。软件在中断服务程序中LED数码管显示。

    标签: 电子密码锁

    上传时间: 2013-10-16

    上传用户:15070202241

  • 交通灯控制器的设计与实现

    交通灯控制器的设计与实现一、实验目的1. 了解交通灯管理的基本工作原理。2. 熟悉8253计数器/定时器、8259A中断控制器和8255A并行接口的工作方式及应用编程。3. 掌握多位LED显示的方法。 二、 实验内容与要求设计一个用于十字路口的交通灯控制器。1.基本要求: 1) 东西和南北方向各有一组红,黄,绿灯用于指挥交通,红,黄,绿的持续时间分别为25s,5s,20s。2) 当有紧急情况(如消防车)时,两个方向均为红灯亮,计时停止,当特殊情况结束后,控制器恢复原来状态,正常工作。3) 一组数码管,以倒计时方式显示两个方向允许通行或禁止通行的时间。2.提高部分:1) 实时修改交通灯的持续时间。2) 根据不同时段对主要交通方向的信号进行调整。3) 可以使用LCD显示提示信息。 三、实验报告要求 1.设计目的和内容 2.总体设计 3.硬件设计:原理图(接线图)及简要说明 4.软件设计框图及程序清单 5.设计结果和体会(包括遇到的问题及解决的方法) 四、总体设计交通灯的工作过程如下:设十字路口的1、3为南,北方向,2、4为东西方向,初始态为4个路口的红灯全亮。之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车,2个路口的LED数码管开始倒计时25秒。延迟20秒后,1、3路口的绿灯熄灭,而1,3路口的黄灯开始闪烁(1HZ)。闪烁5次后,1、3路口的红灯亮,同时2、4路口的绿灯亮,2、4路口方向开始通车,2个路口的LED数码管重新开始倒计时25秒。延迟20秒时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁。闪烁5次后,再切换到1、3路口方向。之后,重复上述过程。当有紧急情况时,2个方向都红灯亮,倒计时停止,车辆禁止通行,当紧急情况结束后,控制器恢复以前的状态继续工作。 在设计中采用6个发光二极管来模拟2个路口的黄红绿灯,每个路口用2个数码管来显示通行或禁止剩余的时间。紧急情况用一个单脉冲发生单元申请中断来模拟,紧急情况结束后,再发一个中断来恢复以前的状态。 根据前面的介绍,本设计硬件由定时模块、发光二极管模块、数码管显示模块和紧急中断模块组成。定时模块采用硬件定时和软件定时相结合的方法,用8253定时/计数器定时100ms,再用软件计时实现所需的定时。发光二极管模块由8255控制发光二极管来实现。数码管显示模块由实验平台上的LED显示模块实现。紧急中断模块是由单脉冲发生单元和8279中断控制器组成。 程序主要是由定时子程序、发光二极管显示子程序、数码管显示子程序和中断服务程序组成。包括对8253、8255以及8259等可编程器件的编程。 五、硬件设计 本课题的设计可通过实验平台上的一些功能模块电路组成,由于各模块电路内部已经连接,用户在使用时只要设计模块间电路的连接,因此,硬件电路的设计及实现相对简单。完整系统的硬件连接如图1所示。硬件电路由定时模块、发光二极管模块、数码管显示模块和紧急中断模块组成。 定时模块是由8253的计数器0来实现定时100ms。Clk0接实验平台分频电路输出Q6,f=46875hz。GATE0接8255的PA0,由8255输出来控制计数器的起停。OUT0接8259的IRQ2,定时完成申请中断,进入中断服务程序。 发光二极管显示模块由8255输出来控制发光二极管的亮灭。8255输出为低电平时,对应的发光二极管就点亮,否则就熄灭。8255的接口电路如图2所示。交通灯的对应关系如下:L7 L6 L5 L2 L1 L0PC7 PC6 PC5 PC2 PC1 PC013红灯 13黄灯 13绿灯 24红灯 24黄灯 24绿灯  实验平台上提供一组六个LED数码管。插孔CS1用于数码管段选的输出选通,插孔CS2用于数码管位选信号的输出选通。本设计用4个数码管来倒计时。 紧急中断模块是由单脉冲发生单元和8259中断控制器,单脉冲发生单元主要用来请求中断,然后做出紧急情况处理。

    标签: 交通灯控制器

    上传时间: 2013-10-07

    上传用户:小小小熊

  • 基于单片机的红外门进控制系统设计与制作(含源程序和原理图)

    基于单片机的红外门进控制系统设计与制作:我们所做的创新实验项目“基于单片机的红外门控系统”已基本完成,现将其工作原理简要说明。该系统主要分为两大部分:一是红外传感器部分。二是单片机计数显示控制部分。基本电路图如下:其中红外传感器部分我们采用红外对管实现,红外对管平行放置,平常处于接收状态,经比较器输出低电平,当有人经过时,红外线被挡住,接收管接收不到红外线,经比较器输出高电平。这样,当有人经过时便会产生一个电平的跳变。单片机控制部分主要是通过外部两个中断判断是否有人经过,如果有人经过,由于电平跳变的产生,进入中断服务程序,这里我们采用了两对红外传感器接到两个外部中断口,中断0作为入口,实现加1操作,中断1作为出口,实现减1操作。另外,我们通过P0口控制室内灯的亮暗,当寄存器计数值为0时,熄灯,不为0时,灯亮。显示部分,采用两位数码管动态显示,如有必要,可以很方便的扩展为四位计数。精益求精!在实验过程中,我们走了非常多的弯路,做出来的东西根本不是自己想要的,我们本想做成室内只有一个门的进出计数,原理已清楚,即在门的两边放置两对红外对管,进出时,挡住两对对管的顺序不同,因此,可判断是进入还是出去,从而实现加减计数,编程时,可分别在两个中断服务程序的入口置标志位,根据标志位判断进出,详细内容在程序部分。理论如此,但在实际过程中,还是发现实现不了上述功能,我们初步判定认为是程序掌握得不够好,相信随着自己对单片机了解的深入,应该会做出更好的 (因为我们是临时学的单片机),程序的具体内容如下: $MOD52    ORG   0000H         LJMP  MAIN         ORG   0003H         LJMP  0100H         ORG   0013H         LJMP  0150H         ORG   0050HMAIN:    CLR   A         MOV   30H , A           ;初始化缓存区         MOV   31H , A         MOV   32H , A         MOV   33H , A         MOV   R6  , A         MOV   R7  , A  SETB  EA  SETB  EX0  SETB  EX1  SETB  IT0  SETB  IT1  SETB  PX1NEXT1:   ACALL HEXTOBCDD        ;调用数制转换子程序         ACALL DISPLAY          ;调用显示子程序         LJMP  NEXT1          ORG   0100H  ;中断0服务程序 LCALL  DELY mov 70h,#2 djnz 70h,next JBC  F0,NEXT         SETB F0        CLR P0.0 LCALL  DELY0 SETB   P0.0                  MOV   A , R7   ADD   A , #1   MOV   R7, A   MOV   A , R6         ADDC  A , #0  MOV   R6 , A  CJNE  R6 , #07H , NEXT  CLR   A  MOV   R6 , A  MOV   R7 , ANEXT:  RETI  ORG   0150H    ;中断1服务程序 LCALL  DELY mov 70h,#2 djnz 70h,next2 JBC  F0,NEXT2 SETB  F0 CLR P0.0 LCALL  DELY0 SETB   P0.0    CLR C                     MOV   A , R7   SUBB   A , #1  MOV   R7, A  MOV   A , R6   SUBB  A , #0  MOV   R6 , A  CJNE  R6 , #07H , NEXT2  CLR   A  MOV   R6 , A  MOV   R7 , ANEXT2:  RETI   ORG   0200HHEXTOBCDD:MOV  A , R6               ;由十六进制转化为十进制         PUSH  ACC         MOV   A , R7         PUSH  ACC  MOV   A , R2         PUSH  ACC  CLR   A         MOV   R3 , A  MOV   R4 , A  MOV   R5 , A  MOV   R2 , #10HHB3:     MOV   A  , R7              ;将十六进制中最高位移入进位位中         RLC   A  MOV   R7 , A  MOV   A  , R6  RLC   A  MOV   R6 , A  MOV   A  , R5              ;每位数加上本身相当于将这个数乘以2  ADDC  A  , R5  DA    A  MOV   R5 , A  MOV   A  , R4  ADDC  A  , R4  DA    A                   ;十进制调整  MOV   R4 , A  MOV   A  , R3  ADDC  A  , R3  DJNZ  R2 , HB3  POP   ACC   MOV   R2 , A  POP   ACC   MOV   R7 , A  POP   ACC  MOV   R6 , A  RET  ORG   0250HDISPLAY:  MOV   R0 , #30H         MOV   A  , R5  ANL   A  , #0FH  MOV   @R0 , A  MOV   A  , R5  SWAP  A  ANL   A  , #0FH  INC   R0  MOV   @R0 , A  MOV   A  , R4  ANL   A , #0FH  INC   R0  MOV   @R0 , A  MOV   A   , R4  SWAP  A  ANL   A  , #0FH  INC   R0  MOV   @R0 , A  MOV   R0 , #30H  MOV   R2 , #11111110BAGAIN:   MOV   A  , R2         MOV   P2 , A         MOV   A  , @R0  MOV   DPTR , #TAB  MOVC  A  , @A+DPTR  MOV   P1 , A  ACALL DELAY  INC   R0  MOV   A  , R2  RL    A  MOV   R2 , A  JB    ACC.4  , AGAIN   RETTAB:     DB    03FH , 06H , 5BH , 4FH , 66H , 6DH , 7DH , 07H , 7FH , 6FH   ;七段码表DELY:    MOV   R1,#80D1:        MOV    R2,#100             DJNZ   R2,$ DJNZ    R1,D1 RET DELAY:   MOV   TMOD , #01H           ;延时子程序         MOV   TL0  , #0FEH         MOV   TH0  , #0FEH  SETB  TR0WAIT:    JNB   TF0  , WAIT         CLR   TF0  CLR   TR0  RETDELY0:   MOV  R1,  #200D3:  MOV  R2,#250          DJNZ  R2,$  DJNZ  R1,D3    RET          END       该系统实际应用广泛。可用在生产线上产品数量统计、公交车智能计数问候(需添加语音芯片)、超市内人数统计等公共场合。另外,添加串口通信部分便可实现与PC数据交换的功能。   由于,实验简化了,剩下不少零件和资金,所以我们又做了两项其他的实验。

    标签: 单片机 红外 控制系统设计 原理图

    上传时间: 2013-12-22

    上传用户:tangsiyun

  • CAN与RS232转换节点的设计与实现

    CAN与RS232转换节点的设计与实现 介绍将CAN总线接口与RS232总线接口相互转换的设计方法和2种总线电平转换关系,实现CAN总线与各模块的接口设计,制定了相应的软硬件设计方案,并给出软件设计流程图以及部分硬件设计原理图。为CAN总线与RS232总线互联提供了一种方法,对CAN总线与RS232总线接口设备的互联和广泛应用的实现具有重要意义。关键词:CAN总线;RS-232总线;串行通信Design and Realization of CAN and RS232 Transformation NodeZHOU Wei, CHENG Xiao-hong(Information Institute, Wuhan University of Technology, Wuhan 430070)【Abstract】This paper introduces one design method of the CAN bus interface and the RS232 bus interface interconversion, emphasizes two kindof bus level transformation relations, realizes the CAN bus and various modules connection design, formulates the design proposal of correspondingsoftware and hardware, and gives the flow chart of software design as well as the partial schematic diagram of hardware design. It providesonemethod for the CAN bus and the RS232 bus interconnection, has the vital significance to widespread application realization of the CAN busand theRS232 bus interface equipment interconnection.【Key words】CAN bus; RS-232 bus; serial communication

    标签: CAN 232 RS 转换

    上传时间: 2013-11-04

    上传用户:leesuper

  • 现代微机原理与接口技术

    掌握先进微处理器芯片结构、微型计算机实现技术、计算机主板构成、各种接口技术原理及其应用编程方法;掌握汇编语言程序的编写方法,尤其掌握接口访问的方法。了解微机技术新的发展趋势,系统科学地获得分析问题和解决问题的训练;提高分析和设计接口的能力。不仅要学习微机各种接口电路的原理与作用,熟悉PC系列机接口电路,而且还要掌握常用接口的设计与分析方法,学会使用汇编语言和C语言对接口进行编程,并具有一定的动手实验能力和接口应用程序的编写能力,为微机的深入应用和嵌入式系统SOC设计等的学习与实践打下良好基础。同时有兴趣的同学自学Windows 2000/XP驱动程序的编写方法。一定要下载和打印或复印电子讲义,课堂上注意听讲并及时记录教师课堂上补充的内容,认真独立完成作业,做好课程实验和自修实验、做好课前预习和课后复习。1)抓住IBM PC/XT机基本结构这条主线,分析其基本结构,掌握各接口电路及可编程接口芯片的应用。2)进一步扩展和延伸CPU—从8086~Core 2 Duo,从实模式~保护模式;汇编语言-CPU及接口直接控制,16位~32位汇编;总线—PCI,USB等; 中断—从实模式下的中断向量~保护模式下的中断描述符;从传统中断~PCI中断~串行中断 芯片组—从中大规模集成电路(8237、8254、8255、8259等)~ 超大规模集成电路(82815EP、82801BA)。第1章—CPU与整机:CPU的信号与工作模式、PC结构第11章--软件如何控制CPU和接口:指令系统和汇编编程(在教师讲授重点的基础上,通过预习、实验与练习自学)  第2章--CPU如何与MEM或I/O设备通信:I/O接口与译码  第3章--总线如何工作:总线标准(PCI、USB)  第4章--I/O接口直接和MEM通信:DMA(8237,全自学)  第5章--I/O接口如何主动与CPU通信:中断技术(8259)  第6章--I/O接口的定时与计数功能:(8254)  第7章--I/O接口的并行通信:8255与打印机接口标准  第8章--I/O接口的串行通信:串行通信协议与8250  第10章--I/O软接口技术:保护模式存储,WDM驱动程序编写(全自学)

    标签: 现代微机原理 接口技术

    上传时间: 2014-01-21

    上传用户:徐孺

  • 基于USB接口的数据采集模块的设计与实现

    基于USB接口的数据采集模块的设计与实现Design and Implementation of USB-Based Data Acquisition Module路 永 伸(天津科技大学电子信息与自动化学院,天津300222)摘要文中给出基于USB接口的数据采集模块的设计与实现。硬件设计采用以Adpc831与PDIUSBDI2为主的器件进行硬件设计,采用Windriver开发USB驱动,并用Visual C十十6.0对主机软件中硬件接口操作部分进行动态链接库封装。关键词USB 数据采集Adpc831 PDNSBDI2 Windriver动态链接库Abstract T hed esigna ndim plementaitono fU SB-BasedD ataA cquisiitonM oduleis g iven.Th ec hips oluitonm ainlyw ithA dpc831a ndP DTUSBD12i sused for hardware design. The USB drive is developed场Wmdriver, and the operation on the hardware interface is packaged into Dynamic Link Libraries场Visual C++6.0.  Keywords USB DataA cquisition Adttc831 PDfUSBD12 Windriver0 引言US B总 线 是新一代接口总线,最初推出的目的是为了统一取代PC机的各类外设接口,迄今经历了1.0,1.1与2.0版本3个标准。在国内基于USB总线的相关设计与开发也得到了快速的发展,很多设计者从各自的应用领域,用不同方案设计出了相应的装置[1,2]。数据采集是工业控制中一个普遍而重要的环节,因此开发基于USB接口的数据采集模块具有很强的现实应用意义。虽然 US B总线标准已经发展到2.0版本,但由于工业控制现场干扰信号的情况比较复杂,高速数据传输的可靠性不容易被保证,并且很多场合对数据采集的实时性要求并不高,开发2.0标准产品的成本又较1.1标准产品高,所以笔者认为,在工业控制领域,目前开发基于USB总线1.1标准实现的数据采集模块的实用意义大于相应2.0标准模块。

    标签: USB 接口 数据采集模块

    上传时间: 2013-10-23

    上传用户:q3290766

  • 基于DSP的无刷直流电机控制系统的设计与仿真研究

    基于DSP的无刷直流电机控制系统的设计与仿真研究

    标签: DSP 无刷直流电机 控制系统 仿真研究

    上传时间: 2013-10-19

    上传用户:tian126vip

  • 基于TMS320C6713和FPGA的高速实时采集系统的设计与实现

    基于TMS320C6713和FPGA的高速实时采集系统的设计与实现

    标签: C6713 320C 6713 FPGA

    上传时间: 2014-12-28

    上传用户:几何公差

  • 基于抽象状态机的网格系统设计和分析

    基于抽象状态机的网格系统设计和分析

    标签: 抽象 状态 网格

    上传时间: 2013-10-16

    上传用户:youth25

  • FPGA原理、设计与应用

    一本好书。FPGA原理、设计与应用

    标签: FPGA

    上传时间: 2013-10-16

    上传用户:无聊来刷下