版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机原理单片机原理课课 程程 设设 计计 论论 文文 题目题目: : 单片机数字时钟的设计单片机数字时钟的设计 学 生 姓 名: ywh 学号:070108041124 学 部 (系): 信息学部 专 业 年 级: 07 自动化 4 班 指 导 教 师: 职称或学位: 20102010 年年 0707 月月 1111 日日华中科技大学文华学院课程设计(论文)2目录目录第一章第一章 设计要求设计要求.3第二章第二章 单片机简介单片机简介.32.1 概述.32.2 单片机的发展历程.42.3 时钟的特性.4第三章第三章 系统原理与硬件设计系统原理与硬件设计.53.1 硬件选择.53.2 单片机的
2、构成.53.3 at89c52 单片机的引脚说明.63.4 led 简介.7第四章第四章 软软件件设设计计.9第五章第五章 调试过程及数据分析调试过程及数据分析.135.1 硬件调试.135.2 keil 调试.145.3 开发板调试.14第六章第六章 结论与总结结论与总结.15参考文献参考文献.16华中科技大学文华学院课程设计(论文)3第一章第一章 设计要求设计要求题目:数字时钟的设计1、 任务简介:时钟在生产、生活中具有相当重要的作用。数字式时钟直接用数字显示时间,读数直观,并且具有一定的实用功能。本设计要求利用单片机完成一个数字时钟的设计。2、 设计要求:(1) 系统硬件设计:利用单片机
3、实验板完成设计要求(已有) ; (2) 系统软件设计:完成控制软件的编写与调试;(3) 功能要求:1) 6 位数码管显示小时、分钟,秒(例如:18:30:30) ;2) 可通过键盘调校当前时间;3) 具有整点提示功能(例如蜂鸣器鸣响半分钟) ,具有整点报时功能(例如十点响十声) ;4) 1 个 led 每秒闪烁一次,指示秒针动作;5)具有定时功能,可通过键盘设定及查询定时时间;定时时间到,有蜂鸣器提示。第二章第二章 单片机简介单片机简介2.1 概述概述随着电子技术的迅速发展,特别是随着大规模集成电路产生而出现的微型计算机,给人类生活带来了极大的方便。走入家庭,从洗衣机、微波炉到音响、汽车,到处
4、都可以见到单片机应用的踪影。如果说微型计算机技术的出现使现代科学研究得到了质的飞跃,那么也可以毫不夸张的说:“单片机技术的出现则是给现代工业测控领域带来了一次新的工业革命” 。目前,单片机以其可靠性高和智能性等特点被广泛应用到工业控制系统、数据采集系统、智能化仪器仪华中科技大学文华学院课程设计(论文)4表、办公自动化等领域中,并已经进入家庭,因此,单片机技术的开发和应用水平已经逐步成为一个国家自动化发展水平的标志之一。2.2 单片机的发展历程单片机的发展历程单片机是微型计算机的一个重要分支,也是一种非常活跃和颇具生命力的机种,特别适用于工业控制领域。1971 年微处理器研制成功不久,就出现了单
5、片机,但最早的单片机是 1 位的,处理能力有限。单片机的发展共分四个阶段:第一阶段是初级阶段,功能非常简单;第二阶段是低性能阶段, 16 位定时器/计数器,片内 rom、ram 容量加大,直到现在仍被广泛应用,是目前应用数量较多的单片机。 、32 位单片机推出阶段,以满足不同的用户需要。纵观单片机几十年的发展历程,单片机的今后发展方向将向多功能、高性能、高速度、低功耗、低价格、外围电路内装化以及内存储器容量增加和 flash 存储器化方向发展。2.3 时钟的时钟的特性特性省电(关闭显示)功能(2)以 24h(小时)计时方式(3)白来整点报时,晚上 22 点后不报时(4)用六位 led 数码管显
6、示时、分、秒(5)使用按键开关可实现时分调整、秒表功能转换(6)使用按键开关可实现时分调整、时钟功能转换等功能。这里用到中断,50ms 的产生一次。然后累加到 20 次,秒表就加 1.。每 60秒分值加 1。每 60 分时加 1,每 24 小时日加 1.华中科技大学文华学院课程设计(论文)5第三章第三章 系统原理系统原理与硬件设计与硬件设计3.1 硬件硬件选择选择(1)单片机的选择 选用 at89c52 单片机,并配备 12mhz 晶振,复位电路采用上电复位。(2)显示电路选择 采用软件译码动态显示,p3.0-p3.3 作数码管的位选口。p1.0-p1.6 作数码管的段选口。考虑直接用单片机
7、i/o 口作位选时驱动功率不够,(3)电源选择 采用直流 5v 电源供电。(4)选择器的选择 74ls04。(5)ctc89c52 单片机是一种低功耗,高性能的片内含有 4kb 可编程/擦除只读存储器(fperomflash programmable and erasable read only memory)的 8 位 coms 微控制器,使用高密度,非易失存储技术制造,并且与at89c52 引脚和指令系统完全兼容。芯片上的 flash 允许在线编程或采用通用的非易失存储编程器对存储器重复编程。3.2 单片机的构成单片机的构成at89c51 单片机是在一块芯片中集成了 cpu、ram、rom
8、、定时器/计数器和多种功能的 i/o 线等一台计算机所需要的基本功能部件,at89c52 单片机单片机内包含下列几个部件:(1) 一个 8 位 cpu;(2)一个片内振荡器及时钟电路;(3)4k 字节 rom 程序存储器;(4)256 字节 ram 数据存储器;(5)两个 16 位定时器/计数器;(6)可寻址 64k 外部数据存储器和 64k 外部程序存储器空间的控制电路;(7)32 条可编程的 i/o 线(四个 8 位并行 i/o 端口) ;(8)一个可编程全双工串行口;(9)具有五个中断源、两个优先级嵌套中断结构。其内部机构框图如图 2.2 所示: 华中科技大学文华学院课程设计(论文)6图
9、 3-1 mcs-51 单片机内部机构框图3.3 at89c52 单片机的引脚说明单片机的引脚说明at89c52 单片机采用 40 条引脚双列直插式器件,引脚除 5v( 40 脚)和电源地( 20 脚)外,其功能分为时钟电路、控制信号、输入/输出三大部分,逻辑框图及引脚图分别如图 2.4(a)(b)所示 (a) (b) 图 3-2 at89c52 单片机逻辑图与引脚图at89c52 单片机的内部硬件结构中除了程序存储器由 flash 取代了 87c51单片机的 eprom 外,其余部分完全相同,其管脚说明如下:(1)vcc:供电电压(2)gnd:接地(3)时钟电路 xtal1(19 脚)芯片内
10、部振荡电路(单级反相放大器)输入端。华中科技大学文华学院课程设计(论文)7 xtal2(18 脚)芯片内部振荡电路(单级反相放大器)输出端。 (4)控制信号rst(9 脚)复位信号:时钟电路工作后,在此引脚上将出现两个机器周期的高电平,芯片内部进行初始复位,p0 口p3 口输出高电平,将初值 07h 写入堆栈指针。ale(30 脚)地址锁存信号:当访问外部存储器时,p0 口输出的低 8 位地址由 ale 输出的控制信号锁存到片外地址锁存器,p0 口输出地址低 8 位后,又能与片外存储器之间传送信息。另外,ale 可驱动 4 个 ttl 门。(29 脚)片外程序存储器读选通:低电平有效,作为ps
11、enpsenpsen程序存储器的读信号,输出负脉冲,将相应的存储单元的指令读出并送到 p0 口,可驱动 8 个 ttl 门。psen/vpp(30 脚):当为高电平且 pc 值小于 0fffh 时,cpu 执行内部eaea程序存储器程序;当为低电平时,cpu 仅执行外部程序存储器程序。ea3.4 led 简介简介led 数码管根据 led 的接法不同分为共阴和共阳两类,了解 led 的这些特性,对编程是很重要的,因为不同类型的数码管,除了它们的硬件电路有差异外,编程方法也是不同的。图 2.7(a)是共阴和共阳极数码管的内部电路图,它们的发光原理是一样的,只是它们的电源极性不同而已。将多只 le
12、d 的阴极连在一起即为共阴式,而将多只 led 的阳极连在一起即为共阳式。以共阴式为例,如把阴极接地,在相应段的阳极接上正电源,该段即会发光。当然,led 的电流通常较小,一般均需在回路中接上限流电阻。假如我们将b和c段接上正电源,其它端接地或悬空,那么b和c段发光,此时,数码管显示将显示数字“1”。而将a、b、d、e和g段都接上正电源,其它引脚悬空,此时数码管将显示“2”。其它数字的显示原理与此类同。led 的 7 段数码管利用单只 led 组合排列成“8”字型的数码管,分别引出它们的电极,点亮相应的点划来显示出 0-9 的数字。在这次的设计中采用的均是共阴极的 led 显示,当 i/o 口
13、输出为高电平的时候,对应段就被点亮。led数码管的结构图如图 2.7(b)所示。华中科技大学文华学院课程设计(论文)8 (a)(b)图 3-3 led 分类结构图和结构图这次设计的显示部分采用 at89c51 单片机动态扫描完成, 在多数的应用场合中,我们并不希望使用多 i/o 端口的单片机,原则上是使用尽量少引脚的器件。在没有富余端口的情况下,应通过优化设计程序和扩展电路达到预期的目的。动态扫描的频率有一定的要求,频率太低,led 将出现闪烁现象。如频率太高,由于每个 led 点亮的时间太短,led 的亮度太低,肉眼无法看清,所以一般均取几个 ms 左右为宜,这就要求在编写程序时,选通某一位
14、 led 使其点亮并保持一定的时间,程序上常采用的是调用延时子程序。led 显示电路(1) 静态显示电路lde 显示器工作在静态显示时,其公共阳极(或阴极) 接 vcc(或 gnd) ,一直处于显示有效状态,所以每一位的显示内容必须由锁存器加以锁存,显示各位相互独立。(2) 动态显示电路 将所有位的段选线的同名端联在一起,由一个 8 位 i/o 口控制,形成段选线的多位复用。而各位的公共阳极或公共阴极则分别由相应的 i/o 口线控制,实现各位的分时选通,即同一时刻只有被选通位是能显示相应的字符,而其他所有位都是熄灭的。由于人眼有视觉暂留现象,只要每位显示间隔足够短,则会造成多位同时点亮的假象。
15、这就需要单片机不断地对显示进行控制,cpu 需华中科技大学文华学院课程设计(论文)9要不断地进行显示刷新,动态显示电路参见图 2.8,图 2.8 中是扩展了五位的led 数码管显示,用一个 74ls04 作为五个 led 的段选输入,采用动态显示的方式连接。类似地,16 位的 led 数码管显示也可以用这种方法来实现。 图 3-4 五位 led 数码管的动态显示第四章第四章 软件设计软件设计程序如下:程序如下:#include #define uchar unsigned char#define uint unsigned intuchar code seg710=0 x3f,0 x06,0
16、x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f;uchar act8=0 xfe,0 xfd,0 xfb,0 xf7,0 xef,0 xdf,0 xbf,0 x7f; /位选uchar deda, sec=50,min=59,hour=6; /deda 计时器 0 计数多少次是一秒的控制变量sbit led1 = p10; /用 p1.0 口控制 led 灯华中科技大学文华学院课程设计(论文)10uchar num1; /led 灯的计数器变量uchar cnt,m; void delayms(uint) ; sbit fmq=p35;/p3.5 是
17、蜂鸣器的控制端口/*/void init(void)/开定时器 0 和 1,并置初值tmod=0 x11;th0=-(50000/256);tl0=-(50000%256);et0=1; /允许 t0 中断tr0=1;th1=-(1000/256);tl1=-(1000%256);et1=1; tr1=1;/启动ea=1;/开中断/*/void di() /蜂鸣器子程序 uchar i; for (i=0;i100;i+) fmq=0;delayms(1); fmq=1;delayms(1); /*/ void time0(void) interrupt 1 /秒计时器th0=-(50000/
18、256); /置初值tl0=-(50000%256);华中科技大学文华学院课程设计(论文)11deda+;num1+; if(num1=10) /二极管半秒钟亮半秒钟熄达到秒钟动作 num1=0; led1=led1; /led 闪烁子程序 /*/void time1(void) interrupt 3 /数码管显示时分秒子程序th1=-(1000/256); /定时器控制位扫描频率tl1=-(1000%256);if(-cnt=20) /计数 20 次为一秒 deda=0;sec+; if(m0)di();-m; 华中科技大学文华学院课程设计(论文)12 if(sec=60)sec=0;mi
19、n+; if(min=60)min=0;hour+;m=hour; if(hour=24)hour=0;/*/ void delayms(uint xms) /蜂鸣器延时 uint i,j;for(i=xms;i0;i-)for(j=100;j0;j-); /*/void delay(uint k)uint data i,j;for(i=0;ik;i+) for(j=0;j59)min=0;delay(300);break; /键盘控制的进位 case 0 xf7:if(+hour23)hour=0;delay(300);break; default:break; 第五章第五章 调试过程及数据
20、分析调试过程及数据分析5.1 硬件调试硬件调试硬件调试的调试比较困难。因为是调试所以不能对元件进行焊接,只能把各个元件用导线连接起来。调试的整体过程是:各个系统逐个调试,各部分调试成功后再进行组装后的整体调试。调试过程包括:1. 显示部分的调试问题:数码管的显示不稳定,不停的闪烁。分析:没有考虑到干扰及环境的制约。于是我们把在面包板上连好的电路焊接在印刷板上,并采用电容滤波尽可能去除纹波和干扰。2. 控制部分的调试问题:按下按键后数据有时正常有时又不正常,数据的加减不稳定。分析:根据分析有两个问题可以导致此种现象,一是按键接触不良可能有短路,二是程序部分有问题。用万用表测量后发现按键按下后不稳
21、定,更换质华中科技大学文华学院课程设计(论文)14量更好的按键后故障即排除。5.2 keil 调试调试启动 keil 软件,选择“project”菜单下的“new project”命令,输入项目的文件名,选择存储路径,点击“保存”按钮。在“select device”窗口中选择“atmel”下的“at89c51” 芯片,单击“确定”按钮。展开“project workspace”窗口中的“target 1”, 右击 “target 1” ,选择“options for target target 1 ”,选择“target”选项在 keil (mhz)右边输入“12m” 。选择“debug”选
22、项,选择“use keil monitor-51 driver” 。单击“settings”按钮,串口选择“com1”,波特率选择“38400” ,单击“ok”按钮。右击“source group 1” ,选择“add files to group source group 1,在文件类型中选择“asm source file”,找到将要编译的程序,单击 “add”按钮,然后再单击“close”按钮。单击“rebuild all target files”,在“build”窗口中观察编译结果,根据提示修改程序,直到没有错误出现。5.3 开发板调试开发板调试根据程序的设计在开发板上分别连接好各个
23、端口的连接线,用串口线把计算机和试验箱的仿真头连接好。单击 keil 软件上的“start/stop debug session”按钮,再单击“run”按钮,运行程序。观察试验箱上出现的效果,分析程序的对错,直到调试出正确的结果。华中科技大学文华学院课程设计(论文)15第六章第六章 结论结论与总结与总结经过一周的努力,顺利完成了基于at89s52at89s52单片机控制的单片机数字时钟的设计,所完成的工作主要包括以下几个方面:(1)准备阶段的工作准备阶段的工作主要包括:查阅国内外相关文献,了解单片机微控制器的主要作用,发展过程及发展趋势和使用方法,了解用led数码管显示电子时钟日历的工作原理、分析led显示系统。详细了解了at89c51单片机应用中的数据转换显示、数码管显示原理、动态扫描显示原理。(2)系统硬件设计本次的设计基于at89c52单片机的led显示系统主要由at89c52单片机处理器控制、位扫描控制电路、端码显示驱动电路及与计算机的接口电路组成。此外还包括一些基本的电路如电源电路,晶振电路,及接口电路。(3)系统软件设计根据led显示管控制器的功能和系统硬件电路,进
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 事业编综合岗面试真题汇编含答案
- 2026 事业编计算机岗面试易错题集 含解析
- 2026 事业单位水利岗面试题型分析
- 灭火器构造与使用指南
- 腾讯智能汽车战略
- 2026下半年初中地理教资面试自然地理题库
- 2026年山阴县教师招聘考试备考题库及答案解析
- 2026年武威市烟草专卖局人员招聘参考题库及答案详解
- 急性肾损伤诊疗专家共识(2026版)
- 2026乌兰察布察哈尔右翼后旗招聘政府专职消防员考试参考题库及答案解析
- 【2026新版一年级上册数学】第一单元一课一练【人教版】
- 2026年中国光电芯片现状研究及发展趋势预测
- 2026年考研管综199真题(试卷+答案)
- 2026年建党105周年党史知识竞赛题库及答案
- 2026年10月自考动漫艺术概论试题及标准答案
- 颈椎病康复指导
- 亲爱的你啊混声四部合唱简谱
- 中核集团校招面试题及答案(2026版)
- 海康威视iVMS-8700智能建筑综合管理平台 软件技术白皮书
- 首届全国行业职业技能竞赛(电力交易员)大赛考试题(附答案)
- 2024年合肥新站高新技术产业开发区招聘社区工作者40人笔试备考试题及参考答案详解1套
评论
0/150
提交评论