基于单片机的电子时钟和显示屏的设计-学位论文.doc
《基于单片机的电子时钟和显示屏的设计-学位论文.doc》由会员分享,可在线阅读,更多相关《基于单片机的电子时钟和显示屏的设计-学位论文.doc(38页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、目录1 方案设计1.1单片机电子时钟的背景11.2电子时钟的意义11.3 电子时钟的工作原理及其具体实现11.4 设计任务22 电路方案设计32.1 模块一电路图32.2 模块二电路图32.3 模块三电路图42.4 总电路图43程序设计53.1 主程序流程图53.2模块一DS1302流程图63.3模块二12864LCD流程图83.4 模块三DS18B20流程图73.5 源程序74 仿真与调试7总结语7参考文献7 1 方案设计1.1单片机电子时钟的背景随着电子技术和计算机技术的迅速发展,单片机已经在工业过程控制、智能仪表、计算机集成控制、人工智能、通信设备的智能化以及家电的智能化等方面得到广泛的
2、应用。以单片机和微控制器为核心仍然是当今实现智能化技术的主流。随着单片机技术广泛地应用与人们生活的各个方面,一些人们经常使用的产品大多数是基于单片机研发的,如电子时钟。钟表从原来的沙漏计时和机械打点塔钟等演变到如今的电池驱动钟、交流钟、指针式石英电子钟表和数字式石英电子钟表,并且钟表的准确度越来越高了。随着人们的时间观念逐渐地增强,时钟在我们人类的世界里扮演着一个非常重要的角色,几乎出现在我们生活的各个角落里,并且人们几乎离不开它了。如今的时钟的功能更加全面,与机械时钟相比具有更高的正确性和直观性,且无机械装置,具有更长的寿命,因此广泛地应用于人类正常生活中,得到人们的关注和研发。1.2电子时
3、钟的意义电子时钟采用数字电路实现对时、分、秒和数字显示的计时装置,广泛使用于个人家庭、车站、机场等公共场所,成为人们日常生活中不可缺少的必需品,给人们的生活、学习、工作、娱乐带来了极大的方便。由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得电子时钟的精度、稳定性大幅度提高。现在的钟表的功能越来越强,具有定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动启闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,因此,研究数字时钟及其扩展,有着重大意义。1.3 电子时钟的工作原理及其具体实现电子时钟的工作原理是采用单片机最小系统,用DS1302时钟芯片和12864LCD液
4、晶显示屏芯片以及DS18B20温度传感器分别进行寄存相关信息、显示年月日时分秒和采取温度,用四个键分别实现选择调整对象为、增加调节对象的数值、减少调节对象的数值和调整确定,采用24小时制、定时器0中断和外部中断0,从而实现可调式中文电子日历、温度及整点报时功能。采用定时器0中断,定时50ms,其中断服务程序的功能是将时间和日期显示到LCD上。每1s时间,刷新液晶显示屏上的秒钟数值;每60s时间,刷新显示屏的分钟数值;每60min时间,刷新显示屏的小时数值;每24h时间,刷新显示屏的日期;星期是通过年月日进行调整;温度是通过温度传感器芯片DS18B20进行调整;时钟每次到整点时,通过蜂鸣器进行整
5、点报时。采用外部中断0实现时钟的调整,将四个键通过“与门”连接单片机P32端口,从而通过键产生外部中断信号。当要调整日期时间的时候,首先要按K1键来选择调整对象,否则按其他键不会进行时间调整,然后可以按K2和K3键对日期时间进行加减调整,最后按K4键可以将改动的日期时间重新显示到LCD上。并且每次按下键后,都会通过蜂鸣器发出按键声音。1.4 设计任务(1)可调式中文电子日历的硬件和软件设计;(2)画出程序流程图;(3)编写代码;(4)程序分析与调试;2 电路方案设计2.1 模块一电路图该模块主要通过DS1302时钟芯片实现计算秒、分、时、星期、日、月、年的信息,且具有闰年补偿的功能,其在pro
6、teus中的电路图如图2.1.1所示。图2.1.1 记录年月日秒分时星期的电路图2.2 模块二电路图该模块主要通过12864LCD实现中文电子日历功能,其在proteus中的电路图如图2.2.1所示图2.2.1 显示时间电路图2.3 模块三电路图该模块主要通过DS18B20温度传感芯片、四个键以及蜂鸣器实现温度采集,时间调节和闹钟等功能。图2.3.1 时间调整电路图2.4 总电路图如图2.4.1所示。图2.4.1 总体硬件电路图3程序设计3.1 主程序流程图图3.1.1 主函数流程图3.2模块一DS1302流程图图3.2.1获取当前时间的流程图图3.2.2 年月日时分秒+/-流程图图3.2.3
7、定时器0的中断服务程序图3.2.4外部中断0服务程序3.3模块二12864LCD流程图图3.3.1 LCD初始化流程图图3.3.2 通用显示函数流程图3.4 模块三DS18B20流程图图3.4 1 读取温度值3.5 源程序#include#include#include#define uchar unsigned char#define uint unsigned intsbit SDA=P10;/*DS1302数据线*/sbit CLK=P11;/*DS1302时钟线*/sbit RST=P12;/*DS1302复位线*/sbit K1=P34; /*选择键*/sbit K2=P35; /*
8、加键*/sbit K3=P36; /*减键*/sbit K4=P37; /*确定键*/sbit SPK=P26;/*子函数定义*/*显示年函数*/extern void LCD_Initialize();/*液晶初始化函数*/*读取温度值*/extern void Read_Temperature();extern void Display_Temperature(); /*显示时间函数*/extern void Display_A_Char_8X16(uchar P,uchar L,ucha*M )reentrant;/*显示年月日,星期,时分秒的固定汉字函数*/extern void Di
9、splay_A_WORD(uchar P,uchar L,uchar *M)reentrant;void Beep();/*启动蜂鸣器函数*/*在调整日期时间时,用该位决定是否反白显示*/extern bit Reverse_Display;extern uchar Display_Digit=0,0,0,0;/*待显示的各温度数位*/extern bit DS18B20_IS_OK=1;/*传感器正常标志*/*全局变量和数组定义*/uchar tCount=0;/*一年中每个月的天数,2月的天数由年份决定*/uchar MonthsDays=0,31,0,31,30,31,30,31,31,
10、30,31,30,31;/*所读取的日期时间*/uchar DateTime7;/*当前调整的时间对象:秒,分,时,日,月,星期,年(0,1,2,3,4,5,6)变量*/*其中星期由年月日调整自动完成*/char Adjust_Index=-1;uchar H_Offset=10,V_Page_Offset=0;/*水平与垂直偏移变量*/*年月日,星期,时分秒汉字点阵16乘16*/uchar code DATE_TIME_WORDS= 0x40,0x20,0x10,0x0C,0xE3,0x22,0x22,0x22,0xFE,0x22,0x22,0x22,0x22,0x02,0x00,0x00,
11、 0x04,0x04,0x04,0x04,0x07,0x04,0x04,0x04,0xFF,0x04,0x04,0x04,0x04,0x04,0x04,0x00, /*年*/ 0x00,0x00,0x00,0x00,0x00,0xFF,0x11,0x11,0x11,0x11,0x11,0xFF,0x00,0x00,0x00,0x00, 0x00,0x40,0x20,0x10,0x0C,0x03,0x01,0x01,0x01,0x21,0x41,0x3F,0x00,0x00,0x00,0x00, /*月*/ 0x00,0x00,0x00,0xFE,0x42,0x42,0x42,0x42,0x42
12、,0x42,0x42,0xFE,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x3F,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x3F,0x00,0x00,0x00,0x00, /*日*/ 0x00,0x00,0x00,0xBE,0x2A,0x2A,0x2A,0xEA,0x2A,0x2A,0x2A,0x2A,0x3E,0x00,0x00,0x00, 0x00,0x48,0x46,0x41,0x49,0x49,0x49,0x7F,0x49,0x49,0x49,0x49,0x49,0x41,0x40,0x00, /*星*/ 0x00,0x0
13、4,0xFF,0x54,0x54,0x54,0xFF,0x04,0x00,0xFE,0x22,0x22,0x22,0xFE,0x00,0x00, 0x42,0x22,0x1B,0x02,0x02,0x0A,0x33,0x62,0x18,0x07,0x02,0x22,0x42,0x3F,0x00,0x00, /*期*/ 0x00,0xFC,0x44,0x44,0x44,0xFC,0x10,0x90,0x10,0x10,0x10,0xFF,0x10,0x10,0x10,0x00, 0x00,0x07,0x04,0x04,0x04,0x07,0x00,0x00,0x03,0x40,0x80,0x7F
14、,0x00,0x00,0x00,0x00, /*时*/ 0x80,0x40,0x20,0x98,0x87,0x82,0x80,0x80,0x83,0x84,0x98,0x30,0x60,0xC0,0x40,0x00, 0x00,0x80,0x40,0x20,0x10,0x0F,0x00,0x00,0x20,0x40,0x3F,0x00,0x00,0x00,0x00,0x00, /*分*/ 0x12,0x12,0xD2,0xFE,0x91,0x11,0xC0,0x38,0x10,0x00,0xFF,0x00,0x08,0x10,0x60,0x00, 0x04,0x03,0x00,0xFF,0x0
15、0,0x83,0x80,0x40,0x40,0x20,0x23,0x10,0x08,0x04,0x03,0x00, /*秒*/ 0x10,0x21,0x86,0x70,0x00,0x7E,0x4A,0x4A,0x4A,0x4A,0x4A,0x7E,0x00,0x00,0x00,0x00, 0x02,0xFE,0x01,0x40,0x7F,0x41,0x41,0x7F,0x41,0x41,0x7F,0x41,0x41,0x7F,0x40,0x00, /*温*/ 0x00,0x00,0xFC,0x04,0x24,0x24,0xFC,0xA5,0xA6,0xA4,0xFC,0x24,0x24,0x2
16、4,0x04,0x00, 0x80,0x60,0x1F,0x80,0x80,0x42,0x46,0x2A,0x12,0x12,0x2A,0x26,0x42,0xC0,0x40,0x00, /*度*/;/*星期几的汉字点阵16乘16*/uchar code WEEKDAY_WORDS= 0x00,0x00,0x00,0xFE,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0xFE,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x3F,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x3F,0x00,0x00,0x00,0
17、x00, /*日*/ 0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xC0,0x80,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /*一*/ 0x00,0x00,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x06,0x04,0x00,0x00,0x00, 0x00,0x10,0x10,0x10,0x10,0x10,0x10,0x10,
18、0x10,0x10,0x10,0x10,0x10,0x18,0x10,0x00, /*二*/ 0x00,0x04,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x04,0x00,0x00, 0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00, /*三*/ 0x00,0xFE,0x02,0x02,0x02,0xFE,0x02,0x02,0xFE,0x02,0x02,0x02,0x02,0xFE,0x00,0x00, 0x00
19、,0x7F,0x28,0x24,0x23,0x20,0x20,0x20,0x21,0x22,0x22,0x22,0x22,0x7F,0x00,0x00, /*四*/ 0x00,0x02,0x82,0x82,0x82,0x82,0xFE,0x82,0x82,0x82,0xC2,0x82,0x02,0x00,0x00,0x00, 0x20,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x30,0x20,0x00, /*五*/ 0x10,0x10,0x10,0x10,0x10,0x91,0x12,0x1E,0x94,0x10
20、,0x10,0x10,0x10,0x10,0x10,0x00, 0x00,0x40,0x20,0x10,0x0C,0x03,0x01,0x00,0x00,0x01,0x02,0x0C,0x78,0x30,0x00,0x00, /*六*/;/*半角数字点阵8乘16*/uchar code DIGITS= 0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00,/*0*/ 0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 电子 时钟 显示屏 设计 学位 论文
限制150内