您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 单片机课程设计之多功能电子万年历的设计
单片机应用系统设计课题:多功能电子万年历的设计姓名:班级:学号:指导老师:日期:一、绪论随着科技的快速发展,时间的流逝,至从观太阳、摆钟到现在电子钟,人类不断研究,不断创新纪录。美国DALLAS公司推出的具有涓细电流充电能的低功耗实时时钟电路DS1302。它可以对年、月、日、周日、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、周日、时、分、秒和温度等信息,还具有时间校准等功能。该电路采用AT89S51单片机作为核心,功耗小,能在3V的低压工作,电压可选用3~5V电压供电。综上所述此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。二、系统总体方案我选用的是单片机(8051)来实现电子万年历的功能。共具备两个功能:(1)显示年月日及分秒信息(2)具有可调整日期和时间功能。该电子万年历能够成功实现时钟运行,调整功能,且精确度经调试一天的误差在2S内。1微处理器本系统采用的就是51系列的AT89C51单片机进行的万年历设计。由于51系列的上下兼容性,51核的内部功能大体一致。下图为51系列单片机的管脚图。XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C51AT89C51管脚图VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。P3口可以为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:地址锁存允许/编程脉冲输入端。PSEN:外部程序存储器的选通信号。EA/VPP:寻址外部ROM控制端/编程电源输入端。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。2输出LED显示功能简介在单片机应用系统中常用的显示器有发光二极管数码显示器LED和液晶显示器LCD。LED显示器具有耗电少、成本低廉、配置简单灵活,抗干扰性强等优点,但显示内容有限,且不能显示图形,因而其灵活性受到限制;LCD显示了具有LED特点外还能显示图形,但其驱动比较复杂。本设计的万年历输出部分采用LED3按键电路由于我设计的是电子万年历,在设计过程中我一共采用了4个按键,尽量在小的空间里实现最多的功能。其中MODE键是年月日与时间显示切换键,按下一次就能够更换一次显示位。在调整显示环境下UP和DONW键是显示调整位的的加1减1键,FUNCTION键实现清零,并提高万年历显示的精确性。按键电路如图所示4时钟芯片DS1302的工作原理:DS1302在每次进行读、写程序前都必须初始化,先把SCLK端置“0”,接着把RST端置“1”,最后才给予SCLK脉冲;读/写时序如下图4所示。图5为DS1302的控制字,此控制字的位7必须置1,若为0则不能把对DS1302进行读写数据。对于位6,若对程序进行读/写时RAM=1,对时间进行读/写时,CK=0。位1至位5指操作单元的地址。位0是读/写操作位,进行读操作时,该位为1;该位为0则表示进行的是写操作。控制字节总是从最低位开始输入/输出的。表6为DS1302的日历、时间寄存器内容:“CH”是时钟暂停标志位,当该位为1时,时钟振荡器停止,DS1302处于低功耗状态;当该位为0时,时钟开始运行。“WP”是写保护位,在任何的对时钟和RAM的写操作之前,WP必须为0。当“WP”为1时,写保护位防止对任一寄存器的写操作。(2)DS1302的控制字节DS1302的控制字如表-1所示。控制字节的高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出RAMRD1A4A3A2A1A0/CK/WR表-1DS1302的控制字格式(3)数据输入输出(I/O)在控制指令字输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7。如下图-4所示图-4DS1302读/写时序(4)DS1302的寄存器DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式,其日历、时间寄存器及其控制字见表-2。表-2DS1302的日历、时间寄存器此外,DS1302还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。DS1302与RAM相关的寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0H~FDH,其中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)三、硬件电路的总体框图设计该设计的硬件电路的总体框图下图所示四、系统软件设计主程序流程图按键与按钮电路液晶显示电路总体开关复位等辅助电路电源系统CPUAT89C51ProteusISIS简介Labcenter公司开发的电路分析与实物仿真软件。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路。该软件的特点是:(1)全部满足我们提出的单片机软件仿真系统的标准,并在同类产品中具有明显的优势。(2)具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统CPU系统初始化定时器初始化串口初始化读写日期、时间信息分离日期时间信息显示子程序显示出的时间时间是否正确?日期、时间修改子程序返回的仿真、RS-232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。(3)目前支持的单片机类型有:ARM7系列、68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。(4)支持大量的存储器和外围芯片。总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大,可仿真ARM、51、AVR、PIC。Proteus启动画面:图9界面仿真结果通过在KEIL下对源程序的编译,改正了其中的很多错误,运行之后生成HEX文件。然后按原理图选择正确合理的电气元件,画出正确而且美观的电路图,加载源程序运行,顺利实现了电子万年历年月日时分秒以及星期和阴历日期的输出。下图为电子万年历的显示效果:按下调时键后(第一个键)表示小时的数字开始闪动按下调日期键后(第三个键)年代键开始闪动第2个键为调整显示数字按键,实行加一仿真结果通过在WAVE6000下对源程序的编译,改正了其中的很多错误,然后运行,保证源程序的正确性。然后按原理图选择正确合理的电器元件,画出正确的电路图,加载源程序运行,顺利实现了单片机数字电子钟的“小时”、“分钟”、“秒”的显示。该电子万年历的显示效果如图XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C51RST5SCLK7I/O6X12X23VCC18VCC21U2DS130223451U3:A4002A7QA13B1QB12C2QC11D6QD10BI/RBO4QE9RBI5QF15LT3QG14U474LS47A7QA13B1QB12C2QC11D6QD10BI/RBO4QE9RBI5QF15LT3QG14U574LS47R410kR510kR610kR710kR810kR910kC510uFR1010k五、总结课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在。因此作为二十一世纪的大学生,掌握单片机的开发技术是十分重要的。此次设计立足于电子技术的实际运用,不断实践,开拓了思维,设计以考查、调研、搜集资料、拟订方案、进行系统规划、编程、仿真、调试的流程,使我深刻的体会到了在学习我们专业的过程中理论与实践相结合的重要性,同时也解决了以前学习比较模糊的专业知识点,使自己掌握的专业知识更加结构化、系统化。参考文献[1]AT89C51,,广州周立功单片机发展有限公司[2]DS1302TrickleChargeTimekeepingChip,[3]刘嘉新李明于明淳DS18B20在林学气象测量中的应用,2002年7月第30卷第4期[4]蒋敏,单片微机万年历设计,职大学报2002年第2期[5]邸春芳,电脑实时时钟的设计,(西南石油学院电子信息工程学院)[6]维普资讯[7]王越明,电子万年历的设计,黑龙江煤矿机电设备厂,维普资讯[8]适用于51系列单片机的一种万年历优化算法,维普资讯[9]吴有富,推导万年星期历的turoc-c程序,贵州民族学院[10]刘峰周炳峻李晓静,遥控电脑万年历的改造,河北,应用与改造[11]藤迪安,最新万年历,《黑龙江珠算》1996年第5期[12]韩志军刘新民,数字温度传感器DS18B20及其应用,2003年3月第1卷第1期附源程序代码:SCLKEQUP3.2IOEQUP3.3RSTEQUP3.4TRLEQUP3.5JIA1EQUP3.6TSHEQUP3.7YEARDATA66HMONTHDATA65HWEEKDATA64HDAYDATA63HHOURDATA62HMINUTEDATA61HSECONDDATA60HDS_ADDRDATA32HDS_DATADATA31HORG00HAJMPSTARTMAIN2F:LJMPMAIN2START:MOVSP,#70HLCALLDELAY1MOVDS_ADDR,#8EHMOVDS_DATA,#00
本文标题:单片机课程设计之多功能电子万年历的设计
链接地址:https://www.777doc.com/doc-2606744 .html