资源预览内容
第1页 / 共42页
第2页 / 共42页
第3页 / 共42页
第4页 / 共42页
第5页 / 共42页
第6页 / 共42页
第7页 / 共42页
第8页 / 共42页
第9页 / 共42页
第10页 / 共42页
亲,该文档总共42页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
本 科 生 毕 业 论 文(或设计)(申请学士学位)论文题目 基于STM32单片机的万年历设计 作者姓名 李 杨 专业名称 自动化 指导教师 王 斌 2014年5月学 生: (签字)学 号:2010210328答 辩 日 期:2014年5 月24日指 导 教 师 : (签字)目 录摘要1Abstract11绪论21.1 研究背景及意义21.2 国内外研究现状21.3 论文主要内容22系统硬件电路设计32.1单片机开发板的介绍32.2硬件电路总体结构设计42.3 硬件电路各单元电路设计42.3.1 按键电路的设计42.3.2 显示电路的设计53系统软件设计63.1 RealView MDK3.80简介63.2 软件总体设计63.3 TFT-LCD显示程序设计73.4 时钟程序设计83.5 汉字显示程序103.6 图片显示程序113.7 按键功能程序114系统调试12结论14参考文献14附录一15程序列表15主程序15TFT-LCD显示程序21时钟程序24汉字显示程序29图片显示程序31按键程序36致谢39滁州学院本科毕业设计基于STM32单片机的万年历设计摘要:随着现代社会生活和工作节奏的加快,及时准确的掌握时间变得越来越重要。STM32包含Cortex-M3内核,具有低功耗、低成本、丰富的片内外设以及处理速度快等特点。本文采用STM32F103RBT6作为主控制器,利用其内部的实时时钟(RTC)在相应软件的配置下,设计了具有时间显示功能的电子万年历,可提供24小时制的实时时钟和区分平、闰年的日历。测试表明该设计计时准确、界面美观、操作简便。关键词:万年历;STM32F103RBT6;TFTLCD;Cortex-M3;RTCCalendar Design Based On STM32 MicrocontrollerAbstract:With the development of modern society, the accelerated pace of life and work,to grasp time timely and accurately becomes more and more important. STM32 contains the Cortex-M3 kernel, with low power consumption, low cost, rich on-chip and high processing speed. This paper uses STM32F103RBT6 as the main controller, using real time clock the internal (RTC) with the corresponding software configuration, designs electronic calendar with the function of time display, and it can provide 24 hour real-time clock and the calendar which can distinguish the flat year or the leap year. The test shows that the design of accurate timing, beautiful interface, and easy operation.Key words: Calendar; STM32F103RBT6; TFTLCD; Cortex-M3; RTC1 绪论1.1 研究背景及意义对于时间这个概念一开始在长达几千年的时间里,根本就没有任何测定时间的精确方法。人类得知时间是通过太阳在天空的位置,或者是通过日晷或沙漏这样的仪器来大致的判断一下时间。在中国历史上就出现日晷、沙漏、机械钟、石英钟,这几种计时装置。二十一世纪的今天科技与经济迅速发展,人们的生活节奏变得越来越快,生活水平越来越高,对于生活的品味和质量的要求也更高。人们不再满足于只能提供简单计时功能的时钟,希望在能保证计时精确的基础上能多添加一些其它功能,诸如日历、星期的显示,使其界面能够更加的美丽。目前电子万年历成了现代社会中的主要计时工具之一,广泛应用于社会生活需要的各个方面。它集时钟、日期、星期等功能于一体,具有显示直观、读取方便、界面简洁、功能多样等优点,符合目前电子计时仪器的发展趋势。电子万年历不仅在市场上占据重要的位置,在学习中尝试制作一款功能新颖的万年历也是一个热门的课题。此课题具有很好的开放性和发挥性,在制作过程中既巩固了单片机方面的知识,也开放了思维,将自身的想法实现于多彩功能的万年历中,这是对制作者本身能力的一种培养和锻炼。1.2 国内外研究现状由于大规模的电子集成电路的应用,电子万年历在当今社会钟表界中独占鳌头。我国生产的电子万年历有很多种,总体上来说以研究多功能电子万年历为主,所以在生产的电子万年历上除了具有基本的显示时间、日期功能外,增添其它的一些附属功能如闹铃、报警等功能后,生产商在其质量、价格、外观、实用上做功课。不断的改进万年历产品,使其更具有市场需求。就目前市场上出现的各种万年历,第一种是纯硬件电路系统,采用分离式硬件电路分别实现各种功能,时钟的功能通过时序逻辑电路来实现,这将导致电路复杂化、整体可靠性变差、不灵活。很难实现对系统的扩展。第二种是通过可编程逻辑器件来实现的,与前者相比在可靠性和实现时钟的功能方面要有所提升,但这显示功能只能通过数码管来实现,使其显示的效果不明显。同时在灵活性方面还是不行,很难对其进行扩展功能的实现。第三种相比前两种而言在各个方面都有所提高,这也是现在商家们致力发展的方法,使用单片机作为核心控制系统,这样整个系统就可编程了,大大增加了灵活性,智能化的液晶显示使其显示界更加清楚、简洁。同时,可以实现其它的一些额外功能如遥控调试、语音报时等功能。1.3 论文主要内容本文主要介绍以STM32F103RBT6单片机为核心部件来设计一款电子万年历,以其内部的RTC模块作为时钟,用TFTLCD液晶显示器作为显示模块,时钟电路能够准确提供24小时制时间、平年闰年的判断、星期的判断。采用RealView MDK3.80进行编写调试程序,以STM32单片机开发板为硬件平台进行设计,最终实现在TFTLCD上显示开机画面、时间、日期、星期、机械时钟以及汉字。2 系统硬件电路设计2.1 单片机开发板的介绍本设计采用的是ALIENTEK MiniSTM32的开发板,如图2-1所示。图2-1 STM32开发板它包含一个USB转串口(用于程序的下载)、一个USB串口1(用于与PC端进行通信) 、两个LED灯、一个标准的JTAG调试口、一个复位(RESET)按键、一个WK_UP按键、两个普通按键、一个开关按钮、一个W25X16 16M FLASH存储芯片、一个2.4寸/2.8寸通用LCD接口、一个开发板的核心部件STM32F103RBT6。其中核心部件STM32微控制器是由ST(意法半导体)公司推出的第一个基于ARM Cortex-M3内核的控制器,STM32凭借其产品线的多样化、极高的性价比、低功耗,迅速成为当前微控制器产品中的一颗最闪亮的新星。Cortex-M3内部的数据路径是32 位的,寄存器是32 位的,存储器接口也是32 位的。CM3 采用了哈佛结构,拥有独立的指令总线和数据总线,可以让取指与数据访问互不干扰。这样一来数据访问不再占用指令总线,从而提升了性能。另外基于ARM Cortex-M3 STM32可以采用固件库的开发方式,不需要再熟悉底层寄存器,大大宿短了开发周期而且Thumb2 指令集为编程带来了更多的灵活性。STM32已经广泛应用于工业控制、低功耗、家用电器、建筑与安防及计算机通信网络等领域。MCU的部分原理图如图2-2所示。图2-2 MCU部分原理图上图中中上部的BOOT1用于设置STM32的启动方式,其对应启动模式如下表2-1所示。表2-1 BOOT0与BOOT1的启动模式BOOT0BOOT1启动模式说明0X用户闪存存储器用户闪存存储器,也是FLSAH启动10系统存储器系统存储器启动,用于串口下载11SRAM启动器SRAM启动,用于在SRAM中调试代码2.2 硬件电路总体结构设计本设计采用STM32F103RBT6作为MCU,由内部实时时钟(RTC)实现日历功能,利用独立按键进行调整时间,通过TFT-LCD液晶显示器来显示开机画面、日历、汉字。硬件电路的总体设计方案如图2-3。图2-3 总体结构设计框图2.3 硬件电路各单元电路设计2.3.1 按键电路的设计本设计使用到开发板上两个按键,其原理图如图2-4所示。图2-4 按键输入原理图KEY0和KEY1用作普通按键输入,分别接在PA13和PA15上,由于他们都与JTAG共用同一个引脚,所以在使用KEY0和KEY1两个按键时要特别注意不能使用JTAG来调试,另外KEY0和KEY1还和PS/2的DAT和CLK共用,他们都是通过JTAG的上拉电阻来提供上拉的。2.3.2 显示电路的设计该设计的显示部分采用的是TFTLCD液晶显示模块,它可以显示16位的真彩图片,TFT-LCD即薄膜晶体管液晶显示器,是英文名Thin Film Transistor-Liquid Crystal Display的字头缩写。TFT-LCD技术是将微电子技术与液晶显示器技术进行巧妙的融合。人们通过在Si上进行微电子精细加工这一项技术,实现了在大面积的玻璃上进行TFT阵列的加工,再通过已经成熟的LCD技术将该阵列基板与另一片带彩色滤色膜的基板进行相结合从而形成一个液晶盒,其次经过多到工序如偏光片贴覆等过程,最后形成液晶显示器(屏)。TFT-LCD中的TFT相当于一个开关管,它可以有效地克服在非选通时出现的串扰,使得液晶显示屏的静态特性与扫描线数无关,从而大大提高的显示的质量。本次采用的是2.8寸的ALIENTEK TFT-LCD模块,分辨率为320*240,该液晶显示器的控制器为ILI9320。其模块接口如图2-5。图2-5 TFTLCD模块接口图该模块采用的是80并口方式与外部链接的,80并口有如下一些连接线:CS:TFTLCD片选信号。WR:向TFTLCD写入数据。RD:从TFTLCD中读取数据。D15:0:16位双向数据线。RST:硬复位TFTLCD。RS:命令/数据标志(0:读写命令 1:读写数据)。硬件部分对应的IO口连接为:LCD_LED对应PC10;LCD_CS对应PC9;LCD_RS对应PC8;LCD_WR对应PC7;LCD_RD对应PC6;LCD_D17:1对应PB15:0;3 系统软件设计系统软件设计主要包括主程序、TFT
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号