欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    可调数字钟课程实训报告.docx

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

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

    可调数字钟课程实训报告.docx

    1、可调数字钟课程实训报告第一部分 课程设计任务书一、课程设计题目可调数字电子钟二、课程设计时间一周三、课程设计提交方式提交打印式课程设计报告四、设计要求数字钟是采用数字电路实现对.时,分,秒.数字显示的计时装置 ,广泛用于个人家庭,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品。 本项目采用智能芯片机设计了一个具有LED显示(或LCD显示)、键盘输入的时钟系统,使其具有时、分、秒的实时显示和调整功能。 1)自动计时,显示24小时制时间,由6位LED显示器显示时、分、秒。起始时间为:00:00:00。 2)具备校准功能,可以直接由按键设置当前时间。第二部分 课程设计报告一、单片机介

    2、绍MCS-51以其典型的结构和完善的总线专用寄存器的集中管理,众多的逻辑位操作功能及面向控制的丰富的指令系统,堪称为一代“名机”,为以后的其它单片机的发展奠定了基础。正因为其优越的性能和完善的结构,导致后来的许多厂商多沿用或参考了其体系结构,有许多世界大的电气商丰富和发展了MCS-51单片机,象PHILIPS、Dallas、ATMEL等著名的半导体公司都推出了兼容MCS-51的单片机产品,就连我国的台湾WINBOND公司也发展了兼容C51(人们习惯将MCS-51简称C51,如果没有特别声明,二者同指MCS-51系列单片机)的单片机品种。近年来C51获得了飞速的发展,C51的发源公司INTEL由

    3、于忙于开发PC及高端微处理器而无精力继续发展自己的单片机,而由其它厂商将其发展,最典型的是PHILIPS和ATML公司,PHILIPS公司主要是改善其性能,在原来的基础上发展了高速I/O口,A/D转换器,PWM(脉宽调制)、WDT等增强功能,并在低电压、微功耗、扩展串行总线(I2C)和控制网络总线(CAN)等功能加以完善。PHILIPS公司在发展C51的低功耗,高速度和增强型功能上作了不少贡献,当初主要由其来发展C51单片机,他们的83Cxx和87Cxx系列省去了并行扩展总线,适合于作为家用电器类控制的经济型单片机。ATMEL公司推出的AT89Cxx系列兼容C51的单片机,完美地将Flash(

    4、非易失闪存技术)EEPROM与80C51内核结合起来,仍采用C51的总体结构和指令系统,Flash的可反擦写程序存储器能有效地降低开发费用,并能使单片机作多次重复使用。Siemens公司也沿用C51的内核,相继推出了C500系列单片机,在保持了与C51指令兼容的前提下,其产品的性能得到了进一步的提升,特别是在抗干扰性能,电磁兼容和通信控制总线功能上独树一帜,其产品常用于工作环境恶劣的场合。亦适用于通信和家用电器控制领域。还有台湾的WINBOND公司亦开发了一系列兼容C51的单片机,其产品通常具备丰富的功能特性,而且与其质优价廉在市场也占有一定的分额。MCS-51系列单片机主要包括8031、80

    5、51和8751等通用产品,其主要功能如下:8位CPU4kbytes程序存储器(ROM)128bytes的数据存储器(RAM)32条I/O口线111条指令,大部分为单字节指令21个专用寄存器2个可编程定时/计数器5个中断源,2个优先级一个全双工串行通信口外部数据存储器寻址空间为64kB外部程序存储器寻址空间为64kB逻辑操作位寻址功能双列直插40PinDIP封装单一 5V电源供电8051是MCS-51系列单片机中的代表产品,它内部集成了功能强大的中央处理器,包含了硬件乘除法器、21个专用控制寄存器、4kB的程序存储器、128字节的数据存储器、4组8位的并行口、两个16位的可编程定时/计数器、一个

    6、全双工的串行口以及布尔处理器。MCS-51具有比较大的寻址空间,地址线宽达16条,即外部数据存储器和程序存储器的寻址范围达216=64kB,这作为单片机控制来说已是比较大的,这同时具备对I/O口的访问能力。此外,MCS-51采用模块化结构,可方便地增删一个模块就可引脚和指令兼容的新产品。从而容易使产品形成系列化。由于MCS-51集成了几乎完善的8位中央处理单元,处理功能强,中央处理单元中集成了方便灵活的专用寄存器,硬件的加、减、乘、除法器和布尔处理机及各种逻辑运算和转移指令,这给应用提供了极大的便利。MCS-51的指令系统近乎完善,指令系统中包含了全面的数据传送指令、完善的算术和逻辑运算指令、

    7、方便的逻辑操作和控制指令、对于编程来说,是相当灵活和方便的。MCS-51单片机的工作频率为2-12MHz,当振荡频率为12MHz时,一个机器周期为1us,这个速度应该说是比较快的。8051中集成了完善的各种中断源,用户可十分方便地控制和使用其功能,使得它的应用范围加大,可以说它可以满足绝大部分的应用场合。MCS-51把微型计算机的主要部件都集成在一块心片上,使得数据传送距离大大缩短,可靠性更高,运行速度更块。由于属于芯片化的微型计算机,各功能部件在芯片中的布局和结构达最优化,抗干扰能力加强,工作亦相对稳定。因此,在工业测控系统中,使用单片机是最理想的选择。单片机属于典型的嵌入式系统,所以它是低

    8、端控制系统最佳器件。MCS-51的开发环境要求较低,软件资源十分丰富,介绍其功能特性书籍和开发软件随处可取,只需配备一台PC(个人电脑对电脑的配置基本上无要求),一台仿真编程器即可实现产品开发,早期的开发软件多使用DOS版本,随着Windows视窗软件的普及,现在几乎都使用Windows版本,并且软件种类繁多,琳琅满目,在众多的单片机品种中,C51的环境资源是最丰富的,这给C51用户带来极大的便利。 VCC:电源。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程 序数据存储器,它可以被定义

    9、为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作 输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻 拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流

    10、。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存 储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器 的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 图2.1 89C51单片机 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管

    11、脚 备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率

    12、为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器 时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。EA/VPP:当/EA保持低电平时,则在此期间外部程序存储(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式

    13、1时, /EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。二、电子钟简介1电子时钟简介1957,Vebtura发明了世界第一个电子表,从而奠定了电子时钟的基础,电子时钟开始迅速发展起来。现代的电子时钟实基于单片机的一种计时工具,采用延时程序产生一定的时间中断,用于一秒的定义,通过计数方式进行满六十秒分钟进一, 满六十分小时进一,满二十四小时小时清零。从而达到计时的功能,是人民日常生活不可缺少的工具。2 电子时钟的基本特点现在高精度的计时工具大多数却使用了石英晶体振荡器,由于电子时钟、石英钟、石英表都采用了石

    14、英技术,因此走时精度高,稳定性好,使用方便,不需要往常的调试,数字式电子钟用集成电路计时时,译码代替机械式传动,用LED显示器代替指针显示进而显示时间,减小了计时误差,这种表具有时、分、秒显示时间的功能,还可以进行时和分的校对,片选的灵活性好。3电子时钟的原理该电子时钟由89C51,BUTTON,六段数码管等构成,采用晶体振荡电路作为驱动电路,由延时程序和循环程序产生的一秒定时,达到时分秒的计时,六十秒为一分钟,六十分为一小时,满二十四小时为一天。而电路中唯一的一个控制键却拥有多种不同功能,按下又松开,可以实现屏蔽数码管显示的功能,达到省电的目的;直接按下不松开,则可以通过按键实现分钟的累加,

    15、每按一次分钟加一,而连续两次按下按键不松开,则可实现小时的调节,同样每按一次小时加一。三、设计思想整个系统工作时,秒信号产生器是整个系统的时基信号,它直接决定计时系统的精度,采用单片机振荡器加软件分频来实现。将标准秒信号送入“秒计数器”,“秒计时器”采用60进制计数器,每累计60秒发出一个“分脉冲”信号,该信号将作为“分计时器”的时钟脉冲。“分计数器”也采用60进制计数器,每累计60分钟,发出一个“时脉冲”信号,该信号将被送到“时计数器”。“时计数器”采用24进制计数器,可实现对一天24小时的累计。只需单片机最小应用系统,无需扩展电路,显示器用七段共阳LED显示器,显示小时、分、秒;设计三个按

    16、钮开关作为手动校准。其工作流程如下:1) 时间显示:上电后,系统自动进入时钟显示,从00:00:00开始计时。2) 时间校准:按下第一个按钮开关后,系统停止计时,循环进入小时、分钟、秒设定状态,分别按下第二、第三个按钮开关上下设置时间,系统将自动由设定后的时间开始计时显示。置初始时钟用三个键: K2(P3.4)用于改变显示状态,有四个状态: 1修改时 2修改分 3修改秒 0显示状态。 K3(P3.5) 用于当修改“时”、“分”、“秒”分别在这三个状态下对时、分、秒内容加1. K4(P3.6) 用于当修改“时”、“分”、“秒”分别在这三个状态下对时、分、秒内容减1.四、硬件电路设计五、软件设计框

    17、图 1.可分为以下几个功能模块: 1)主程序:初始化与键盘监控。 2)计时:为定时器中断服务子程序,完成刷新计时缓冲区的功能。 3)时间设置:由按键设置当前时间。 4)键盘扫描:判断是否有键按下,并确定键号。 5)显示:完成8位动态显示。2.主程序流程图 对各单元先初始化,启动定时器,循环调用按键子程序进行判断有无按键按下,若有进行按键处理若无就调用显示子程序。 3.键盘中断处理流程图 按键中断处理部分,判断有无键按下,确定键值用以调整时间;就是首先开中断对按键进行消抖动的处理,确定有键按下之后将被按下的键号存起来,若无按键按下返回继续判断。4.电路图:六、程序源代码ORG 0000H ;主程

    18、序开始 LJMP START ORG 000BH LJMP INIT0START: MOV R0,#70H MOV R7,#0CHINIT: MOV R0,#00H ;对连字符进行装值 INC R0 DJNZ R7,INIT MOV 72H,#10 MOV 75H,#10 MOV TMOD,#01H ;选择定时器/计数器T0的方式1 MOV TL0,#0B0H ;对低位赋初值 MOV TH0,#03CH ;高位赋初值 SETB EA SETB ET0 SETB TR0START1: LCALL SCAN LCALL KEYSCAN LJMP START1DL1MS: MOV R6,#14H ;

    19、延时1子程序DL1: MOV R7,#19HDL2: DJNZ R7,DL2 DJNZ R6,DL1 RET DL20MS: ACALL SCAN ;延时20ms子程序 ACALL SCAN ACALL SCAN RET ;数码管显示程序开始SCAN: MOV A,78H MOV B,#0AH DIV AB ;时间秒的十位送给A,时间秒的个位送B MOV 71H,A ;时间秒要显示的十位 MOV 70H,B ;时间秒要显示的个位 MOV A,79H MOV B,#0AH DIV AB ;时间分的十位送给A,时间分的个位送B MOV 74H,A ;时间分要显示的十位送地址 MOV 73H,B ;

    20、时间分要显示的个位送地址 MOV A,7AH MOV B,#0AH DIV AB ;时间时的十位送给A,时间时的个位送B MOV 77H,A ;时间时显示的十位送地址 MOV 76H,B ;时间时要显示的个位送地址 MOV R1,#70H MOV R5,#07FH MOV R3,#09HSCAN1: MOV A,R5 ;数码管的显示程序 MOV P2,A MOV A,R1 MOV DPTR,#TAB MOVC A,A+DPTR ;对字段表取值显示 MOV P0,A MOV A,R5 LCALL DL1MS INC R1 MOV A,R5 RL A MOV R5,A DJNZ R3,SCAN1

    21、MOV P2,#0FFH MOV P0,#0FFH RET ;09和-的字段表TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0BFH ;定时/计数器T0中断程序INIT0: PUSH ACC PUSH PSW CLR ET0 CLR TR0 MOV TL0,#0B0H MOV TH0,#03CH SETB TR0 INC 7BH MOV A,7BH CJNE A,#14H,OUTT0 ;50ms是否到20次,没有到就继续执行50ms的延时 MOV 7BH,#00 INC 78H MOV A,78H CJNE A,#3CH,OUTT0

    22、;一秒的延时是否计到60次,没有就继续执行 MOV 78H,#00 INC 79H MOV A,79H CJNE A,#3CH,OUTT0 MOV 79H,#00 INC 7AH MOV A,7AH CJNE A,#18H,OUTT0 ;60分钟的延时是否计到24次,没有就 MOV 7AH,#00 OUTT0: SETB ET0 ;启动定时器T0 POP PSW POP ACC RETI ;按键处理程序KEYSCAN:CLR EA JNB P3.4,KEYSCAN0 ;P3.4有按键按下则跳转到子程序 JNB P3.5,KEYSCAN1 ;P3.5有按键按下则跳转到子程序 JNB P3.6,K

    23、EYSCAN2 ;P3.6有按键按下则跳转到子程序KEYOUT: SETB EA RETKEYSCAN0:LCALL DL20MS ;20ms的延时消抖 JB P3.4,KEYOUTWAIT0: JNB P3.4,WAIT0 ;判断按键是否松手, 松手就往下执行程序 INC 7CH MOV A,7CH CLR ET0 CLR TR0 CJNE A,#04H,KEYOUT1 ;按下第一次第二次和第三次对时、分、秒选定 MOV 7CH,#00 ;按下第4次时就启动计时 SETB ET0 SETB TR0 LJMP KEYOUTKEYSCAN1:LCALL DL20MS ;按键加一的程序 JB P3

    24、.5,KEYOUTWAIT1: JNB P3.5,WAIT1 MOV A,7CH CJNE A,#02H,KSCAN11 ;如果功能键按下则对时加一调整 INC 7AH MOV A,7AH CJNE A,#18H,KEYOUT1 ;如果加到60则清零 MOV 7AH,#00 LJMP KEYOUTKSCAN11:MOV A,7CH CJNE A,#03H,KSCAN12 INC 79H ;如果功能键是按下第二次则对分进行加一调整 MOV A,79H CJNE A,#3CH,KEYOUT1 MOV 79H,#00 LJMP KEYOUTKSCAN12:INC 78H MOV A,78H CJNE

    25、 A,#3CH,KEYOUT1 ;如果加到60则清零 MOV 78H,#00 LJMP KEYOUTKEYSCAN2:LCALL DL20MS ;延时消抖程序 JB P3.6,KEYOUTWAIT2: JNB P3.6,WAIT2 ;判断是否放开按键 MOV A,7CH CJNE A,#02H,KSCAN21 ;如果功能键是按下第一次对时进行减一 DEC 7AH MOV A,7AH CJNE A,#0FFH,KEYOUT1 MOV 7AH,#17H LJMP KEYOUTKSCAN21:MOV A,7CH CJNE A,#03H,KSCAN22 DEC 79H MOV A,79H ;如果功能键

    26、是按下第二次则对分进行减一 CJNE A,#0FFH,KEYOUT1 MOV 79H,#3BH LJMP KEYOUTKSCAN22:DEC 78H MOV A,78H CJNE A,#0FFH,KEYOUT1 MOV 78H,#3BHKEYOUT1: LJMP KEYOUT ;如果功能键是按下第一次对时进行减一 END七、结束语本次课程设计利用Proteus软件进行电路的仿真。经过一周的时间进行知识总结,把课程设计分成了硬件和软件两大模块。总的来说,硬件部分很好入手,电路也较简单,主要涉及的是简单的按键、电容、电阻、晶振和数码管。在软件部分,细分为了按键模块、显示模块、定时/计数模块,最后把几个模块整合在主程序模块中,使得程序简单明了。整个设计过程中遇到的最大问题是软件的编写,由于采用的是汇编语言,其间使用到的各种寄存器、存储器地址、变量很多,很难对程序的整体把握。通过电子钟的设计,对单片机的原理、结构、外围电路进一步的了解。在整个设计过程中学到了团体精神和独立解决问题的重要性,为以后的求职之路打下了基础。本次课程设计比较仓促,只是完成了设计的基本功能,其拓展功能没有去探究,等到以后有时间再逐步完善该电路的拓展功能。由于时间短暂和本人能力有限,本电路的设计可能存在一定问题和缺陷,如有发现希望老师能够给予批评指正。


    注意事项

    本文(可调数字钟课程实训报告.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

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




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开