基于单片机c51的简单万年历设计_毕业设计

上传人:aa****6 文档编号:38188090 上传时间:2018-04-28 格式:DOC 页数:27 大小:477KB
返回 下载 相关 举报
基于单片机c51的简单万年历设计_毕业设计_第1页
第1页 / 共27页
基于单片机c51的简单万年历设计_毕业设计_第2页
第2页 / 共27页
基于单片机c51的简单万年历设计_毕业设计_第3页
第3页 / 共27页
基于单片机c51的简单万年历设计_毕业设计_第4页
第4页 / 共27页
基于单片机c51的简单万年历设计_毕业设计_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《基于单片机c51的简单万年历设计_毕业设计》由会员分享,可在线阅读,更多相关《基于单片机c51的简单万年历设计_毕业设计(27页珍藏版)》请在金锄头文库上搜索。

1、福建工程学院软件学院 软件工程物联网工程第十届学生科技节第十届学生科技节-单片机设计大赛单片机设计大赛作品名称: 万年历 专 业: 物联网 班 级: 1 指导老师: 郑旭丹 组长: 邓清兰 学号: 组员: 黄孟秋 学号: 福建工程学院软件学院 软件工程物联网工程目目 录录一、 绪论.1二、 系统功能.1三、 硬件电路.13.1. 电路设计框图.13.2. 系统硬件概述.2四、 各模块功能及工作原理.24.1. 单片机主控制模块的设计.24.2. LCD1602 显示模块 .34.3. 键盘模块.6五、 实现结果.9六、 系统的实用性及创新性.9七、 调节中遇到的问题及心得体会.10八、 程序设

2、计.118.1. 流程图.118.2. 源代码.12九、 总结及感谢.24福建工程学院软件学院 软件工程物联网工程第 1 页 共 27 页1、绪论绪论众所周知单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU 随机存储器 RAM、只读存储器ROM、多种 I/O 口和中断系统、定时器 /计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、 A/D 转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。本设计要制作的就是单片机于生活中最为常见的几种应用 万年历。本设计以 AT89S52 单片机作为核心,可以显示当前的日历和时间,时间也

3、可以人为设定,显示格式为年(四位),月(两位),日(两位),时(两位),分(两位),秒(两位)。设置时间的位切换、设定数值、启动定时器、切换日历通过外部中断来实现。万年历显示电路由 LCD1602 组成, 制作该装置的材料需要有软硬件的支持,硬件方面 AT89C51 单片机,晶振,电源,液晶屏 LCD1602。2、系统功能系统功能本次设计的是万年历,采用 LCD1602 显示,实现的功能如下: 1.显示当前时间,显示格式为年(四位),月(两位) ,日(两位) ,时 (两位) ,分(两位) ,秒(两位) ; 2.时钟计时,自动进行时间的位切换; 3.键盘设置,能通过键盘设定当前时间和计时,并通过

4、键盘人为设定时间。3、硬件电路硬件电路电路设计框图AT89S52 主控制模块LCD1602 显示模块计时模块键盘输入 模块福建工程学院软件学院 软件工程物联网工程第 2 页 共 27 页3.2. 系统硬件概述本电路是由 AT89S52单片机为控制核心,具有在线编程功能,低功耗,能在3V 超低压工作,本系统选用12MHZ 的晶振,使得单片机有合理的运行速度;利用液晶屏 LCD1602显示时间信息,通过对 AT89S52单片机的编程控制液晶屏LCD1602的显示。显示时间在 LCD1602,通过按键切换选择。外部按键可及时设定或调整时间信息。4、各模块功能及工作原理各模块功能及工作原理单片机主控制

5、模块的设计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 引脚为 复位输入端,接上电容,电阻及开关后够上电复位电路,

6、20 引脚为接地端,40 引脚 为电源端。引脚图如图图 4.1:图 4.1 AT89S52 引脚结构 图 4.2.1 LCD1602 引脚结构福建工程学院软件学院 软件工程物联网工程第 3 页 共 27 页4.2. LCD1602 显示模块4.2.1LCD1602 引脚介绍引脚介绍LCD1602 采用标准的 14 脚(无背光)或 16 脚(带背光)接口,引脚图 如图图 4.2.1:各引脚接口说明如表 4.2.2所示:编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E

