ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:685.52KB ,
资源ID:1233657      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/1233657.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于C51单片机技术的时钟课程设计报告 精品.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于C51单片机技术的时钟课程设计报告 精品.docx

1、基于C51单片机技术的时钟课程设计报告 精品课设报告福建工程学院软件学院题 目: 时钟 班 级: 姓 名: 学 号: 指导老师: 日 期: 2013 年 10 月 11日 目 录1 摘要 12 设计要求 12.1 功能需求 12.2 设计要求 13硬件设计及描述 13.1总体描述 13.2系统总体框图 13.3Proteus电路图 23.4各部分硬件介绍 24软件设计流程及描述 64.1程序流程图 64.2函数模块及功能 74.2.1单片机主控制模块 74.2.2数码管显示模块 84.2.3 按键模块 94.2.4计时模块 105功能实现 116心得体会 137源程序 131 摘要 众所周知单

2、片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。本设计要制作的就是单片机于生活中最为常见的几种应用时钟。本设计以AT89S52单片机作为核心,可以显示当前的时间,时间也可以人为设定,显示格式为时(两位),分(两位),秒(两位)。设置时间的数值、启动定时器。时钟显示电路由数码管组成, 制作该装置的材料需要有软硬件的支持,硬件方面AT89C51单片机,晶振,

3、电源,数码管。2 设计要求2.1 功能需求1、在数码管上显示初始时间如12-23-33,从初始设置的时间开始走时,每一秒自动加1,当59秒后自动向分进位、59分后自动向时进位。2、通过按键设置时间,按下键1,时钟分加1;按下键2,时钟分减1,。从而实现用按键设置时间的功能。2.2 设计要求 本次设计的是时钟,本电路是由AT89S52单片机为控制核心,通过按键实现时钟分的自增自减进行时间的设置,在数码管上进行显示。3硬件设计及描述3.1总体描述 单片机采用STC90C516RD+,采用MCS-51实验开发板。在实验开发板上,根据功能需求,设定了控制模块由AT89S52单片机为控制核心,具有在线编

4、程功能,低功耗,能在3V超低压工作,选用12MHZ的晶振,使得单片机有合理的运行速度;输入模块由按键控制,设定或调整时间信息;输出模块有数码管显示时间信息,通过对AT89S52单片机的编程控制数码管的显示。 3.2系统总体框图 系统总体框图如图3-1所示: 图 3-1 系统总体框图 3.3Proteus电路图 整体Proteus电路图如下图3-2所示:图3-2 整体Proteus电路图 3.4各部分硬件介绍 AT89C51单片机为40引脚双列直插芯片,有四个I/O口P0,P1,P2,P3, MCS-51单片机共有4个8位的I/O口(P0、P1、P2、P3),每一条I/O线都能独立地作输出或输入

5、。18引脚和19引脚接时钟电路,XTAL1接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出。第9引脚为复位输入端,接上电容,电阻及开关后够上电复位电路,20引脚为接地端,40引脚为电源端。如下图3-3所示:图3-3AT89C51仿真图 74HC573的八个锁存器都是透明的D 型锁存器,当使能(G)为高时,Q 输出将随数据(D)输入而变。当使能为低时,输出将锁存在已建立的数据电平上。输出控制不影响锁存器的内部工作,即老数据可以保持,甚至当输出被关闭时,新的数据也可以置入。这种电路可以驱动大电容或低阻抗负载,可以

6、直接与系统总线接口并驱动总线,而不需要外接口。特别适用于缓冲寄存器,I/O 通道,双向总线驱动器和工作寄存器。表3-1为74HC573的引脚功能表:表3-1 74HC573引脚功能表PIN No 引脚号SYMBOL符号NAME AND FUNCTION名称及功能1OE3 State output Enable Input (Active LOW)3态输出使能输入(低电平)2, 3, 4, 5, 6, 7, 8, 9D0 to D7Data Inputs数据输入12,13,14,15,16,17,18,19Q0 to Q73 State Latch Outputs 3态锁存输出11LELatch

7、 Enable Input 锁存使能输入10GNDGround接地(0V)20VCCPositive Supply Voltage电源电压 下图74HC573的仿真图,其中引脚29分别接AT89C51的P0,引脚1219分别接数码管的A、B、C、D、E、F、G、D、P端,引脚1接电源端,引脚11接地端。图3-4 74HC573仿真图 74HC138 按照三位二进制输入码和赋能输入条件,从8 个输出端中译出一个低电平输出。两个低电平有效的赋能输入端和一个高电平有效的赋能输入端减少了扩展所需要的外接门或倒相器,扩展成24 线译码器不需外接门;扩展成32 线译码器,只需要接一个外接倒相器。在解调器应

