微机设计报告-LED数码管倒计时系统
- 格式:doc
- 大小:192.05 KB
- 文档页数:15
单片机最小应用系统设计报告一设计题目 (3)二设计目的2.1设计目的要求 (3)2.2系统设计意义 (3)三系统硬件图3.1系统硬件电路原理图 (4)3.2各主要芯片及相应组成电路 (5)四流程图 (8)五系统说明与分析5.1设计步骤 (9)5.2单片机简要介绍 (10)六源程序 (11)七总结 (14)八参考文献 (15)单片机最小应用系统设计报告一、设计题目计时器系统设计设计说明:用8031单片机定时/计数器和LED数码管显示计时时间。
要求某键按下去开始计时,再按一次停止计时;另一键按下去则将时间清零。
二、设计目的该单片机最小应用系统设计目的及要求如下:2.1设计目的要求1采用单片机为核心器件,构成数字式电子秒表系统。
2用四位一体的数码管分别显示分秒(格式要求为XX.XX)3通过按键实现人机对话功能:要求某键按下去开始计时,再按一次停止计时;另一键按下去则将时间清零。
4.掌握单片机汇编编程技术中的设计和分析方法;5.学会使用并熟练掌握电路绘制软件Protel99SE(或DXP);6.掌握电路图绘制及PCB图布线技巧。
2.2 系统设计意义1、在系统掌握单片机相应基础知识的前提下,熟悉单片机最小应用系统的设计方法及系统设计的基本步骤。
2、完成所需单片机最小应用系统原理图设计绘制的基础上完成系统的电路图设计。
3、完成系统所需的硬件设计制作,在提高实际动手能力的基础上进一步巩固所学知识。
4、进行题目要求功能基础上的软件程序编程,会用相应软件进行程序调试和测试工作。
5、用AT89C51,DAC0832设计出题目所要求的波形实现循环显示,并针对实际设计过程中软、硬件设计方面出现的问题提出相应解决办法。
6、通过单片机应用系统的设计将所学的知识融会贯通,锻炼独立设计、制作和调试单片机应用系统的能力;领会单片机应用系统的软、硬件调试方法和系统的研制开发过程,为进一步的科研实践活动打下坚实的基础。
三、系统硬件图图1 系统硬件电路原理图3.1系统的硬件电路原理图系统的硬件电路图如图1所示,从图中可以看到该电路主要有时钟电路、复位电路显示电路等组成。
单片机结业作业1.电路图2.程序:#include <reg51.h>sbit P1_6=P1^6;sbit P1_7=P1^7;unsigned char code led[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};unsigned char clock[2]={59,59}; //60秒倒计时缓冲数组unsigned char *dis_p;unsigned char keytest(); //键盘检测函数unsigned char search(); //查键值函数void display(unsigned char *p); //显示函数void main(){unsigned char i,a,c;TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET0=1;TR0=1;dis_p=clock;while(1){P0=0x80;c=P0;for(i=0;i<8;i++){c>>=1;P0=c;a=keytest();if(a==0x0f) display(dis_p);else{display(dis_p);a=keytest();if(a!=0x0f){P3=0x00;a=search();switch(a){case 0x00:P2=0x3f;break;case 0x01:P2=0x06;break;case 0x02:P2=0x5b;break;case 0x03:P2=0x4f;break;case 0x04:P2=0x66;break;case 0x05:P2=0x6d;break;case 0x06:P2=0x7d;break;case 0x07:P2=0x07;break;case 0x08:P2=0x7f;break;case 0x09:P2=0x6f;break;case 0x0a:P2=0x77;break;case 0x0b:P2=0x7c;break;case 0x0c:P2=0x39;break;case 0x0d:P2=0x5e;break;case 0x0e:P2=0x79;break;case 0x0f:P2=0x71;break;default:break;}while((a=keytest())!=0x0f);}}}}}//**********************************主函数完void display(unsigned char *p){unsigned char buffer[]={0,0,0,0};unsigned char k,i,j,m,temp;buffer[0]=p[0]%10;buffer[1]=p[0]/10;buffer[2]=p[1]%10;buffer[3]=p[1]/10;for(k=0;k<3;k++){temp=0x10;for(i=0;i<4;i++){P3=~temp;j=buffer[i];P2=led[j];temp<<=1;for(m=0;m<200;m++);}}}//*******************************显示函数完unsigned char keytest(){unsigned char c;P1=0x0f;c=P1;c=c&0x0f;return(c);}//*******************键盘检测函数完unsigned char search(){unsigned char a,b,c,d,e;c=0xfe;a=0;while(1){P1=c;d=P1;d=d&0xf0;if(d==0x70){b=0;break;}else if(d==0xb0){b=1;break;}else if(d==0xd0){b=2;break;}else if(d==0xe0){b=3;break;}a++;c<<=1;}e=a*4+b;return(e);}//*****************查键值函数完void daojishi() interrupt 1{unsigned char a;EA=0;TH0=(65536-50000)/256;TL0=(65536-50000)%256;a++;if(a==20){a=0;if(clock[0]==0){clock[0]=59;clock[1]=59;}else{clock[0]--;clock[1]--;}}EA=1;}。
河南农业职业学院专科毕业设计(论文)题目倒计时系统设计学生姓名专业班级所在系指导教师倒计时系统设计摘要:本论文针对倒计时系统的设计的需求,介绍了MCS-51单片机的部分基本原理,如51单片机的接口功能、中断、定时器等等。
倒计时系统需要用到锁存器、矩阵键盘、LED数码显示器等主要模块,通过不同的模块之间相互作用,完成倒计时的初步硬件结构。
对于倒计时器中的LED数码显示器来说,我为了简化线路、降低成本,采用以软件为主的接口方法,即采用Keil uVision3软件程序进行译码。
关键词:倒计时器/单片机/矩阵键盘/Keil uVision3/LED数码显示器THE DESIGN OF COUNTDOWN SYSTEMABSTRACT:This paper focuses on the needs of the countdown system design, introduced the MCS-51 MCU of some of the basic principles.Such as the 51 single-chip interface functions, interrupt, timer and so on. Countdown system needs to use latch, matrix keyboard, LED digital display and other major modules, through interaction between different modules to complete the Countdown to the initial hardware. The countdown device in the LED digital display, In order to simplify the circuit, reduce costs, we adopt a software-based interface method, namely using Keil uVision3 software program for decoding.KEYWORDS:Counter-down,SCM,Matrix keyboard,Keil uVision3,LED digital display目录中文摘要 (II)英文摘要 (III)目录 (III)第一章引言 (2)1.1 课题开发的作用及意义................................. - 0 -1.2 发展方向............................................. - 0 - 第二章原理设计 ................................................ - 2 -2.1 设计任务与要求....................................... - 2 -2.2 方案设计与论证....................................... - 2 -2.3 系统框图............................................. - 2 - 第三章器件的选择及介绍........................................ - 4 -3.1 单片机AT89S51 ......................................... - 4 -3.1.1 主要功能特性 ..................................... - 4 -3.1.2 AT89S51的引脚说明................................ - 4 -3.1.3 单片机定时器的使用 ............................... - 7 -3.2 显示器件选择........................................... - 7 - 第四章硬件电路的设计......................................... - 10 - 第五章各部分电路介绍......................................... - 11 -5.1 复位电路.............................................. - 11 -5.2 时钟电路.............................................. - 12 -5.3 按键电路.............................................. - 13 -5.4 蜂鸣器电路............................................ - 13 -5.5 数码管显示电路........................................ - 14 - 第六章软件设计与流程图....................................... - 16 -6.1 倒计时器主程序流程图................................ - 16 -6.2 定时器0的中断程序流程图............................ - 17 -6.3 定时器1的中断程序流程图............................ - 18 - 第七章 PCB制板图及仿真图...................................... - 20 -7.1 PCB制板图 ............................................ - 20 -7.2 整体电路仿真图以及仿真结果分析........................ - 21 - 第八章安装与调试 ............................................. - 23 -8.1 电路安装.............................................. - 23 -8.2 电路调试.............................................. - 23 -8.3 性能测试与分析........................................ - 23 - 结束语 ........................................................ - 24 - 致谢 ........................................................ - 25 - 参考文献 ...................................................... - 26 - 附录 ........................................................ - 27 -第一章引言1.1课题开发的作用及意义随着社会的发展人们对时间的要求越来越精确,而倒计时的应用也越来越广泛比如;奥运会开幕式的倒计时,篮球比赛的倒计时器,还有爆破时用的倒计时器等等。
数码管倒计时电路的设计LED数码管倒计时电路采用24H计时方式,时分秒用6位数码管显示,分、秒之间为闪烁位,每0.5秒闪烁一次。
该电路采用AT89C51单片机,可按需求设计计时数。
数码管时钟电路如图1所示,其采用AT89C51单片机,LED先是采用动态扫描方式实现,P1口输出段码数据,P3.3~P3.5口接三八译码器作扫描输出,P0.0~P0.6口接按钮开关,为了提高秒计时的精确性,采用12MHz晶振。
1.主程序本设计中的计时采用定时器T0中断完成,其余状态循环调用显示子程序,当P0.6端口开关按下时,转入调时功能程序。
2.显示子程序数码管显示的数据存放在内存单元40H~45H中,其中40H~41H存放秒数据,42H~43H 存放分数据,44H~45H存放时数据,每一地址单元内均为十进制BCD码。
由于采用软件动态扫描实现数据显示功能,显示用十进制BCD码数据的对应段码存放在ROM表中。
显示时,先取出40H~45H某一地址中的数据,然后查得对应的显示用段码从P1口输出。
P3.3~P3.5口将对应的数码管选中,就能显示该地址单元的数据值。
3.定时器T0中断服务程序定时器T0用于时间计时。
定时溢出中断周期设为50ms,中断累计20次(即1秒)时对秒计数单元进行加1操作。
时间计数单元地址分别在40H~41H(s),46H~77H(min),78H~79H(h),20H单元内存放“熄灭符”数据。
在计数单元中采用十进制BCD码计数,满60进位。
4.设置计时数程序设置计时数程序的设计方法是,P0.0~P0.5分别对应秒个位秒十位,分个位分十位,时个位时十位,P0.6设置位,当P0.6为0时,进入设置状态,各位清0,设置结束,按P0.6开始计时。
5.汇编程序清单ORG 0000HLJMP STARTORG 000BHLJMP ZM0;*****************************; 主程序;*****************************START: MOV TMOD,#11H ;设置定时器为0工作方试1MOV TL0,#0B0HMOV TH0,#3CH ;设置定时器0为50msSETB EA ;开总中断SETB ET0 ;开定时器0中断MOV DPTR,#TAB ;表格地址MOV 20H,#0FFH ;设置闪烁位MOV 40H,#00H ;秒个位MOV 41H,#00H ;秒十位MOV 42H,#00H ;分个位MOV 43H,#00H ;分十位MOV 44H,#00H ;时个位MOV 45H,#00H ;时十位MOV 50H,#0C0H ;秒个位显示码MOV 51H,#0C0H ;秒十位显示码MOV 52H,#0C0H ;分个位显示码MOV 53H,#0C0H ;分十位显示码MOV 54H,#0C0H ;时个位显示码MOV 55H,#0C0H ;时十位显示码MOV R2,#20 ;计数用,20*50ms为一秒SETB TR0 ;定时器0开始计时MAIN: ACALL DISPLAY ;显示JB P0.6,MAIN ;调整键按下ACALL DISP ;除抖JB P0.6,MAINACALL SETTIME ;进入调时SJMP MAIN;****************************; 计时中断0;****************************ZM0: PUSH ACC ;保护现场PUSH PSWCLR ET0 ;关闭总中断CLR TR0 ;关计时器0中断MOV A,#0B7H ;中断响应时间同步修正ADD A,TL0MOV TL0,AMOV TH0,#3DHSETB TR0 ;开计时器0DEC R2 ;闪烁位每0.5秒闪烁一次MOV A,R2MOV b,#10DIV ABMOV A,BCJNE A,#0,NEXT ;到0.5秒了吗CPL 06h ;闪烁位取反NEXT: CJNE R2,#0,OUT ;到一秒钟对40H至45H各位进行调整MOV R2,#20MOV R0,#40H ;秒数减一ACALL DEC1MOV R3,41HCJNE R3,#255,OUTACALL CLSMOV R0,#42HACALL DEC1 ;秒数数到0时,分数减一MOV R3,43HCJNE R3,#255,OUTACALL CLSMOV R0,#44H ;分数减到0时,小时数减一ACALL DEC1MOV R3,45HCJNE R3,#255,OUTMOV 40H,#00H ;秒个位归0MOV 41H,#00H ;秒十位归0MOV 42H,#00H ;分个位归0MOV 43H,#00H ;分十位归0MOV 44H,#00H ;时个位归0MOV 45H,#00H ;时十位归0MOV 20H,#0BFHACALL OUT1 ;BCD码化为显示码CLR TR0CLR TR0 ;关闭计时器0SJMP MAIN ;都减为0时,程序结果,等待下一次设置时间OUT: MOV R5,#6;将40H至45H的BCD码译为相应的显示码存放在50H至55H中MOV R0,#45HMOV R1,#55HBIAN: MOV A,@R0MOVC A,@A+DPTRMOV @R1,ADEC R0DEC R1DJNZ R5,BIANPOP ACCPOP PSWSETB ET0RETI;**************************; 减一程序;**************************DEC1: CJNE @R0,#0,OUTT ;对相应的十位与个位进行减一处理MOV @R0,#9INC R0DEC @R0DEC R0RETOUTT: DEC @R0RET;**************************; 归位程序;**************************CLS: MOV @R0,#9INC R0MOV @R0,#5RET;***************************; BCD码化为显示码程序;***************************OUT1: MOV R5,#6 ;将40H至45H的BCD码译为相应的显示码存放在50H至55H中MOV R0,#45HMOV R1,#55HBIAN1: MOV A,@R0MOVC A,@A+DPTRMOV @R1,ADEC R0DEC R1DJNZ R5,BIAN1RET;**********************************; 设置计时数程序;**********************************SETTIME:CLR TR0 ;关闭计时器ACALL DISPLAYMOV 40H,#00H ;秒个位归0MOV 41H,#00H ;秒十位归0MOV 42H,#00H ;分个位归0MOV 43H,#00H ;分十位归0MOV 44H,#00H ;时个位归0MOV 45H,#00H ;时十位归0MOV 20H,#0BFHACALL OUT1 ;BCD码化为显示码ACALL DISP ;除抖JB P0.6,REI1SELF: JNB P0.6,SELF ;等待键释放PUSH ACC ;保护现场PUSH PSWMOV TL0,#0B0H ;重置计数器MOV TH0,#3CHWAIT: ACALL DISPLAY ;等待设置健按下MOV A,P0CPL AJZ WAITACALL DISP ;除抖MOV A,P0CPL AJZ WAITMOV B,A ;保存数据SELF1: MOV A,P0 ;等待健释放CJNE A,#0FFH,SELF1MOV A,B ;计算是哪个键按下,对相应的内存加一MOV R1,#3FHCLR CAGAIN: RRC AINC R1JNC AGAININC @R1MOV B,R1ACALL SETTIME0 ;对时间数据作相应的调整ACALL OUT1 ;BCD码化为显示码MOV R1,BCJNE R1,#46H,W AIT ;p0.6再次为0时,开始计时REI1: POP ACCPOP PSWSETB TR0RET ;返回;*********************************; 调整程序;**********************************SETTIME0:MOV A,40H ;秒个位满10归0CJNE A,#10,SET1MOV 40H,#0SET1: MOV A,41H ;秒十位满6归0CJNE A,#6,SET2MOV 41H,#0SET2: MOV A,42H ;分个位满10归0CJNE A,#10,SET3MOV 42H,#0SET3: MOV A,43H ;分十位满6归0CJNE A,#6,SET4MOV 43H,#0SET4: MOV A,44H ;时个位满4归0CJNE A,#4,SET5MOV 44H,#0SET5: MOV A,45H ;时十位满3归0 CJNE A,#3,SET6MOV 45H,#0SET6: RET;**********************************; 显示程序;**********************************DISPLAY:MOV P1,50H ;显示秒个位MOV P3,#0ACALL DISPMOV P1,#0FFHMOV P1,51H ;显示秒十位MOV P3,#8ACALL DISPMOV P1,#0FFHMOV P1,20H ;显示闪烁位MOV P3,#16ACALL DISPMOV P1,#0FFHMOV P1,52H ;显示分个位MOV P3,#24ACALL DISPMOV P1,#0FFHMOV P1,53H ;显示分十位MOV P3,#32ACALL DISPMOV P1,#0FFHMOV P1,20H ;显示闪烁位MOV P3,#40ACALL DISPMOV P1,#0FFHMOV P1,54H ;显示时个位MOV P3,#48ACALL DISPMOV P1,#0FFHMOV P1,55H ;显示时十位MOV P3,#56ACALL DISPMOV P1,#0FFHRET;*******************************; 0.5ms延时程序;*******************************DISP: MOV 30H,#5DD: MOV 31H,#50DJNZ 31H,$DJNZ 30H,DDRET;*************************************; 表格;*************************************TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H ;0至9的共阳显示码END。
信息与计算机学院课程设计课程设计报告(2011/2012 第1学期)设计题目30秒定时器指导教师学生班级学生姓名学生学号考核成绩上海商学院2011年11月内容摘要此30秒计时器功能齐全,可以直接清零、启动、暂停和连续以及具有光电报警功能。
可以方便的实现断点计时功能,当设计器递减到零时,会发出光电报警信号。
在直接清零时,数码管显示器直接显示为00;计时器为30秒递减计时,计时间隔为1秒;计时器递减到0时,再回到30。
此设计器设计时,采用模块化得设计思想,使设计起来更加简单、方便、快捷。
关键词:秒脉冲发生器74LS192 计数器译码显示电路目录第一章引言 (1)1.1课程设计意义 (1)1.2研究状况概述 (1)第二章课程设计分析 (2)2.1 设计目的: (2)2.2 设计思路: (2)第三章系统方案论证过程 (3)3.1 30秒定时器总体方框图 (3)第四章模块电路设计 (4)4.1秒脉冲电路 (4)4.2 减计数电路 (4)4.3 译码和数码显示电路 (5)4.4时序控制电路.................................................................................... 错误!未定义书签。
4.5 整机框图 (6)第五章主要元器件与设备 (8)5.1元器件清单 (8)第六章系统调试与结果分析 (9)6.1 系统调试 (9)6.2 结果分析........................................................................................... 错误!未定义书签。
第七章总结.. (10)参考文献 (10)致谢 (10)附页: (11)第一章引言1.1课程设计意义数字显示30秒定时器是一个简单的数字电路,然而它可以扩展到很多实际应用当中来,比如篮球倒计时器,交通灯倒计时器等等。
学号1322010119天津城建大学单片机原理及应用A课程设计说明书利用数码管显示的倒计时控制器设计起止日期:2016年05月30日至2016年6月10日学生姓名杨德虎班级电气(1)班成绩指导教师(签字)控制与机械工程学院2016年6月10日天津城建大学课程设计任务书2015 —2016学年第1学期控制与机械工程学院13电气工程及其自动化专业电气(1)班班级课程设计名称:单片机原理及应用A设计题目:利用数码管显示的倒计时控制器设计完成期限:自2016 年 5 月30 日至2016年 6 月10日共 2 周设计依据、要求及主要内容:一.课程设计的目的1.进一步熟悉和掌握单片机的结构及工作原理。
2.掌握单片机的接口技术及相关外围芯片的外特性,控制方法。
3.通过课程设计,掌握以单片机核心的电路设计的基本方法和技术。
4.通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。
5.通过完成一个包括电路设计和程序开发的完整过程,了解开发单片机应用系统的全过程,为今后从事相应开发打下基础。
二.课程设计的基本要求1.认真认识设计的意义,掌握设计工作程序,学会使用工具书和技术参考资料,并培养科学的设计思想和良好的设计作风。
2.提高模型建立和设计能力,学会应用相关设计资料进行设计计算的方法。
3.提高独立分析、解决问题的能力,逐步增强实际应用训练。
4.课程设计的说明书要求简洁、通顺,计算正确,图纸表达内容完整、清楚、规范。
5.课程设计说明书封面格式要求见《天津城建大学课程设计教学工作规范》附表1。
三.课程设计具体要求a) 要求每位同学独立完成设计任务。
b) 原理图及PCB设计1.原理图设计要符合项目的工作原理,连线要正确。
2.图中所使用的元器件要合理选用,电阻、电容等器件的参数要正确标明。
3.原理图要完整,CPU、外围器件、外扩接口、输入/输出装置要一应俱全。
4.设计完成上述原理图对应的PCB图。
c) 程序调计1.根据要求,将总体功能分解成若干个子功能模块,每个功能模块完成一个特定的功能。
淮阴师范学院物理与电子电气工程学院课程设计报告学生姓名学号班级专业电子信息科学与技术题目LED数字倒计时器指导教师2015 年11 月一、设计任务与要求近年来随着计算机在社会领域的渗透,单片机的应用正在不断深入人们的生活,同时带动传统控制检测日新月异。
在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面的知识是不够的,还应根据具体硬件结构,针对具体应用特点与软件结合。
本项目讨论了LED 数字倒计时器的设计与制作,此方案线路简单,成本低,应用前景广阔。
本次设计的任务与要求是,使基于AT89C51单片机的LED数字倒计时器主要具有如下功能:(1)LED数码管显示倒计时时间。
(2)倒计时过程中能设置多个闹钟,当倒计时值倒计到设定值时会发出约2s 的报警声音。
(3)通过按键可以对倒计时设定初值。
倒计时初始值范围在24:00:00-00:00:60之间,用户可根据需要对其进行设置,设置成功后复位初始值为成功设定值。
二、硬件电路设计设计电路采用模块化设计,主要由AT89C51单片机、复位电路、LED显示模块和控制模块组成(如图2.1)。
图2.1 基于AT89C51单片机的数字倒计时器系统框图图2.2 基于AT89C51单片机的数字倒计时器电路原理图(元件清单见附录一)(2)AT89C51单片机控制模块图2.3 单片机控制模板(3)复位电路复位是单片机的初始化操作,只需给AT89S51的复位引脚RST加上大于2个机器周期(即24个时钟振荡周期)的高电平就可得单片机复位,复位时,PC初始化为0000H,使单片机从OUT单元开始执行程序。
除了进入系统的正常初始化之外由于程序运行出错或操作错误而使系统处于死锁状态,为摆脱死锁状态,也需按复位键使得RST脚为高电平,使单片机重新启动。
图2.4复位电路(4)LED显示模块图2.5 LED显示模块(5)按键电路按键电路的按键功能说明:(1)K1用于设置时间的分钟。
淮阴师范学院物理与电子电气工程学院课程设计报告学生姓名学号班级专业电子信息科学与技术题目LED数字倒计时器指导教师2015 年11 月一、设计任务与要求近年来随着计算机在社会领域的渗透,单片机的应用正在不断深入人们的生活,同时带动传统控制检测日新月异。
在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面的知识是不够的,还应根据具体硬件结构,针对具体应用特点与软件结合。
本项目讨论了LED 数字倒计时器的设计与制作,此方案线路简单,成本低,应用前景广阔。
本次设计的任务与要求是,使基于AT89C51单片机的LED数字倒计时器主要具有如下功能:(1)LED数码管显示倒计时时间。
(2)倒计时过程中能设置多个闹钟,当倒计时值倒计到设定值时会发出约2s 的报警声音。
(3)通过按键可以对倒计时设定初值。
倒计时初始值范围在24:00:00-00:00:60之间,用户可根据需要对其进行设置,设置成功后复位初始值为成功设定值。
二、硬件电路设计设计电路采用模块化设计,主要由AT89C51单片机、复位电路、LED显示模块和控制模块组成(如图2.1)。
图2.1 基于AT89C51单片机的数字倒计时器系统框图图2.2 基于AT89C51单片机的数字倒计时器电路原理图(元件清单见附录一)(2)AT89C51单片机控制模块图2.3 单片机控制模板(3)复位电路复位是单片机的初始化操作,只需给AT89S51的复位引脚RST加上大于2个机器周期(即24个时钟振荡周期)的高电平就可得单片机复位,复位时,PC初始化为0000H,使单片机从OUT单元开始执行程序。
除了进入系统的正常初始化之外由于程序运行出错或操作错误而使系统处于死锁状态,为摆脱死锁状态,也需按复位键使得RST脚为高电平,使单片机重新启动。
图2.4复位电路(4)LED显示模块图2.5 LED显示模块(5)按键电路按键电路的按键功能说明:(1)K1用于设置时间的分钟。
河南工业职业技术学院Henan Polytechnic Institute 课程设计说明书题目: LED倒计时显示控制班级:电气1002班姓名:***学号:*********指导教师: ***课程设计任务书一、设计题目:LED倒计时显示控制二、控制要求1.按下起动按钮绿灯亮,两个七段LED数码管显示数字45;每隔1秒LED显示的数字自动减1,直至减到0,然后转到要求2。
2.绿灯闪亮,周期为1s(亮0.5s,灭0.5s),绿灯闪亮3次后熄灭;两个七段LED数码管显示3,每隔1秒显示的数字自动减1,直至减到0,然后转到要求3;3.红灯亮,两个七段LED数码管显示数字30,每隔1秒显示的数字自动减1,直至减到0,然后转到要求1,如此循环,直到停止按钮被按下为止。
三、设计任务1.画出LED外形及段位与数字关系表。
2.画出PLC的I/O接线图。
3.画出梯形图。
4.说明工作原理。
5.编写10000字左右的设计说明书。
前言在没有实现数字化的时候,我们通常是采用手写或者是机械性的数字来进行倒计时,当今,PLC的发明,给我们带来了飞跃性的发展,让我们可以更好的实现数字化的控制,并且可以进行大规模的推广与应用。
随着社会的发展,倒计时在各行各业应用的越来越广泛,工业、技术、机械、医疗、农业等等,PLC 的智能控制原则是控制系统的核心,采用PLC把各种信息输入相应的程序,对于不同的要求,我们只要根据需要,修改一些程序,这样就可以实现我们想要的效果。
倒计时器的广泛应用,大大提高了我们的效率,对于一些需要通过手动或者是机械性的操作具有明显效果。
用可编程控制器实现倒计时的控制系统,以及该系统软、硬件设计方法,实验证明该系统实现简单、经济,有效,通过分析倒计时在控制与管理带来的方便,结合实际情况阐述了倒计时控制系统的工作原理,给出了一种简单实用的倒计时控制系统的PLC设计方案。
可编程序控制器在工业自动化中的地位极为重要,广泛的应用于各个行业。
led数字倒计时器设计自我总结LED数字倒计时器是一种常见的倒计时装置,它通过使用LED(发光二极管)来显示倒计时的时间。
设计一个LED数字倒计时器不仅需要掌握电子电路的知识,还需要了解数字显示技术和计时原理。
在设计和制作过程中,我遇到了一些挑战,但通过不断努力和学习,我成功地完成了LED数字倒计时器的设计。
我需要确定倒计时的时间范围和精度。
LED数字倒计时器可以根据需求设计不同的时间范围,例如从1分钟到24小时等。
在我的设计中,我选择了一个常见的时间范围,从1分钟到60分钟。
为了提高倒计时的精度,我采用了时钟模块来提供准确的时间基准。
接下来,我需要选择适当的LED显示器来显示倒计时的时间。
LED 显示器可以分为共阳极和共阴极两种类型。
在我的设计中,我选择了共阳极的LED显示器。
为了实现倒计时功能,我需要控制LED显示器的每个数码管的每个数字的亮灭。
通过使用逻辑门和计数器等电子元件,我成功地实现了LED数字倒计时器的数字显示功能。
为了使倒计时器更加实用和易于操作,我还添加了一些附加功能。
例如,我增加了开始、暂停和复位按钮,以控制倒计时的启动、暂停和重置。
我还添加了一个蜂鸣器,用于在倒计时结束时发出警报声。
通过这些附加功能,LED数字倒计时器不仅可以简单地显示倒计时的时间,还可以提供更多的操作和警示功能。
在完成LED数字倒计时器的设计后,我进行了一系列的测试和调试。
我验证了倒计时功能的准确性和稳定性,并确保LED显示器的亮灭正常。
同时,我还测试了按钮和蜂鸣器的功能,以确保它们能够正常工作。
通过这些测试和调试,我确保了LED数字倒计时器的正常运行和可靠性。
在这个设计过程中,我学到了很多关于电子电路和数字显示技术的知识。
我深入了解了LED显示器的工作原理和控制方法,并学会了使用逻辑门和计数器等电子元件来实现数字显示和倒计时功能。
通过解决各种问题和挑战,我提高了自己的解决问题的能力和创新能力。
通过设计LED数字倒计时器,我不仅加深了对电子电路和数字显示技术的理解,还提高了自己的实践能力和创新能力。
《微机原理与接口技术》课程设计报告题目: LED数码管倒计时系统专业名称:电子信息工程班级:学号:姓名:2016年 11月LED数码管倒计时系统李聪毅(信息工程学院)摘要:本次设计用了8086 CPU芯片以及8255A芯片、8253芯片和数码管等辅助硬件电路,进行了数码管倒计时的设计。
进行了软件设计并编写了源程序。
数码管倒计时在人们的日常生活中运用广泛。
本系统采用8086为中心器件来设计数码管倒计时系统,系统实用性强、操作简单、扩展强。
本设计就是采用8086最小方式下在Protues7.8软件下模拟倒计时显示时间。
本设计系统由8255AI/O口扩展系统、LED数码显示系统等几大部分组成,本系统采用8086汇编语言编写,主要编写了主程序,LED数码管显示程序等。
总体上完成了软件的编写。
关键词:8086微机系统;倒计时;LED显示系统1 概述1.1 课程设计应达到的目的通过本课程设计,使学生掌握控制系统设计的一般步骤,掌握系统总体控制方案的设计方法。
使学生进一步掌握微型计算机应用系统的硬、软件开发方法,输入/输出(I/O)接口技术,应用程序设计技术,并能结合专业设计简单实用的微型计算机应用系统。
针对课堂重点讲授内容使学生加深对微型计算机硬件原理的理解及提高汇编语言程序设计的能力,为以后的毕业设计搭建了微机系统应用平台,提高学生的开发创新能力。
1.2 课题训练内容设计一个基于8086微型计算机的一个LED数码管倒计时系统,要求能完成基本的倒计时功能;要求学生了解80868微型计算机控制系统的基本设计方法与思路,能独立查阅资料并汇总,具备一定的控制系统设计能力,掌握绘制电路原理图的能力,能编写一定难度的汇编程序并调试。
1.3 设计一个模拟交通信号灯控制系统,要求:1)系统功能:闭合倒计时开关后,LED数码管能自动开始倒计时,能在数码管每隔1秒钟,计时器减1,并具有随时能够暂停的功能,重新闭合开关后能继续倒计时,直到倒计时结束,数码管显示为0为止。
2)给出系统设计方案,画出硬件连线图,并说明工作原理;3)画出程序框图并编写程序。
2 总体设计方案与说明2.1 系统总体设计方案本设计是基于Windows环境下的Proteus7.8软件,在其中进行硬件电路的的设计,汇编语言源程序的编写以及以上两部分工作完成后的软件系统的调试。
本设计的处理控制系统由Intel 8086微处理器在最小模式下组成的单处理器系统构成,用来进行对外围硬件电路进行信息采集、数据处理和控制。
2.2 系统结构框图如图2-2 结构图2-2结构图3 系统硬件部分设计3.1 Intel 8086 微处理器的简介Intel 8086是Intel公司于1978年推出的16位微处理器。
它采用HMOS工艺制造,片内有2.9万个晶体管,单一电源+5V供电,时钟频率4.77-10MHz,片内数据总线、寄存器和外部数据总线都为16位,最大可寻址的物理地址为1M。
要掌握一个CPU的工作性能及使用方法,首先应该了解它的编程结构。
在8086CPU的编程结构上,从功能上,分为两部分,即总线接口部件(BIU)和执行部件(EU)。
8086的逻辑地址为20位,物理地址为16位,,对于编程员来说,只需要考虑逻辑地址即可。
8086为40只引脚双列直插式封装。
Intel 8086 可以工作在最大和最小两种模式下,最小模式和最大模式的确定是通过一条MN/MN所接的逻辑电平是“1”还是“0”来完成。
在最小方式下,微处理器被用来构成一个小规模的单处理机系统,微处理器本身必须提供全部的的控制信号给外围电路。
微处理器被用来构成一个较大规模的多机系统。
在最小模式下的信号如下:(1)AD15~AD0(address data bus)地址/数据复用引脚(双向工作)分时复用的地址/数据线。
(2)A19/S6~A16/S3(Address/Status)输出,是分时复用的地址/状态线。
用作地址线时,A19~A16与A15~A0一起构成访问存储器的20位物理地址。
(3)BHE/ S7 (Bus High Enabale/Status)总线高字节有效信号。
三态输出,低电平有效,用来表示当前高8 位数据线上的数据有效。
(4)NMI(Non Maskable Interrupt Request)不可屏蔽中断请求信号。
由外部输入,上升沿触发,不受中断允许标志的限制。
(5)INTR(Interrupt Request)可屏蔽中断请求信号。
由外部输入,电平触发,高电平有效。
(6)RD(Read)读信号。
三态输出,低电平有效,表示当前CPU正在读存储器或IO端口。
(7) CLK(Clock)主时钟引脚(输入)。
由8284时钟发生器输入。
8286CPU可使用的最高时钟频率随芯片型号不同而异,8086为5MHz,8086-1为10MHz,8086-2 为8MHz。
(8) RESET(reset)复位信号。
由外部输入,高电平有效。
(9) READY(ready)准备就绪信号。
由外部输入,高电平有效,表示CPU 访问的存储器或IO端口已准备好传送数据。
(10) TEST 测试信号。
由外部输入,低电平有效。
CPU 执行WAIT 指令时,每隔5 个时钟周期对TEST 进行一次测试,若测试TEST 无效,则CPU 处于踏步等待状态,直到TEST有效,CPU 才继续执行下一条指令。
(11) MN/MX 工作模式选择信号。
由外部输入,MN/MX 为高电平时,CPU 工作在最小模式;MN/MX为低电平时,CPU工作在最大模式。
(12) GND/VCC电源地和电源。
8086CPU只需要单一的+5V电源,由VCC引脚输入。
(13) INTA 中断响应信号。
向外部输出,低电平有效。
在中断响应周期,该信号表示CPU响应外部发来的INTR信号,用作读中断类型码的选通信号。
(14) ALE 地址锁存允许信号。
向外部输出,高电平有效。
在最小模式系统中用作地址锁存器的片选信号。
(15) DEN数据允许信号,三态输出,低电平有效。
(16) DT/R 数据发送/接收控制信号。
(17) M/IO 存储器/IO 端口访问信号。
(18) WR写信号。
三态输出,低电平有效,表示当前CPU正在写存储器或IO端口。
(19) HOLD总线请求信号。
由外部输入、高电平有效。
表示有其他共享总线的处理器/控制器向CPU请求使用总线。
(20) HLDA 总线请求响应信号。
向外部输出,高电平有效。
CPU 一旦测试到有HOLD 请求,就在当前总线周期结束后,使HLDA有效,表示响应这一总线请求,并立即让出总线使用权。
在不要求使用总线的情况下,CPU中指令执行部件可继续工作。
HOLD变为无效后,CPU也将HLDA 置成无效,并收回对总线的使用权,继续操作。
3.2 8255A芯片的工作原理8255是Intel公司生产的可编程并行I/O接口芯片,有3个8位并行I/O口。
具有3个通道3种工作方式的可编程并行接口芯片(40引脚)。
其各口功能可由软件选择,使用灵活,通用性强。
8255可作为单片机与多种外设连接时的中间接口电路。
8255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址线、控制线接口。
同时必须具有与外设连接的接口A、B、C口。
由于8255可编程,所以必须具有逻辑控制部分,因而8255内部结构分为3个部分:与CPU连接部分、与外设连接部分、控制部分。
1)与CPU连接部分根据定义,8255能并行传送8位数据,所以其数据线为8根D0~D7。
由于8255具有3个通道A、B、C,所以只要两根地址线就能寻址A、B、C口及控制寄存器,故地址线为两根A0~A1。
此外CPU要对8255进行读、写与片选操作,所以控制线为片选、复位、读、写信号。
各信号的引脚编号如下:(1)数据总线DB:编号为D0~D7,用于8255与CPU传送8位数据。
(2)地址总线AB:编号为A0~A1,用于选择A、B、C口与控制寄存器。
(3)控制总线CB:片选信号、复位信号RST、写信号、读信号。
当CPU要对8255进行读、写操作时,必须先向8255发片选信号选中8255芯片,然后发读信号或写信号对8255进行读或写数据的操作。
2)与外设接口部分根据定义,8255有3个通道A、B、C与外设连接,每个通道又有8根线与外设连接,所以8255可以用24根线与外设连接,若进行开关量控制,则8255可同时控制24路开关。
各通道的引脚编号如下:(1)A口:编号为PA0~PA7,用于8255向外设输入输出8位并行数据。
(2)B口:编号为PB0~PB7,用于8255向外设输入输出8位并行数据。
(3)C口:编号为PC0~PC7,用于8255向外设输入输出8位并行数据,当8255工作于应答I/O方式时,C口用于应答信号的通信。
3)控制器部分8255将3个通道分为两组,即PA0~PA7与PC4~PC7组成A组,PB0~PB7与PC0~PC3组成B组。
如图7.5所示,相应的控制器也分为A组控制器与B组控制器,各组控制器的作用如下:(1)A组控制器:控制A口与上C口的输入与输出。
(2)B组控制器:控制B口与下C口的输入与输出。
引脚功能:RESET:复位输入线,当该输入端处于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。
CS:芯片选择信号线,当这个输入引脚为低电平时,即/CS=0时,表示芯片被选中,允许8255与CPU进行通讯;/CS=1时,8255无法与CPU做数据传输.RD:读信号线,当这个输入引脚为低跳变沿时,即/RD产生一个低脉冲且/CS=0时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。
WR:写入信号,当这个输入引脚为低跳变沿时,即/WR产生一个低脉冲且/CS=0时,允许CPU 将数据或控制字写入8255。
D0~D7:三态双向数据总线,8255与CPU数据传送的通道,当CPU执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。
8255具有3个相互独立的输入/输出通道端口,用+5V单电源供电,能在以下三种方式下工作。
方式0————基本输入输出方式;方式1————选通输入/出方式;方式2————双向选通输入/输出方式;PA0~PA7:端口A输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入锁存器。
工作于三种方式中的任何一种;PB0~PB7:端口B输入输出线,一个8位的I/O锁存器,一个8位的输入输出缓冲器。
不能工作于方式二;PC0~PC7:端口C输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入缓冲器。
端口C可以通过工作方式设定而分成2个4位的端口,每个4位的端口包含一个4位的锁存器,分别与端口A和端口B配合使用,可作为控制信号输出或状态信号输入端口。