首页 单片机数字时钟课程设计报告

单片机数字时钟课程设计报告

举报
开通vip

单片机数字时钟课程设计报告单片机数字时钟课程设计报告 单片机数字时钟设计 目录 1.引言??????????????????????????????????????????????????????????2 2.关键词????????????????????????????????????????????????????????2 3.内容摘要??????????????????????????????????????????????????????2 4.设计内容????????????????????????????????...

单片机数字时钟课程设计报告
单片机数字时钟课程设计 报告 软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载 单片机数字时钟设计 目录 1.引言??????????????????????????????????????????????????????????2 2.关键词????????????????????????????????????????????????????????2 3.内容摘要??????????????????????????????????????????????????????2 4.设计内容??????????????????????????????????????????????????????2 4.1任务 关于书的成语关于读书的排比句社区图书漂流公约怎么写关于读书的小报汉书pdf ??????????????????????????????????????????????????????2 4.2设计思路电路原理框图????????????????????????????????????????3 4.3软件设计方面????????????????????????????????????????????????4 4.4硬件设计方面????????????????????????????????????????????????4 5主要元器件的概述??????????????????????????????????????????????4 6.仿真实现?????????????????????????????????????????????????????7 6.1引脚连接(电路连接图)???????????????????????????????????7 6.2仿真结果(电路原理图)???????????????????????????????????8 6.3 PCB图??????????????????????????????????????????????????9 6.4实验操作????????????????????????????????????????????????9 7.元件清单?????????????????????????????????????????????????????10 8.程序附录?????????????????????????????????????????????????????13 总结 初级经济法重点总结下载党员个人总结TXt高中句型全总结.doc高中句型全总结.doc理论力学知识点总结pdf ??????????????????????????????????????????????????????????20 参考文献??????????????????????????????????????????????????????20 1 【引言】 高精度的计时工具大多数都使用了石英晶体振荡器~由于电子钟、石英表、石英钟都采用了石英技术~因此走时精度高、稳定性好、使用方便、不需要经常调校。数字电子时钟~自从它发明的那天起~就成为人类的朋友~是人们日常生活中必不可少的必需品~广泛用于个人家庭以及车站、航站、剧院、办公室等公共场所~给人们的生活、学习、工作、娱乐带来极大的方便。但随着时间的推移~科学技术的不断发展~生活节奏越来越快~竞争日益激烈~人们对时间计量的精度要求越来越高~应用越来越广。 【内容摘要】 本实验采用LCD液晶屏作为显示系统~以STC89C51单片机为核心~由液晶显示屏~键盘~电容电阻~晶振等元器件组成。所组成的模块能够实验时~分~秒的数据显示~通过程序设计运用四个按键SB0~SB1~ SB2~ SB3能够实现对数字时钟时间的设置和调整。本实验将写好的软件烧录到单片机中~通过单片机来实现~是实验的电路图更加简单明了~系统稳定性大大提高。 【关键词】 单片机,数字时钟,中断,定时,汇编 任务书 设计题目:单片机数字时钟设计 主要内容与目标: 1:通过单片机内定时器控制走时,准确持续走时,调时不影响走时; 2:在LCD上显示时,分,秒; 3:通过五个按键能够对时间进行设定和调整。 具有的设计基本条件: 1:PC机一台; 2:STC89C51单片机一块; 3:Keil C调试环境、Proteus仿真软件,Protel画图 软件。 计划设计进程: 1:明确课题对程序功能,运算精度等方面的要求及硬件条件 2:把复杂问题分解为若干模块,确定各模块处理方法,画出流程图。 3:编制程序,根据流程图精心选择合适的指令和寻址方式来编制源程 2 序 4:对程序进行汇编,调试和修改,直到程序运行结果正确为止。 5:购买器材,连接、制作硬件; 6:将软件功能在硬件上得到实现,做出数字钟实物。 设计思路电路原理框图: 初始化 LCD显示赋值 时钟芯片赋初值 是 定闹钟程序 键按下 否 取时钟 送显示 . 3 软件设计方面: 1:采用模块化程序结构设计软件,首先将整个软件分成若干功能模块; 2:根据设计原理图编写程序; 3:通过keil软件编写调试程序; 4:与硬件一起联调,最后完成全部调试工作。 硬件设计方面: 1:将整个硬件系统划分为若干单元电路,绘出整个逻辑电路,注明单元电路元件接口信号; 2:完成各单元电路设计,包括选择各类元器件和电路板设计。 主要元件概述: 单片机STC89C52概述 实验用到的引脚功能 1:电源 (1) VCC-芯片电源,接+5V (2) VSS-接地端 2:时钟XTAL1,XTAL2-晶体振荡电路反向输入端和输出端。 3:P0口:接LCD进行数据显示 P2口:接LCD控制 P3口:接按键 REST功能:复位信号输入端 4 单片机引脚图: 1602液晶模块概述: 主要技术参数 显示容量:16*2个字符 芯片工作电压:4.5~5.5V 工作电流:2.0mA(5.0V) 模块最佳工作电压(5.0V) 1602各引脚功能: 第1脚:VSS为地电源。 第2脚:VDD接5V正电源。 第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接 5 地电源时对比度最高,本实验中通过使用一个10K的电位器调整对比度。 第4脚:RS为寄存器选择,高电平时选择数据寄存器,低电平时选择指令寄存器。 第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。 第6脚:E端为使能端,当E端由高电平跳变为低电平时,液晶模块执行命令。 第7~14脚:D0~D7为8位双向数据线。 第15~16脚:空脚,可以用来接背光。(15脚接正极,16脚接负极) 1602信号真值表 RS RW E 功能 0 0 下降沿 写指令代码 0 1 高电平 读忙标志和 AC值 1 0 下降沿 写数据 1 1 高电平 读数据 6 仿真实现: 电路原理图: 7 仿真效果图: 8 PCB图: 实验操作: 本时钟设置有五个按键,其中S1为复位键,S2为调时移位键,S3为移 位+,S4为移位-,S5为退出,当需要调时时,摁下S2,可以调分,再 摁下S2就可以调小时,分别用S3和S4键来调整时间的加减,调完后 摁S5退出 9 元件清单: 元件名称: 数量: STC89C51 1块 LCD1602 1块 按键 5个 瓷片电容22pF 2个 电解电容10uF 1个 9排阻 1个 14脚单排插座 1个 1个 DIP40插座 1个 12MHz晶振 1个 可调电阻 1个 10K电阻 1个 10 程序附录: COM EQU 50H ;LCD指令寄存器 DAT EQU 51H ;LCD数据寄存器 RS EQU P2.4 ;LCD寄存器选择信号 RW EQU P2.5 ;LCD读/写选择信号 E EQU P2.6 ;LCD使能信号 NUM EQU 20H;中断次数 SEC EQU 21H;秒 MIN EQU 22H;分 HOU EQU 23H;时 YIW EQU 27H;移位数单元 HOU1 EQU 28H;小时的十位 HOU0 EQU 29H;小时的个位 MIN1 EQU 2BH;分钟的十位 MIN0 EQU 2CH;分钟的个位 SEC1 EQU 2EH;秒的十位 SEC0 EQU 2FH;秒的个位 ;----------------------------------------------- ;-------------主程序开始------------------------ ORG 0000H LJMP MAIN ORG 000BH ;定时器T0中断入口地址 AJMP TIME ;跳转到中断服务程序 ORG 0030H MAIN: MOV SP,#60H LCALL INT ;调用LCD间接控制方式下的初始化子程序 MOV COM,#01H;LCD清0命令 LCALL PR1 ;调用写命令字程序 MOV COM,#06H;输入方式命令,光标右移 LCALL PR1 MOV R2,#10H ;共显示 16个字符 00010000b MOV R3,#00H 11 MOV 20H,#20H ;中断次数 MOV 21H,#55H ;秒 MOV 22H,#59H ;分 MOV 23H,#23H ;时 MOV 27H,#00H ;移位数单元 MOV IP,#02H ;设定PT0(定时器0中断优先级设定位)为高优先级,即PT0=1 MOV IE,#82H ;总禁止位开EA=1.定时器0溢出中断允许位ET0,1. MOV TMOD,#01H ;设定定时器T0工作方式1(GATE=0,C/T=0,M1=0,M0=1) MOV TL0,#0B0H ;定时器的专用寄存器(SFR)TL0,指定时器T0的低字节 MOV TH0,#3CH ;定时器的专用寄存器(SFR)TH0,指定时器T0的高字节 SETB TR0;TR0(TCON.4),定时器0运行控制位,由软件置位/复位来开启和关闭定时器/计数器0 DISP: LCALL FORMAT MOV COM,#80H;设置DDRAM地址,首地址为 第一行 第一个字符的地址 80H LCALL PR1 MOV 2AH,#':' MOV 2DH,#':' MOV R0,#HOU1 MOV R1,#08H TDIS:;显示时间 MOV A,@R0 CJNE A,#':',GOADDT JMP OUTT GOADDT: ADD A,#30H OUTT: MOV DAT,A LCALL PR2 INC R0 DJNZ R1,TDIS 12 MOV COM,#0C0H;设置DDRAM地址,首地址为 第一行 第一个字符的 地址 xxH LCALL PR1 MOV 32H,#'-' MOV 35H,#'-' MOV R1,#08H LJMP DISP FORMAT:;将时间数据格式化 MOV A,SEC ;处理秒SEC-->SEC1,SEC0 ANL A,#0FH; MOV SEC0,A MOV A,21H ANL A,#0F0H; SWAP A;高4位和低4位互换 MOV SEC1,A;秒的十位 MOV A,MIN ;处理分钟MIN-->MIN1,MIN0 ANL A,#0FH MOV MIN0,A ;分的个位 MOV A,22H ANL A,#0F0H SWAP A MOV MIN1,A ;分的十位 MOV A,HOU ;处理小时HOU-->HOU1,HOU0 ANL A,#0FH MOV HOU0,A MOV A,23H ANL A,#0F0H SWAP A MOV HOU1,A RET 13 TIME: PUSH ACC ;保护现场 PUSH PSW MOV TL0,#0B0H ;赋定时初值 MOV TH0,#3CH LCALL FUNTION INC NUM ;中断次数,满20次加, MOV A,NUM CJNE A,#20,RETI1 MOV 20H,#00H ;一秒钟时间到,中断次数清零 MOV A,SEC ADD A,#01H ;秒钟加一 DA A MOV SEC,A CJNE A,#60H,RETI1 MOV SEC,#00H ;一分钟时间到 ,秒清零 MOV A,MIN ADD A,#01H ;分钟加一 DA A MOV MIN,A CJNE A,#60H,RETI1 MOV MIN,#00H ;一小时时间到 ,分清零 MOV A,HOU ;小时加一 ADD A,#01H DA A MOV HOU,A CJNE A,#24H,RETI1 MOV HOU,#00H ;到时间达到24小时,小时清零. RETI1: POP PSW ;恢复现场 POP ACC RETI ;中断返回 14 NOP NOP ;-----------按键判断子程序------------------------ ;子程序名:FUNTION ;-------------------------------------------------- FUNTION: JNB P3.0,FUN1;判断移位键是否按下,如按下跳到FUN1,没按判断27H 是否为0 MOV A,27H CJNE A,#00H,FUN2;不为零判断27H是否为1 RET FUN1: LCALL DELAY0 MOV A,27H ADD A,#01H DA A MOV 27H,A CLR C MOV A,27H MOV B,#06H SUBB A,B JC FUN2 MOV 27H,#00H RET FUN2: MOV A,27H CJNE A,#01H,JUD2;判断27H是否等于2 JB P3.1,DEC1 ;判断加法按键是否按下,按下22H加1,不按下判断 减是否按下 LCALL DELAY0 MOV A,22H ADD A,#01H DA A MOV 22H,A ;判断分钟是否大于60,如果大于60就清零 CLR C MOV A,22H MOV B,#60H SUBB A,B 15 JC EXIT2 MOV 22H,#00H JMP EXIT2 DEC1:;判断减法按键是否按下 JB P3.2,EXIT2 DEC 22H LCALL DELAY0 ;判断分是否小于零,如果小于零就变59 MOV A,22H CJNE A,#0FFH,SU1 MOV 22H,#59H JMP EXIT2 SU1: ANL A,#0FH CJNE A,#0FH,EXIT2 ANL 22H,#0F0H XRL 22H,#09H JMP EXIT2 JUD2: CJNE A,#02H,EXIT;判断27H是否等于3 JB P3.1,DEC2 ;判断加是否按下,按下23H加1,不按下判断减是否 按下 LCALL DELAY0 MOV A,23H ADD A,#01H DA A MOV 23H,A ;判断小时是否大于24,如果大于24就清零 CLR C MOV A,23H MOV B,#25H SUBB A,B JC EXIT2 MOV 23H,#00H JMP EXIT2 EXIT2: JMP EXIT DEC2:;判断减是否按下 JB P3.2,EXIT DEC 23H 16 DA A LCALL DELAY0 ;判断小时是否小于零,如果小于零就变23 MOV A,23H CJNE A,#0FFH,SU2 MOV 23H,#23H JMP EXIT SU2: ANL A,#0FH CJNE A,#0FH,EXIT ANL 23H,#0F0H XRL 23H,#09H JMP EXIT EXIT: JNB P3.3,FUN4;如果EXIT按下,跳到FUN4 ,27H清零 RET FUN4: MOV 27H,#00H RET ;------------------------------------------------------------------ ;------------LCD间接控制方式下的初始化子程序----------------------- ;------------------------------------------------------------------ INT: LCALL DELAY MOV P1,#38H;工作方式设置指令代码 CLR RS CLR RW MOV R2,#03;循环量=3 INTT1: SETB E CLR E DJNZ R2,INTT1 MOV P1,#38H;工作方式设置 SETB E CLR E MOV COM,#38H ;工作方式设置 LCALL PR1 MOV COM,#01H ;清屏 LCALL PR1 17 MOV COM,#06H ;输入方式命令,光标右移 LCALL PR1 MOV COM,#0CH ;设置显示方式 LCALL PR1 RET ;-------------延时子程序---------------- DELAY: MOV R6,#09H DELAY2: MOV R7,#3FH DELAY1: NOP DJNZ R7,DELAY1 DJNZ R6,DELAY2 RET DELAY0: MOV R5,#03H ;消除按键抖动延时程序 MOV R6,#0EFH MOV R7,#0EFH WAIT: DJNZ R7,WAIT DJNZ R6,WAIT DJNZ R5,WAIT RET ;-------------------------------------------------- ;------------LCD写指令子程序----------------------- ;-------------------------------------------------- PR1: PUSH ACC CLR RS SETB RW PR11: MOV P0,#0FFH SETB E LCALL DELAY NOP MOV A,P0 CLR E JB ACC.7,PR11 18 CLR RW MOV P0,COM SETB E CLR E POP ACC RET ;-------------------------------------------------- ;------------LCD写显示数据子程序----------------------- ;-------------------------------------------------- PR2: PUSH ACC CLR RS SETB RW PR21: MOV P0,#0FFH SETB E LCALL DELAY MOV A,P0 ;读BF和AC6-0值 CLR E JB ACC.7,PR21 SETB RS CLR RW MOV P0,DAT ;写入数据高4位 SETB E CLR E POP ACC RET END 19 总结: 通过一周多的课程设计实验,更加扎实了我对单片机的课程学习和实践动手能力。在编写程序和做板的过程中出现过很多例如程序的编写时候的纠错与检错;PCB画图时走线过细焊盘过小,导致压板腐蚀后出现的断线,焊盘脱落;压板成功后实验板因为种种原因未能实现功能等问题,这些都暴露了我们在这方面的欠缺与不足。经过反复的思考与检查,亲手制作了三块实验板,终于取得成功,使我们的知识不再是纸上谈兵。 从理论到实验,从遇到问题到与同学共同解决问题,课程设计使我对单片机这门课的认识与掌柜更进了一步。通过理论和实践的结合亲手解决问题,使自己学到了更多课本上没有的知识这些面对未来社会的挑战都是非常重要的。 参考文献: 1:《单片机原理与应用》 李精华主编 2:百度文库 3:豆丁网文库 4:道客巴巴文档 单片机技术课程设计与制作成绩评定表 设计题目:基于单片机的电子时钟 学号:200904520237 姓名:周冲 20 项目 评语内容 评定等级 A 基本要求评价:掌握基础理论,设计过程中B 设计 的学习态度,文献查阅能力,设计思路可行 表现 C 性能力评价设计任务量、设计过程中参与情 (20%) D 况 E A B 设计 调试过程中运用理论分析与解决问题的能 说明书 力;报告格式规范性、全面性、逻辑性、表C (30%) 达能力综合评价 D E A B 实物 电路实现情况,电路板外观、焊点、设计合 评价 C 理性等 (30%) D E A B 答辩 答辩时,回答老师提出的软硬件问题情况 C (20%) D E 综合成绩 年 月 日 21
本文档为【单片机数字时钟课程设计报告】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_511210
暂无简介~
格式:doc
大小:152KB
软件:Word
页数:22
分类:生活休闲
上传时间:2018-11-13
浏览量:41