




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、姓名:*班级:*学号:*系别:机电工程系学院:广州大学指导老师:*、*同组成员:*、*设计时间:2011年10月31日至2011年11月4日内容提要 在单片机技术日趋成熟的今天,其灵活的硬件电路的设计和软件的设计,让单片机得到了广泛的应用,几乎是从小的电子产品,到大的工业控制,单片机都起到了举足轻重的作用。本文介绍了基于单片机的数字钟的设计,详细讨论了它从软件上实现的过程,重点在时钟调整的方式:查询和中断的比较,然后,对数字钟的稳定性和精确性作了相关的讨论,并给出了采用中断方式实现的数字钟的源程序。 目录内容提要一、 设计目的二、 设计内容 2.1任务及要求 2.2系统功能说明 2.3软件方面
2、 2.4硬件方面 2.5源程序流程图 2.6程序清单三、仿真实现 3.1引脚连接3.2仿真结果(电路原理图)四、 总结五、 参考文献一、设计目的通过课程设计,增进学生对单片机的感性认识,加深对单片机理论方面的理解,掌握单片机的内部功能模快的应用,如定时器/计数器、中断、片内外存贮器、i/o口、串行口通讯等,使学生了解和掌握单片机应用系统的软硬件设计过程、方法及实现,为以后设计和实现单片机应用系统打下良好基础。二、 设计内容2.1、任务及要求1. 设计一个利用at89s52单片机编程的数字时钟;2. 显示部分用6位八段共阴极数码管;3. 具有显示“时时.分分.秒秒”;4. 具有3个调整按键;5.
3、 按键功能:分调整、时调整、时分调整切换;2.2、系统功能说明 电子钟的格式为:xx.xx.xx ,由左向右分别为:时、分、切换。完成显示由秒01一直加1至59,再恢复为00;分加1,由00至01,一直加1至59,再恢复00;时加1,时由00加至23之后秒、分、时全部清清零。该钟使用t0作50ms的定时中断。走时调整:走时过程中直接调整且不影响走时准确性,按下时分调整切换键进行时分切,换按下时调整键对“时”显示进行调整(每按一次加/减1);按下分调整键对“分”显示进行调整(每按一次加/减1)。2.3、软件方面1. 采用模块化程序结构设计软件,首先将整个软件分成若干功能模块;2. 根据流程图,编
4、写源程序;3. 上机调试各模块程序;4. 与硬件一起联调,最后完成全部调试工作。 2.4硬件方面1将整个硬件系统划分为若干功能单元电路,绘出整个系统逻辑电路图,注明各交单元电路间接口信号 ;2.完成各单元电路设计,选择合适的各类元器件。2.5源程序流程图 主程序流程图 按键控制流程图定时器计数器t0中断服务程序流程图2.6程序清单org 0000hljmp mainorg 000bh ;定时器/计数器t0中断程序入口ljmp zd;主程序main:mov r0,#70h ;初始化清零mov r7,#0ahinit:mov r0,#00hinc r0djnz r7,initmov tmod,#0
5、1h ;方式1 (16位) 定时模式mov tl0,#0b0h ;12m晶振时定时初值取#3cb0hmov th0,#03ch ;定时时间为50ms mov r6,#20setb ea ;cpu中断允许(总允许)位setb et0 ;t0中断允许位setb tr0 ;启动t0中断main1:lcall sxlcall keyscansjmp main1;数码管显示程序sx:mov a,76h ;显示秒钟mov b,#0ahdiv abmov 71h,a ;秒十位数mov 70h,b ;秒个位数mov a,77h ;显示分钟mov b,#0ahdiv abmov 73h,a ;分十位数mov 7
6、2h,b ;分个位数mov a,78h ;显示小时mov b,#0ahdiv abmov 75h,a ;时十位数mov 74h,b ;时个位数;以下为动态显示mov r1,#70h ;循环取缓存缓冲区的内容(秒、分、时)的首地址(秒个位)mov r5,#01h ;每次显示一个数码管mov r3,#06h ;左移6次sx1:mov a,r5 mov p2,a ;把位码送到p2口mov a,r1mov dptr,#tabmovc a,a+dptr ;把对应的字形码送回amov p0,a ;把字形码送到p0口显示出来mov a,r5lcall dl1ms ;延时1msinc r1 ;显示下一个缓冲区
7、的内容mov a,r5rl a ;数码管显示左移一位mov r5,adjnz r3,sx1 ;判断数码管是否显示到最左边mov p2,#00h mov p0,#00hrettab:db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh ;定时器计数器t0中断服务程序zd:mov th0,#03ch ;定时中断子程序。重装定时常数mov tl0,#0b0hdjnz r6,dsout ;50ms记20次,未满20次,跳出中断子程序mov r6,#20inc 76h ;秒加1mov a,76hcjne a,#60,dsout ;不到60s,继续循环,到往下走?mov 7
8、6h,#0 ;满60s,秒单元清零inc 77h ;分加1mov a,77hcjne a,#60,dsout ;不到60s,继续循环,到往下走mov 77h,#0 ;满60分,分单元清零inc 78h ;小时加1mov a,78hcjne a,#24,dsoutmov 78h,#0dsout:reti;按键处理程序keyscan:mov p1,#0ffhmov a,p1cpl ajz keyoutclr eajnb p1.0,keyscan0 ;按键0jnb p1.1,keyscan1 ;按键1jnb p1.2,keyscan2 ;按键2keyout:setb earetkeyscan0:lc
9、all dl20msjb p1.0,keyoutwait0:jnb p1.0,wait0inc 7ahmov a,7ahclr et0clr tr0cjne a,#03h,keyout ;判断0键是否按了三次mov 7ah,#00 ;满三次按键计数器清零setb et0setb tr0sjmp keyoutkeyscan1:lcall dl20ms jb p1.1,keyoutwait1:jnb p1.1,wait1mov a,7ahcjne a,#02h,kscan11inc 77h ;分钟加1mov a,77hcjne a,#60,keyout ;判断分钟是否大于60分mov 77h,#0
10、0 ;分钟大于60分,清零sjmp keyoutkscan11:inc 78h ;小时加1mov a,78hcjne a,#24,keyout ;判断小时是否大于24小时mov 78h,#00 ;小时大于24,清零sjmp keyoutkeyscan2:lcall dl20ms jb p1.2,keyoutwait2:jnb p1.2,wait2mov a,7ahcjne a,#02h,kscan21dec 77h ;分钟减1mov a,77hcjne a,#0ffh,keyoutmov 77h,#59sjmp keyoutkscan21:dec 78h ;小时减1mov a,78hcjne
11、a,#0ffh,keyoutmov 78h,#23sjmp keyout;延时1ms子程序dl1ms:mov r4,#14hdl1:mov r7,#19hdl2:djnz r7,dl2djnz r4,dl1ret;延时20msdl20ms:mov 30h,#2d10ms: mov 31h,#40dl:mov 32h,#123nopdjnz 32h,$djnz 31h,dldjnz 30h,d10msretend三、 仿真实现3.1引脚连接6位高亮共阴型数码管,单片机p0.0p0.7接数码管adp脚,p2.0p2.5分别接反相器、接数码管61脚, p1.0p1.2接时分调整切换、时调整、分调整控
12、制键。3.2仿真结果(电路原理图)四、总结课程设计小结通过一个星期的努力,我们的单片机课程设计终于圆满完成了,设计能够成功完成,是与*、*两位老师的细心指导和帮助是分不开的,在此表示衷心的感谢!这一周的实训,我认识到了很多东西,也学到了很多东西。这次实训的科目是数字钟设计,这个科目综合了我们所学的理论知识,主要培养我们的理论与实践相结合的能力。在实训中,我遇到了很多问题,每次遇到问题时,我们组员之间总是相互配合相互帮助,每一个组员也因此学到更多的专业知识,巩固了各自的单片机操作能力。遇到组员之间无法解决的,我们都会积极地向老师寻求帮助,而两位老师也总是耐心地指导我们,真的非常感谢他们,也包括我的同学,因为他们,我才能成功地完成课程设计任务!通过这次对数字钟的设计,让我了解了设计电路的程序,也让我了解了关于数字钟的原理与设计理念,要设计一个完整的电路总要经过多次的失败才能成功的,在设计中,遇到了许多匪夷所思的问题,一个人就是想破脑子也做不出来,这时候,就需要去询问老师、和同学探讨,共同解决出现的问题,也许就是因为老师的一句提醒,同学间的探讨中就会豁然开朗!通过这次实训,我更深
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 皮革投资协议书
- 私募财务协议书
- 涉案调解协议书
- 市政拖车服务协议书
- 私人代购协议书
- 法国多边协议书
- 病人知情协议书
- 汽车搬运协议书
- 私人赔偿协议书
- 牛奶合作协议书
- CJJ 36-2016 城镇道路养护技术规范
- 直臂式高空作业车安全管理培训课件-
- 之江实验室:生成式大模型安全与隐私白皮书
- 灵芝孢子油的作用
- 免疫组织化学检验技术(免疫学检验课件)
- 世界文明史学习通课后章节答案期末考试题库2023年
- 某石料厂年产10万吨石灰岩开采建设项目可行性研究报告
- 养老院安全工作会议记录范本
- DB21∕T 3275-2020 企业安全风险分级管控和隐患排查治理通则
- 胸腔镜下肺癌根治的手术配合
- 护理查房肺结核护理查房
评论
0/150
提交评论