您的当前位置:首页正文

课程设计电子秒表

2022-10-12 来源:小奈知识网
 .

通信与信息工程学院

2015/2016 学年 第 1 学期

课程设计II 实验报告

设计题目 电子秒表 基本要求 任务要求 A.设计秒表功能,精度为0.01秒。 B.可同时记录和存储10个秒表数据(连续记录并显示已存储记录数,秒表记录数据查询和清除功能)。 发挥部分: Word 资料

.

A.设计PC和430之间的串行口通信程序(参考USB通信实验)和通信协议,通过USB串行口向PC机上报秒表数据。 实验设备 及软件 计算机;MSP-EXP430F5529开发板;IAR开发软件 同组人员 学号及姓名 参考文献

Word 资料

.

目 录

一.设计要求和原理说明 1.1 设计要求

A.设计秒表功能,精度为0.01秒。

B.可同时记录和存储10个秒表数据(连续记录并显示已存储记录数,秒表记录数据查询和清除功能)。 1.2 原理说明

本次课程设计利用430单片机的定时器/计数器定时和计数原理,实现电子秒表的精确计时。利用中断系统实现计数开始和数据记录,并在LED显示屏上显示。当接通电源即对开发板、按键和定时器初始化。初始状态下计时器显示00.00,当按下S2键时,外部中断INT1向CPU发出中断请求,CPU转去执行外部中断1服务程序,即开启定时器。计时采用定时器T中断完成,秒表要求的精度为0.01秒,故设定定时溢出中断周期为10ms,当一处中断后向CPU发出溢出中断请求,每发出一次中断请求就对毫秒计数单元进行加一,达到10次就对十毫秒位进行加一。依次类推,直到99.99秒重新复位。

当按下S1键,停止内部中断,执行外部中断处理程序,即记录当前计时结果,并显示在LCD显示屏上。记录完成才允许其他中断。LCD屏一次允许显示十个数据,当记满十组数据时回到第一行继续显示后面的数据。

当再次按下S2键,数据清零。 二.系统硬件设计 2.1按键输入模块设计

本次设计具有三个功能:启动定时器,计时和清零。对S2键设计实现启

Word 资料

.

动定时器和清零功能。对S1键设计实现计时功能。

当按下S2键时,外部中断INT1向CPU发出中断请求,CPU转去执行外部中断1服务程序,即开启定时器。计时采用定时器T中断完成,秒表要求的精度为0.01秒,故设定定时溢出中断周期为10ms,当一处中断后向CPU发出溢出中断请求,每发出一次中断请求就对毫秒计数单元进行加一,达到10次就对十毫秒位进行加一。依次类推,直到99.99秒重新复位。

当按下S1键,停止内部中断,执行外部中断处理程序,即记录当前计时结果,并显示在LCD显示屏上。记录完成才允许其他中断。LCD屏一次允许显示十个数据,当记满十组数据时回到第一行继续显示后面的数据。

当再次按下S2键,数据清零。

2.2点阵LCD液晶显示模块

在该电路中,液晶为102×64点阵LCD,采用SPI模式实现数据的传输,在该电路中数据传输是单向的,数据只允许写入。在初始化时,调节命令中PM(0~63)的数值就可调节液晶显示对比度;该液晶背光为LED背光,通过在LCD_BL_EN(P7.6)上输出PWM信号进行调节背光亮度。

本次设计要求能够同时记录和存储10组数据。根据LCD液晶屏的点阵格式

Word 资料

.

我们进行如下设计,即除去按键功能标记行和定时器同步显示行,记录的十组数据分五行显示,每行显示两组数据。当记满十组数据,重新回到数据记录的首行进行下一组数据的显示。 三.流程图设计

设置中断,每中断一次计数加一 开发板初始化

链接键盘

Y 按下 S1 FLAG=1? 按下S2 N 关闭计时器,清零 打开计时器 Word 资料 .

LCD显示屏

四.程序设计

LCD液晶模块,定时器及按键初始化

当S1键被按下时,禁止外部中断并记录当前时间,调用timeshow()函数在LCD显示屏上显示。再返回执行中断处理前的程序。

Word 资料

.

当S2键被按下,首先判断是否处于计时状态或清零状态。若处于计时状态,则定时器开始工作。此次设计要求时间精度为10ms,故对定时器的设计中断溢出时间为0.01s。从零时刻开始计时,因此采用增计数方式工作。并调用timeshow()函数实时显示当前时刻。

Word 资料

.

定时器工作方式设定

首先初始化时钟;使用了MSP430F5529芯片的32KHz低频晶体振荡器作为时钟;定时溢出中断周期为10ms,当一处中断后向CPU发出溢出中断请求,每发出一次中断请求就对十毫秒计数单元进行加一,达到10次就对百毫秒位进行加一,依次类推,直到99.99秒重新复位。

Word 资料

.

五.设计小结

此次设计一开始我们首先从对430单片机的功能学习开始入手,学习掌握单片机的编程方法。然后分析课程设计的功能要求,电子秒表要求的数据记录、显示和清零等功能需要我们对开发板初始化,设定按键功能,并且要正确设定系统的中断时间才能达到0.01s的精度。根据不同模块的功能要求,我们按照模块编程通过不断的调试和整合最终实现了程序的正确运行,能够在单片机上正确记录十组计时数据。但在实验中我们也发现了一些瑕疵,比如,当S1键按下过快,会导致同时记录显示两组数据。通过分析我们认为这是由于单片机的低频晶振存在毛刺消抖电路无法消除才导致的现象。

本次课程设计不仅使我增进了对430单片机工作原理的了解,更提高了我实际动手操作的能力。通过对单片机编程,我学会了将软件与硬件相结合,将理论与实际相结合。对我以后的学习和工作都将有很大裨益。

Word 资料

.

附:电子秒表运行结果:

Word 资料

.

设计成绩评定

评分内容 上机时间 报告审阅结果 原理 完成情况 操作 具体要求 上机时间是否达到要求的学时,按照实际情况给与一定的成绩。 报告结构严谨,文字通顺,用语符合技术规范,图表清楚,书写格式规范,不与别人雷同。 原理清楚,能较好地理解课题任务并提出实施方案。 独立完成规定设计任务,论证、分析、设计、计算、结构、建模、实验正确合理,有一定的创新。 能熟练操作相关工具软件,并利用工具软件完成设计任务。 总分 10分 30分 20分 30分 10分 100分 评分 验收结果 总成绩(五分制) Word 资料

.

指导教师评阅意见 Word 资料

因篇幅问题不能全部显示,请点此查看更多更全内容