1 / 23
文档名称:

单片机万年历课程设计报告.doc

格式:doc   页数:23
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

单片机万年历课程设计报告.doc

上传人:3346389411 2012/9/30 文件大小:0 KB

下载得到文件列表

单片机万年历课程设计报告.doc

文档介绍

文档介绍:单片机万年历设计报告
班级:xxx
姓名:xxx
学号:xxx
指导老师:xxx
时间:xxx
摘要:本文介绍了单片机的一些比较基础的,比较常用的一些资源的应用,同时也对单片机所涉及的一些简单硬件有一定的介绍,基于单片机的原理设计电路,在了解硬件的基础上完成程序设计,使自己掌握对一个系统的初步规划和设计,提高自己分析问题的能力。
一、设计内容及要求
利用AT89C51单片机芯片实现电子钟系统设计,其硬件原理框图如图1所示,其中显示采用液晶LCD1602,温度测量采用DS18B20。
闹铃电路
AT89C51
按键控制
液晶显示器
硬件原理框图
各部分功能实现:
单片机发送的信号通过程序控制最终在液晶显示器上显示出来。
单片机通过输出各种电脉冲信号来驱动控制各部分正常工作。
为使时钟走时与标准时间一致,校时电路是必不可少的,按键用来校正液晶显示器上显示的时间。
单片机通过控制闹铃电路来完成准点报时的功能。
系统的主要工作和流程
    此电子钟系统的设计,为实现其多方面的功能,需要收集芯片元件的资料和芯片的数据手册,理解芯片的工作原理,时钟芯片,温度芯片, LCD1602芯片的显示原理。设计中最为关键的是对整个系统设计原理的理解。
    系统的主要工作是进行整个电子钟系统的程序设计,主要是对时间算法,LCD显示设计,温度读取的程序设计。由于电子万年设计的功能较多,所编写的代码量较大,编程中更是用到了大量的算法,所以此次的软件设计使用C语言编程而没有使用汇编语言。软件的设计主要将程序分为主程序和各个子程序模块。
系统工作的流程为:在完成了程序的设计调试之后,便可将编译生产的文件下载到AT89C51单片机芯片运行,再不断进行调试改进。
二、系统工作原理
设计的电路主要由主控模块、液晶显示模块、温度模块、按键模块和闹钟模块共5个模块组成。
本设计采用语言程序设计,使单片机控制液晶显示器时、分、秒,当秒计数计满60时就向分进位,分计数器计满60后向时计数器进位,小时计数器按“23翻0
”规律计数。时、分、秒的计数结果经过数据处理可直接送显示器显示。当计时发生误差的时候可以用校时电路进行校正。设计采用的是时、分、秒显示,单片机对数据进行处理同时在液晶显示器上显示。
主控模块:本系统主控模块采用的单片机AT89C51,外接12MHz晶振。AT89C51具有40个引脚,128×8位内部RAM ,32可编程I/O线,两个16位定时器/计数器,5个中断源。可编程串行通道,低功耗的闲置和掉电模式, 片内振荡器和时钟电路也是其主要特性。
液晶显示模块:LCD1602采用标准的16脚接口,其中:
第1脚:GND为地电源
 第2脚:VCC接5V正电源 
第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度
 第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
 第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RSRW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可读忙信号,当RS为高电平RW为低电平时可以写入数据.
第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
 第7~14脚:DB0~DB7为8位双向数据线。
 第15~16脚:空脚。
温度模块:DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。其引脚功能描述见表1。
表1 DS18B20详细引脚功能描述
序号
名称
引脚功能描述
1
GND
地信号
2
DQ
数据输入/输出引脚。开漏单总线接口引脚。当被用着在寄生电源下,也可以向器件提供电源。
3
VDD
可选择的VDD引脚。当工作于寄生电源时,此引脚必须接地。
闹钟模块:闹铃模块为单片机开发箱的蜂鸣器,当闹钟时间到后,蜂鸣器发声,直到过了闹钟时间后停止。
按键模块:本设计总共用了5个独立按键,其中一个是设置键,两个是调整项增加、减少的键,一个是闹钟设置键,一个是显示模式设置键。
三、系统的软件设计
软件的总体设计
系统是由AT89C51单片机控制,系统分为主函数部分和各模块子函数部分2个部分。系统主函数部分主要是调用各个模块的子函数。本系统的时间是通过软件进行设置,使用定时器使电子钟运行,并将值送入主控芯片,通过液晶显示器LCD1602来显示,时间、日期的修改通过按键来控制的。所以要对定