8、用中,赋能输入端可用作数据输入端。下表为74HC138的真值表,其中H表示高电平,L表示低电平。表3-2 74HC138真值表 下图为74HC138的仿真电路图,其中,引脚1、2、3分别接AT89C51的P00、P01、P02,引脚4、5接地,引脚5接一个上拉电阻并接电源端,Y0Y7分别接数码管的引脚18。图3-5 74HC138仿真图 下图为按键K1、K2的仿真图,K1接AT89C52的引脚P32控制时钟的分钟自加、K2接P33控制时钟的分钟自减。图3-6 开关K1、k2仿真图 下图为共阴数码管的方真图,其原理详见下文。图3-7 共阴数码管仿真图4软件设计流程及描述4.1程序流程图 程序流程

9、图如图4-1所示:图4-1 程序流程图4.2函数模块及功能4.2.1单片机主控制模块 AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。AT89S52单片机为40引脚双列直插芯片,有四个I/O口P0,P1,P2,P3, MCS-51单片机共有4个8位的I/O口(P0、P1、P2、P3),每一条I/O线都能独立地作输出或输入。18引脚和19引脚接时钟电路,XTAL1接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出。第9引脚为复位输入端,接上电容,电阻及开关后够上电

10、复位电路,20引脚为接地端,40引脚为电源端。引脚图如图4-2所示:图4-2 AT89S52 引脚结构 4.2.2数码管显示模块 LED数码管显示器的内部由8个发光二极管组成。其中7个长条形的发光二极管排列成“日”字形,另一个圆点形状的发光二极管在显示器的右下角作为显示小数点用。数码管的外观引脚结构如图4-3所示:图4-3数码管的外观引脚结构 LED数码显示器的内部结构有两种不同的形式:一种是8个发光二极管的阳极全部连接在一起组成公共端,8个发光二极管的阴极则单独引出,称为共阳极显示器,如图4-4。另一种是8个发光二极管的阴极全部连接在一起组成公共端,8个发光二极管的阳极则单独引出,称为共阴极

11、显示器,如图4-5所示: 图4-4 共阳极显示器 图4-5 共阴极显示器 LED显示器字形码表,如表4-1所示: 表4-1 LED显示器字形码表 本设计中主要用数码管显示当前时间和显示设置后的时间,数码管显示模块流程图,如图4-6所示:图4-6 数码管显示模块流程图4.2.3 按键模块 本设计采用按键控制时间的设置,通过按键的控制使时钟的分自增、自减从而实现时间的设置。独立按键电路图,如图4-7所示:图4-7 独立按键电路图按键模块流程图,如图4-8所示: 图 4-8 按键模块流程图 4.2.4计时模块 计数器:是单片机应用中的重要部件,工作方式灵活,可以对外部事件计数和检测等;实现计数功能。

12、其核心是特殊功能寄存器中能进行加1计数的寄存器。 实现原理:对T0或T1引脚输入的外部脉冲计数,如下图4-9所示:图4-9 计数器原理图计时模块流程图,如图4-10所示:图4-10 计时模块流程图5功能实现程序运行后从当前时间开始计时。前一段前时间如图5-1所示: 图5-1 一段时间前 一段时间后时间如图5-2所示:图5-2一段时间后以图5-2为当前初始时间,连续按4下键1,时钟分自增4次,如图5-3所示: 图5-3 自增后时间 以图5-3为当前初始时间,连续按13下键2,时钟分自减13,如图5-4所示: 图5-4 自减后时间6心得体会 通过此次实验,我完成了通过按键设置时钟时间,并用数码管进

13、行显示,实现了时钟的计时功能。本实验加深了我对单片机应用的了解。实验过程中遇到了许多以前没有遇到的问题,这在某种程度上让我知道哪些知识是我还要加强的,哪些知识是我还欠缺的;同时也感谢老师耐心的指导。总而言之,通过本实验的编译让我受益匪浅。7源程序#include#include#define uchar unsigned char#define uint unsigned intuchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;uchar code w

14、8=0,1,2,3,4,5,6,7;sbit key1=P32;sbit key2=P33;sbit key3=P34;uchar sec=56;uchar min=34;uchar hour=12;uint count;void Delay(uint xms);void second();void minute();void hours(); void other();void ftime();void Outside_Init(void);void timer1_int(void);void charge();void timeon();void Outside_Init1(void);void Outside_Init0(void);void Delay(uint xms) uint i,j; for(i=0;ixms;i+) for(j=0;j148;j+) ;void second() uchar i,j; i=sec/10; j=sec%10; P2=0x7; P0=tablej; Delay(1); P2=0x6; P0=tablei; Delay(1); void minute() uchar i,j; i=min/10; j=min%10; P2=0x4; P0=tablej; Delay(

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1