7、使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极表 4.2.2 LCD1602 引脚说明第1脚:VSS 为地电源。第2脚:VDD 接5V 正电源。第3脚:VL 为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影” ,使用时可以通过一个10K 的电位器调整对比度。第4脚:RS 为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:R/W 为读写信号线,高电平时进行读操作,低电平时进行写操作。当 RS 和 R/W 共同为低电平时可以写入指令或者显示地址,当 RS 为低电平R/W 为高电平时可以读忙信号,当 RS

8、 为高电平 R/W 为低电平时可以写入数据。福建工程学院软件学院 软件工程物联网工程第 4 页 共 27 页第6脚:E 端为使能端,当 E 端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。4.2.2LCD1602 指令指令1602 液晶模块内部的控制器共有 11 条控制指令,如表 4.2.3表 4.2.3 LCD1602 的指令说明1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平)指令1:清显示,指令码01H,光标复位到地址00H 位置。指令2:光标复位,光标返回到

9、地址00H。编号指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回000000001*3置输入模式00000001I/DS4显示开/关控制0000001DCB5光标或字符移位000001S/CR/L*6置功能00001DLNF*7置字符发生存贮器地址0001字符发生存贮器地址8置数据存贮器地址001显示数据存贮器地址9读忙标志或地址01BF计数器地址10写数到 CGRAM 或 DDRAM)10要写的数据内容11从 CGRAM 或 DDRAM 读数11读出的数据内容福建工程学院软件学院 软件工程物联网工程第 5 页 共 27 页指令3:光标和显示模式设置 I/D

10、:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。指令4:显示开关控制。D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标。指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。指令7:字符发生器 RAM 地址设置。指令8:DDR

11、AM 地址设置。指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。指令10:写数据。指令11:读数据。4.2.3 LCD1602 读读/写操作写操作LCD1602 基本操作时序说明,如表 4.2.4读状态输入RS=L,R/W=H,E=H输出D0D7=状态字写指令输入RS=L,R/W=L,D0D7=指令码,E=高脉冲输出无读数据输入RS=H,R/W=H,E=H输出D0D7=数据写数据输入RS=H,R/W=L,D0D7=数据,E=高脉冲输出无表 4.2.4 LCD1602 基本操作时序说明福建工程学院软件学院 软件工程物联网工程第 6

12、页 共 27 页4.2.4 LCD1602 显示模块流程图显示模块流程图4.3. 键盘模块本设计采用 4 乘 4 键盘的反转法控制万年历的计时和时间设定,4 乘 4 键盘 电路图如图图 4.3.1按下按键?开始LCD 1602 初始界面显示欢迎界面显示初始时间结束NY福建工程学院软件学院 软件工程物联网工程第 7 页 共 27 页图 4.3.24.3.1 键盘功能图键盘功能图4.3.2 流程图流程图YN开始对键盘进行扫描,返回键值键值为+或- ?键值为?键值为?键值为 09?键值为福建工程学院软件学院 软件工程物联网工程第 8 页 共 27 页YYN YN Y NY N N Y N N Y4.

13、4 计时模块计时模块4.4.1 计数器工作原理计数器工作原理计数器:是单片机应用中的重要部件,工作方式灵活,可以对外部事件计 数和检测等;实现计数功能。其核心是特殊功能寄存器中能进行加 1 计数的寄 存器。 实现原理:对 T0 或 T1 引脚输入的外部脉冲计数,如下图:4.4.2 流程图流程图N YYNN YY N开始初始时间sec=60?开始计时,sec+min+,sec=0yearh=0yearh+,yearl=0yearl+,mon=1mon+,day=1hour+,min=0day+,hour=0按下按键?hour=24?min=60?yearh=99??yarl=99??Day=31?mon13?+1 计数 器溢 出中 断脉冲控制 开关福建工程学院软件学院 软件工程物联网工程第 9 页 共 27

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 毕业论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号