资料清单:C程序+仿真+设计报告+使用说明+元件清单+操作视频
仿真版本:Proteus8.6及以上版本
程序编译:Keil5 C51
编程语言:C语言
设计编号:【J06】
1. 简介
本文提出了一种基于51单片机的LCD12864电子万年历。此万年历在硬件方面主要采用AT89C51单片机作为主控核心,由DS1302时钟芯片提供时钟,DS18B20芯片显示温度、LCD12864液晶显示屏显示,同时电子万年历还具有时间校准、闹钟提醒、整点报时等功能。
2. 主要功能
a.通过LCD12864显示年月日、时分秒、温度、星期、闹钟等信息。
b.通过独立按键设置年月日、时分秒、闹钟。
c.通过DS1302时钟芯片提供系统时钟。
d.通过DS18B20芯片提供实时温度。
e.通过蜂鸣器提示闹钟状态。
3. 源程序(Keil5)
本设计采用keil5 C51软件(内附安装包)实现程序设计。如需用keil4打开程序,可自行通过.c和.h文件新建工程即可。
/****************************文件包含*************************************/
#include < reg52.h >
#include < character.h >
#include < lcd.h >
#include < clock.h >
#include < sensor.h>
#include < calendar.h >
#include < key.h >
/*****************************预定义**************************************/
#define uchar unsigned char
#define uint unsigned int
/****************************************************************************/
sbit bell = P2 ^ 0; //定义蜂鸣器端口
/*****************************************************************************
* 名称: Timer0_Service() inturrupt 1
* 功能: 中断服务程序 整点报时 3声嘟嘟的声音
* 入口参数:
* 出口参数:
*****************************************************************************/
void Timer0_Service() interrupt 1
{
static uchar count = 0;
static uchar flag = 0; //记录鸣叫的次数
count = 0;
TR0 = 0; //关闭Timer0
TH0 = 0x3c;
TL0 = 0XB0; //延时 50 ms
TR0 = 1 ; //启动Timer0
count ++;
if( count == 20 ) //鸣叫 1 秒
{
bell = ~ bell;
count = 0;
flag ++;
}
if( flag == 6 )
{
flag = 0;
TR0 = 0; //关闭Timer0
}
}
/*****************************************************************************
* 名称: Timer2_Servie() interrupt 5
* 功能: 中断服务程序 整点报时 一分钟
* 入口参数:
* 出口参数:
*****************************************************************************/
uchar HexNum_Convert(uchar HexNum)/*时间存储个位和十位的方式与我们用的十进制不一样,你懂的,呵呵--BB车*/
{
uchar Numtemp;
Numtemp=(HexNum>>4)*10+(HexNum&0X0F);
return Numtemp;
}
4. 仿真proteus8.6
本设计采用proteus8.6软件(内附安装包)实现仿真设计,如下图所示。proteus软件一般存在高低版本兼容问题,该仿真是通过proteus8.6导出的,所以请尽量使用proteus8.6打开文件,低于proteus8.6的版本不能够正常使用,高于proteus8.6的版本除了proteus8.8/8.9理论上可以正常使用。
时钟界面:
5. 设计报告
设计报告主要包括硬件电路、软件设计、仿真调试等等,仅供参考。
6. 资料清单
设计资料主要包括C程序+仿真+设计报告+使用说明+元件清单+操作视频等。
7. 资料获取链接
百度网盘下载链接:【J06】百度网盘下载链接
更多单片机仿真设计合集:单片机仿真设计合集