欢迎来到天天文库
浏览记录
ID:20366233
大小:117.50 KB
页数:17页
时间:2018-10-09
《电子钟 (串口)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、课程设计报告设计课题:电子钟(串口)专业班学生姓名:指导教师:设计时间:电子钟(二)一、课程设计目的:通过对设计电子钟的设计了解89C51,PCF8563及液晶显示的工作原理与编程方法.二、课程设计要求:通过单片机控制应用时钟芯片8563和串口液晶,实现电子钟。要求显示年、月、日、时、分、秒。三、系统分析与设计:1:系统总体设计本实验中的器件:PCB开发板一块;89C51模块;PCF8563时钟芯片一片;串口液晶一个;MAX232芯片一片;该电子钟分为数据产生,数据传输和数据显示三个部分.其中数据产生的是PCF8563模块,数据传输的是89C52和74HC573模块。数据显示
2、的是在串口液晶上。89C51模块:实验中利用89C52模块的P3.4及P3.5引脚向PCF8563的6脚和5脚即SCL和SDA传输数据,来对PCF8563进行初始化,在利用采来的数据将数据地址锁存在74HC573内并在串口液晶上显示。PCF8563模块:该模块是时钟芯片,是低功耗的CMOS时钟芯片,其所有的地址和数据都是通过I2C总线接口串行传递的。每次读写数据后,内嵌的地址寄存器会自动产生增量。本实验就是利用该芯片传来的数据进行显示。串口液晶LCD:该液晶有两行地址,将要显示的数据分别放在这两行中进行显示。2:系统详细设计系统总体框架:系统的总体电路图如图1所示:图1系统电
3、路图图274HC573与单片机连接图图3GAL16V8与单片机连接图图4单片机与外接器件连接图3:系统流程图:开始8563初始化,LCD初始化向8563写入初始化值读回数据并锁存将数据送入串口液晶显示时间4:原程序清单#include#include#include#defineucharunsignedchar#defineuintunsignedint#defineulongunsignedlong#include#definePCF8563_W0xa2#definePCF8563_R0x
4、a3#defineWRADDR0x00#defineRDADDR0x02#define_Nop()_nop_();/*********************************/#definePCF8563_CONTROL_STATE00x00//控制状态寄存器1#definePCF8563_CONTROL_STATE10x01//控制状态寄存器2#definePCF8563_CLKOUT0x0d//CLKOUT频率寄存器#definePCF8563_TIMER_CONTROL0x0e//定时器控制寄存器#definePCF8563_TIMER_DATA0x0f//定时
5、器倒计数数值寄存器#definePCF8563_MINUTE0x02//秒#definePCF8563_SECOND0x03//分#definePCF8563_HOUR0x04//时#definePCF8563_DATE0x05//日#definePCF8563_WEEK0x06//星期#definePCF8563_MONTH0x07//月/世纪#definePCF8563_YEAR0x08//年#definePCF8563_MINUTE_ALARM0x09//分钟报警#definePCF8563_SECOND_ALARM0x0a//小时报警#definePCF8563_YE
6、AR_ALARM0x0b//日报警#definePCF8563_WEEK_ALARM0x0c//星期报警ucharb[16];/***************************************/ucharcodeCS1[2]={0x00,0x28};ucharcodeCS2[2]={0x12,0x02};ucharcodeCLKOUT[4]={0x80,0x81,0x82,0x83};/*************************************/sbitSDA=P3^5;sbitSCL=P3^4;/************************
7、*****/sbitbflag=ACC^7;ucharFUNC(uchara,ucharb);//右循环n,m位/************************************/bitack;//起动IICvoidStart_I2c(){SDA=1;/*发送起始条件的数据信号*/_Nop();SCL=1;_Nop();/*起始条件建立时间大于4.7us,延时*/_Nop();_Nop();_Nop();_Nop();SDA=0;/*发送起始信号*/_Nop();/*起始条件锁定时间大于4μs*
此文档下载收益归作者所有