当前位置:文档之家› 基于STM32的智能万年历课程设计说明书

基于STM32的智能万年历课程设计说明书

课程设计说明书设计题目:基于STM32的智能万年历专业:电气工程及其自动化班级:设计人:课程设计任务书学院电气信息系专业电气工程及其自动化一、课程设计题目:基于STM32的智能万年历专题名称:最小应用系统二、课程设计主要参考资料(1)刘火良,杨森.STM32库开发实战指南[M].北京:机械工业出版社.2013.5(2)ADS7943中文参考资料[M/CD].(3)ILI9320控制器中文参考资料[M/CD].三、课程设计应解决主要问题(1)最小应用系统:包括MCU、复位、启动、晶振、电源等。

(2)日历的显示和设置;(3)万年历的算法和实现;(4)定时闹钟功能;(5)无线设置功能。

四、课程设计相关附件(如:图纸、软件等)(1)软件:Keil μVision4(2)开发平台:神州Ⅱ号STM32嵌入式技术开发板五、任务发出日期:课程设计完成日期:指导教师签字:系主任签字:指导教师对课程设计的评语指导教师(签章):日期:摘要单片机应用技术飞速发展,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及生活中广泛使用的各种智能IC卡、电子宠物等,从大到国家防卫,小到日常生活,方方面面都离不开单片机。

单片机是集CPU,RAM,ROM,定时,计数和多种接口于一体的微控制器。

它体积小,成本低,功能强,广泛应用于智能产业和工业自动化上。

二十一世纪的今天科技与经济迅速发展,人们的生活节奏变得越来越快,生活水平越来越高,对于生活的品味和质量的要求也更高。

人们不再满足于只能提供简单计时功能的时钟,希望在能保证计时精确的基础上能多添加一些其他功能,诸如日历、定时等。

本文主要介绍了以STM32F103VCT6开发板为核心部件来设计的一款万年历,以其内部的RTC时钟模块作为时钟,用TFTLCD液晶显示器作为显示模块,时钟电路能准确提供24小时制时间、平年闰年的判断以及定时。

采用Keil uVision4进行编写调试程序,以神州二号嵌入式技术开发板为硬件平台进行设计,最终实现在显示屏上显示时间、日期、以及进行定时等功能。

以基于STM32的智能万年历作为设计的课题,因为它有很好的开放性和可发挥性,不仅考察了对单片机的掌握能力而且强调了对单片机扩展的应用。

另外液晶显示的万年历已经越来越流行,特别适合在家庭居室、办公室、大厅、会议室、车站和广场等地方使用,它具有显示清晰直观、走时准确、可以进行夜视等功能,并且还可以扩展出其它多种功能。

所以,电子万年历作为设计课题很有价值。

经过两周的课程设计,我们完成了按键和触摸两种方式对万年历的控制,实现了基本的万年历功能和闹钟功能。

本次课程设计让我对万年历有了深刻理解,更让我对stm32有了更进一步的学习。

关键词:STM32F103VCT6;最小应用系统;万年历目录1.课程设计任务 (1)1.1课程设计目的 (1)1.2设计要求 (1)1.3技术要求 (1)1.4解决的主要问题 (2)1.5两周时间安排 (2)2 总体方案设计 (3)2.1整体方案设计 (3)2.2模块工作原理 (3)2.2.1 最小应用系统模块 (3)2.2.2 基础配置模块 (3)2.2.3 时间运行模块 (3)2.2.4 触摸屏显示模块 (4)2.2.5 触摸屏触摸模块 (4)2.2.6 闹钟设置模块 (4)2.3硬件模块简介 (4)2.3.1 最小应用系统 (5)2.3.2 TFTLCD显示屏 (5)3 硬件设计 (6)3.1STM32硬件系统原理图 (6)3.1.1 MCU (6)3.1.2 复位电路 (7)3.1.3 启动电路 (8)3.1.4 晶振电路 (8)3.1.5 电源电路 (9)3.1.6 蜂鸣器电路 (9)3.2触摸屏模块电路设计 (11)3.2.1 TFTLCD简介 (11)3.2.2 显示设置 (11)3.2.3 触摸设置 (12)3.2.4 驱动设置 (12)3.3硬件系统模块电路 (12)3.3.1专题硬件选型依据及简介 (12)3.3.2 专题主芯片的内部逻辑结构 (13)3.3.3 外部管脚特性 (14)3.3.4 与MCU的硬件接口连接 (15)4 软件设计 (18)4.1万年历定时设计思路 (18)4.2主程序模块 (18)4.3TFT-LCD触摸屏模块 (19)4.4专题设计 (19)4.4.1.针对专题的信息传输 (19)4.4.2.芯片的工作方式 (20)4.4.3.时序图 (21)4.4.4.流程图 (22)5 调试与结果 (23)5.1测试任务 (23)5.2测试目的目标 (24)5.3测试软硬件环境 (24)5.4测试的过程及其步骤 (24)5.5测试结果 (24)6 总结 (26)7 致谢 (27)参考文献 (28)1.课程设计任务1.1 课程设计目的(1)学习万年历的原理,学会定时器、触摸屏在万年历中的应用。

(2)通过万年历的制作使学生熟练掌握所学的相关知识内容,并培养学生工程设计的一般方法和技巧。

1.2 设计要求:独立思考、共同合作、保质保量、按时完成。

1.3 技术要求:(1)系统组成系统选用STM32F103单片机为微处理器,使用开发板上具有的按键、指示灯、触摸屏和串口等实现万年历的功能。

(2)实现功能:1)日历、时间的调整,通过按键切换实现对年月日时分秒的调整控制,可以设置每一部分的初始值。

