1.基于51系列的单片机和DS1302时钟芯片的电子万年历毕业设计,万分
1、基于单片机的多功能万年历,采用LCM1602液晶显示,显示项目有:年月日、星期、时分秒,带用闹钟功能。
2、采用时钟芯片DS1302,走时非常精确。板载3V纽扣电池,断电重新上电无需重新设置时间,由3V提供时钟芯片继续计时。同时自动随时期变更星期。
3、带闹钟功能,且闹钟时间可调,上电默认为:11:00:00,具有掉电闹钟时间保存功能,并可设置闹钟开关等功能。
4、四个按键操作:设置时间、加、减、闹钟切换等。蜂鸣器按键提示音功能。功能强大,可以按您各种要求更
2.单片机的电子万年历设计论文
基于单片机的多功能数字万年历
摘 要
随着电子技术的迅速发展,特别是随大规模集成电路出现,给人类生活带来了根本性的改变。由其是单片机技术的应用产品已经走进了千家万户。电子万年历的出现给人们的生活带来的诸多方便。
本文首先描述系统硬件工作原理,并附以系统结构框图加以说明,着重介绍了本系统所应用的各硬件接口技术和各个接口模块的功能及工作过程,其次,详细阐述了程序的各个模块和实现过程。本设计以数字集成电路技术为基础,单片机技术为核心。本文编写的主导思想是软硬件相结合,以硬件为基础,来进行各功能模块的编写。
本系统以单片机的C语言进行软件设计,增加了程序的可读性和可移植性,为了便于扩展和更改,软件的设计采用模块化结构,使程序设计的逻辑关系更加简洁明了。系统通过点阵式液晶为载体显示数据,所以具有人性化的操作和美观的页面效果。可以显示时间、公农历日期、星期、温度、节气,天干地支和当天日出日落时间,并有闹铃和智能控制家用电器功能。
关键词 单片机;万年历; 液晶技术 ; 农历查询
目 录
摘 要 I
Abstract II
第一章 绪 论 1
1.1 课题开发背景 1
1.2 设计意义 1
1.3 设计目标 2
1.4 论文结构 2
第二章 硬件设计 3
2.1 硬件设计框图 3
2.2 系统硬件详细设计图 4
2.3 各芯片介绍 4
2.3.1 SM89516单片机应用设计 4
2.2.2 点阵液晶控制器T6963C 5
2.2.3 SD2000A时钟芯片 9
2.2.4 AT24C16可读写存储器 14
2.2.5 DS18B20单总线数字温度计 15
第三章 系统软件设计 18
3.1系统功能模块图及各功能介绍 18
3.2 主程序流程图 19
3.3 程序算法设计 23
第四章 调 试 41
4.1 硬件调试 42
4.2 软件调试 42
4.3 综合调试 44
结 论 45
致 谢 46
参考文献 47
附录1 48
附录2 外文文献 49
附录3 (系统使用说明书) 55
3.基于单片机系统的电子钟设计与仿真 毕业论文
摘 要 近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格便宜,工作可靠,使用方便等特点,因此越来越广泛地应用各个领域. 本文的电子钟系统是以单片机(AT89C51)为核心,时钟芯片DS1302、数码管显示驱动芯片MAX7219等元器件组成。
具体介绍应用Proteus的ISIS软件进行单片机系统的电子钟设计与仿真的实现方法。该方法既能准确验证所设计的系统是否满足技术要求,又能提高系统设计的效率和质量,降低开发成本,具有推广价值。
关键词:单片机; 时钟芯片 ;数码管显示驱动芯片 ;Proteus;电子钟 Design and Simulation Of electronic clock Based on Single-chip System Qiu Songtang Abstract In recent years, with computers in the infiltration and the development of large-scale integrated circuits. SCM application is steadily deepening, as it has strong function, small size, low power dissipation, low prices, reliable, easy to use features, it is particularly suited to and control of the system, increasingly widely used in various fields. This article describes an electronic bell system is single-chip microcomputer (AT89C51) as the core, the clock chip DS1302, LED display driver chip components, such as MAX7219 component.Describes the application of Proteus's ISIS software of the electronic single-chip system clock to achieve the design and simulation methods in details.The method can not only test the property of the system precisely,but also improve development efficiency and reduce development cost,which values in popularity. Key words: AT89C51; DS1302; MAX7219; Proteus; electronics clock 目 录 第一章 绪论 ……………………………………………………………… 2 1.1 引言 …………………………………………………………………… 2 1.2 Proteus软件简介 …………………………………………………… 2 第二章 系统设计 …………………………………………………………. 3 2.1 电子钟系统器件选择 ………………………………………………………… 3 2.1.1 AT89C51单片机简介 …………………………………………… 3 2.1.2 实时时钟电路DS1302工作原理 ……………………………………6 2.1.3 MAX7219工作原理 ……………………………………………….8 2.2 电子钟系统设计流程 ……………………………………………… 11 第三章 硬件电路设计 …………………………………………………… 12 3.1 Protel DXP电路图设计 …………………………………………………12 3.2 Proteus 电路图设计 ………………………………………………… 13 第四章 软件设计 ……………………………………………………………14 4.1 程序流程图设计 ………………………………………………………………14 4.2源程序设计 …………………………………………………………………… 14 4.3 KeilC51进行程序调试 ……………………………………………………… 18 第五章 系统调试与仿真 ……………………………………………………19 5.1 Proteus中Hex文件选择 …………………………………………………… 19 5.2 Proteus 进行电子钟系统仿真 …………………………………… 20 结束语 ………………………………………………………………………… 22 参考文献 ………………………………………………………………………23。
4.基于单片机的电子万年历设计有人能帮忙提供下电路图及程序
如果是要用PROTEUS仿真的话就可以用89C52,要是硬件的话不能直接在线编程(AT89S51可以),那样的话需要专用的编程器,下面我用PROTEUS画好了电路图 下面是我写的程序:希望对你有帮助 #include result=1,忙碌;result=0,不忙***************************************************/bit BusyTest(void) { bit result; RS=0; //根据规定,RS为低电平,RW为高电平时,可以读状态 RW=1; E=1; //E=1,才允许读写 _nop_(); //空操作 _nop_(); _nop_(); _nop_(); //空操作四个机器周期,给硬件反应时间 result=BF; //将忙碌标志电平赋给result E=0; //将E恢复低电平 return result; }/*****************************************************函数功能:将模式设置指令或显示地址写入液晶模块入口参数:dictate***************************************************/void WriteInstruction (unsigned char dictate){ while(BusyTest()==1); //如果忙就等待 RS=0; //根据规定,RS和R/W同时为低电平时,可以写入指令 RW=0; E=0; //E置低电平(根据表8-6,写指令时,E为高脉冲, // 就是让E从0到1发生正跳变,所以应先置"0" _nop_(); _nop_(); //空操作两个机器周期,给硬件反应时间 P0=dictate; //将数据送入P0口,即写入指令或地址 _nop_(); _nop_(); _nop_(); _nop_(); //空操作四个机器周期,给硬件反应时间 E=1; //E置高电平 _nop_(); _nop_(); _nop_(); _nop_(); //空操作四个机器周期,给硬件反应时间 E=0; //当E由高电平跳变成低电平时,液晶模块开始执行命令 }/*****************************************************函数功能:指定字符显示的实际地址入口参数:x***************************************************/ void WriteAddress(unsigned char x) { WriteInstruction(x|0x80); //显示位置的确定方法规定为"80H+地址码x" }/*****************************************************函数功能:将数据(字符的标准ASCII码)写入液晶模块入口参数:y(为字符常量)***************************************************/ void WriteData(unsigned char y) { while(BusyTest()==1); RS=1; //RS为高电平,RW为低电平时,可以写入数据 。 这有一篇,给你参考: ?1308581933 万年历程序 * ;***************************** ;67H(高两位年)66H(低两位年)65H(月)64H(星期) ;63H(日)62H(小时)61H(分)60H(秒)57H(农历月)56H(农历日) ;显示缓冲单元7CH~7BH(4CH~4BH)年低位,7AH~79H(4AH~49H)月, ;78H(48H)星期,77H~76H(47H~46H)日,75H~74H(45H~44H)时, ;73H72H(43H~42H)分,71H~70H(41H~40H)秒,5EH~5DH(55H~54H)农历年 ;5CH~5BH(53H~52H)农历月,5AH~59H(51H~50H)农历日 ;闰年标志为F0,定时器T1为调整时候闪烁用;************************************ 主程序 * ;************************************ START: SETB EA MOV SCON,#00H ;串行输出,方式0 MOV TMOD,#10H ;计数器1,方式1 MOV TL1,#00H MOV TH1,#00H MOV DS1302_ADDR,#8EH MOV DS1302_DATA,#00H ;允许写1302 LCALL WRITE MOV DS1302_ADDR,#90H MOV DS1302_DATA,#0A6H ;1302充电,充电电流1.1mA 你描述的不对 有些地方不很完善 什么叫万年历语言,或许你想表达,编写单片机的语言,一般用c语言啊 8个数码管 你要显示“年月日时分秒”,这样是显示不够的,比如年月日如:“13-06-21”,时分秒如:“11-28-05”,是这样吗 一般显示用lcd1602的比较多 为什么你要用8个按键呢,是调整日期吗?其实三个就够了啊,一个选择要调整的对象,一个增加,一个减少 你说全部与p30连接,是什么与他连接呢 可以交流 myID 转载请注明出处众文网 » 51单片机液晶万历毕业论文(基于51系列的单片机和DS1302时钟芯片的电子万年历毕业设计,万分)5.单片机课程设计
6.52单片机的万年历语言,八位LED共阴数码管动态显示年月日 时分秒