2)具备闰年的自动调整功能3)具有定时闹钟功能:通过按键/触摸屏设置定时时间。

定时时间到,蜂鸣器发出鸣叫声,维持5S。

4)上位机功能:可以把单片机的时间数据通过串口或者USB传送至上位机。

5)无线设置功能:通过远程设置万年历。

(3)模块组成:STM32 单片机最小应用系统;设置显示模块;闹钟模块;时间运行模块等;1.4 解决的主要问题:(1)最小应用系统设计:设计STM32的最小应用系统,包括MCU、复位、启动、晶振、电源等。

(2)日历的显示和设置;(3)万年历的算法和实现;(4)定时闹钟功能;(5)无线设置功能。

1.5 两周时间安排(1)第一周:星期一:布置设计任务,收集相关资料。

星期二:确定设计方案星期三:软、硬件的总体设计星期四、五、六、日:上机调试(2)第二周星期一、二、三:上机调试星期四:完成设计报告。

星期五:17:00之前上交课程设计报告。

2 总体方案设计2.1 整体方案设计2.2 模块工作原理2.2.1 最小应用系统模块最小应用系统包括MCU和电源、复位、晶振、启动等,该系统可以接收数据传给上位机,通过上位机将数据传输到显示屏上显示数据,也可以通过改变数据让其调整显示屏上的数据。

另外它能使蜂鸣器发声。

2.2.2 基础配置模块基础配置模块实现对SysClock、RCC、GPIO、EXTI、NVIC、Timer、USART 等功能模块进行基础配置,设置其输入输出方式、速度及其它专属配置,并使能需要的管脚及外设,设置中断。

2.2.3 时间运行模块时间运行模块是用来对时间运行的算法进行编程,通过算法编程实现对年、月、日、时、分、秒的处理,实现秒满60清零并进1,分满60清零并进1,时满24清零并进1,日满28或29或30或31清零并进1,月满12清零并进1的功能。

2.2.4 触摸屏显示模块触摸屏显示模块使用TFT-LCD即薄膜晶体管液晶显示器,使用TFTLCD模块驱动芯片中的ILI9320芯片,实现触摸屏的显示。

TFT-LCD与无源TN-LCD、STN-LCD的简单矩阵不同,它在液晶显示屏的每一个像素上都设置有一个薄膜晶体管(TFT),可以有效地克服非选通时的串扰,使显示液晶屏的静态特性与扫描线数无关,因此大大提高了图像质量。

TFT-LCD也被叫做真彩液晶显示器。

2.2.5 触摸屏触摸模块触摸屏的主要部分是一块与显示器表面非常配合的电阻薄膜屏,当手指触摸屏幕时,两层导电层在触摸点位置就有了接触,电阻发生变化,在X和Y两个方向上产生信号,然后送到触摸屏控制器。

控制器侦测到这一接触并计算出X,Y的位置,再根据获得的位置模拟鼠标的方式运行。

2.2.6 闹钟设置模块定时闹钟模块是利用Timer函数进行操作,通过设置闹钟时间,倒计时使其到达指定时间触发蜂鸣器,从而实现闹钟提示的功能。

2.3 硬件模块简介在智能万年历项目中,我们采用的硬件主要是基于STM32F103VCT6的神州二号开发板,它的主要性能如下表所示:2.3.1 最小应用系统最小应用系统是完成此项目所有功能的基础,它主要包含MCU和电源、复位、晶振、启动等,我们通过程序使能这些硬件,让它完成相应的功能。

MCU:微控制单元,是把中央处理器的频率与规格做适当缩减,并将内存、计数器、USB、A/D转换、UART、PLC、DMA等周边接口,LCD驱动电路都整合在单一芯片上,形成芯片级的计算机,为不同的应用场合做不同组合控制。

复位电路:就是利用它把电路恢复到起始状态。

就像计算器的清零按钮的作用一样,以便回到原始状态,重新进行计算。

和计算器清零按钮有所不同的是,复位电路启动的手段有所不同。

晶振电路:驱动整个系统中的各个时钟进行工作。

启动电路:启动整个系统。

电源:给整个系统供电。

2.3.2 TFTLCD显示屏TFT(Thin Film Transistor)即薄膜场效应晶体管。

所谓薄膜晶体管,是指液晶显示器上的每一液晶像素点都是由集成在其后的薄膜晶体管来驱动。

从而可以做到高速度、高亮度、高对比度显示屏幕信息。

3 硬件设计3.1 stm32硬件系统原理图我们组选用神州二号开发板来完成我们的任务目标,它是基于STM32F103VCT6开发的,面向企业和广大爱好者,开发板功能强大,外围资源丰富,例程丰富,如下图所示:此章主要介绍最小应用系统(MCU、复位、启动、晶振、电源等)和此设计相关硬件。

3.1.1 MCU神州二号STM32开发板选择的是STM32F103VCT6作为MCU,该芯片是STM32F103系列里面配置非常强大的了,它拥有的资源包括:48KB RAM、256KB FLASH、2个基本定时器、4个通用定时器、2个高级定时器、3个SPI、2个IIC、5个串口、1个USB、1个CAN、3个ADC、1个DAC、1个SDIO接口、以及80个通用IO口。

神州二号开发板选用的是外设资源和管脚资源最丰富的100脚LQFP封装的STM32F103VCT6芯片,充分满足企业和广大爱好者的评估开发需求。

所以我们选择了它作为我们的主芯片。

MCU部分原理图如下图所示3.1.2 复位电路图中所示是开发板板载的复位按键(RESET),用于复位STM32,还具有复位液晶显示屏的功能,因为液晶模块的复位引脚和STM32的复位引脚是连接在一起的,当按下该键的时候,STM32和液晶一并被复位。

相关主题