基于Atmega16单片机的计时秒表设计综述.docx
《基于Atmega16单片机的计时秒表设计综述.docx》由会员分享,可在线阅读,更多相关《基于Atmega16单片机的计时秒表设计综述.docx(9页珍藏版)》请在冰豆网上搜索。
基于Atmega16单片机的计时秒表设计综述
北京师范大学珠海分校
本科生课程设计
论文题目:
基于ATmega16单片机的计时秒表设计
学院工程技术学院
专业教育技术学
学号1318020052、1318020040
学生姓名吴起游、庞楠
指导教师姓名黄卢记
指导教师职称讲师
指导教师单位北师大珠海分校工程技术学院
2015年12月30日
基于ATmega16单片机的计时秒表设计
摘要
通过对单片机和计时秒表的调查和研究,本设计以ATmega16单片机作为主要系统控制中心的计时秒表。
硬件模块采用数码管作为时间显示区,键盘电路来实现计时、清零和读取时间,并且利用LED灯组成提示电路。
程序主要通过AVRstudio软件来编写,包括计时与清零程序、时间读取程序、LED提示程序。
最后用Proteus软件进行软件和硬件结合的模拟仿真。
经过测试模拟,所设计的计时秒表能够满足功能要求,基本达到预期效果。
关键词:
计时秒表;ATmega16单片机;AVRstudio
DesignofElectronicPasswordStopwatchonATmega16
ABSTRACT
ThroughtheinvestigationandresearchofMicrocontrollerandElectronicPasswordLock,aElectronicPasswordStopwatchonATmega16whichisusedasthemaincontrolcenterisdesignedinthisproject.
ProcedureismainlythroughtheAVRStudiosoftwaretowrite,Thecontrolprogramincludedthechronographyandclearprogram,thetime-readerprogram,theLEDpromptprogramwaswrotebyAVRstudio.FinallytheexpectedresultshavebeenbasicallyachievedafteradjustingthesoftwareandhardwarewithProteus.
Keywords:
Stopwatch;ATmega16;AVRstudio
目录记得更新
1.绪论
1.1.计时秒表发展历史
早在公元前20000年,史前人就开始采用在木棍等物件上刻画的方式来计算时间。
而公元400年,中国发明了机械漏刻。
而公元1700年,人类终于在时钟的时针间又加上了分针。
100年后,计时精确到1/100秒。
人类对于时间的追求不断精确,因此计时仪器也得以发展。
1928年,人类制作出了第一台石英钟。
新中国成立同年,人类发明了第一台原子钟。
随着科学技术的精进,秒表已经进入寻常千万家中,被广泛利用。
体育课上最怕的1000米考试,老师就是用计时秒表来记录学生成绩的。
可见如今,而电子表除了观察时间,早就多了记录时间的功能。
1.2.国内主要研究现状
目前秒表主要分为机械类和电子类,而电子表又可以分为四按键类和三按键类。
绝大部分体育老师使用的都是电子秒表。
而机械秒表,在很多地区已经是历史性存在而不再作为使用产品。
电子秒表算得上是一种比较先进的电子计时器。
我国电子秒表多是利用石英振荡器的振荡频率来充当时间基准,并且采用6位液晶数字来显示时间。
这种电子秒表显示十分直观,功能多而且方便读取。
2.
计时秒表的设计方案
2.1.系统工作流程
本系统通过ATmega16单片机、led数码管、led灯、蜂鸣器和继电器模拟计时秒表的功能,包括
计时秒表的功能操作具体如下:
2.2.硬件系统总框架
通过ATmega16单片机作为主体设定相关功能模块,包括
3.
计时秒表的硬件电路设计
3.1.ATmega16单片机简介
单片机是一种将CPU、存储器、I/O接口和总线制作在一块芯片上的大规模集成电路。
由于单片机具有功能全、价格低、体积小、开发应用方便等优点,并且能够嵌入产品中,因此得到了极其广泛的应用。
ATmega16AVR内核具有丰富的指令集和32个通用工作寄存器。
所有的寄存器都直接与运算逻单元(ALU)相连接,使得一条指令可以在一个时钟周期内同时访问两个独立的寄存器。
此结构大大提高了代码效率,并且具有比普通的CISC微控制器最高至10倍的数据吞吐率。
ATmega16同时具有16K字节的系统内可编程Flash,片内/外中断,可编程串行USART,有起始条件检测器的通用串行接口,8路10位具有可选差分输入级可编程增益(TQFP封装)的ADC,具有片内振荡器的可编程看门狗定时器,一个SPI串行端口,以及六个可以通过软件进行选择的省电模式等特点。
该类单片机还具有系统内可编程特性,可以不用购买昂贵的仿真器和编辑器也可进行单片机嵌入式系统设计和开发,尤其是对于单片机的初学者来说,可提供了非常方便和简捷的学习开发环境。
因此,本设计选择了ATmega16单片机为主控芯片来实现计时秒表功能。
3.2.各单元电路模块功能
3.2.1.键盘电路模块
键盘电路采用4x4的行列式键盘,减少键盘与单片机接口时所占用的I/O线的数目,其原理如图3-2所示。
图3-2矩阵键盘电路模块
每一条水平(行线)与垂直线(列线)通过一个按键来连通,利用这种行列式矩阵结构只需要N条行线和M条列线,即可组成具有N×M个按键的键盘。
在这种行列式矩阵键盘非键盘编码的单片机系统中,最常用的按键识别方法是“扫描查询法”。
具体的方法操作如下:
(1)判断键盘中有无键按下:
将全部行线置低电平,然后检测列线的状态。
若所有列线均为高电平,则键盘中没有按键按下。
只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。
(2)判断闭合键所在的位置:
在确认有按键按下后,即可进入确定具体闭合键的过程。
其方法是:
依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。
在确定某根行线位置为低电平后,再逐行检测各列线的电平状态。
若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。
3.2.2.数码管显示电路模块
目的。
图3-3数码管显示电路模块
3.2.3.LED指示电路模块
LED指示电路模块主要用LED灯来
3.3.硬件系统的总体实现
硬件系统整体以ATmega16单片机为核心控制连接键盘模块电路、以及LED指示灯电路模块,从而达到单片机计时秒表的功能实现,硬件系统的总体实现如图所示。
突突突
计时秒表的软件设计
本设计通过ATmega16单片机、数码管、LED灯、蜂鸣器和继电器模拟计时秒表的功能,包括。
3.4.流程图
3.4.1.主程序流程图
啦啦啦啦
3.4.2.子程序流程图
啦啦啦
3.5.各部分程序
3.5.1.主程序
哟哟哟
3.5.2.计时与清零程序
哟
3.5.3.时间读取程序
哦
3.5.4.LED提示程序
奥
4.计时秒表的模拟仿真
4.1.Proteus软件简介
Proteus软件是英国Labcenterelectronics公司出版的EDA工具软件。
它是目前最好的仿真单片机及外围器件的工具。
它是一个集模拟电路、数字电路、模/数混合电路以及多种微控制器系统为一体的系统设计和仿真平台。
它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件,是目前同类软件中最先进、最完整的电子类仿真平台之一。
它真正实现了在计算机上完成从原理图、电路分析与仿真、单片机代码调试与仿真、系统测试与功能验证到PCB板生成的完整的电子产品研发过程,真正实现了从概念到产品的完整设计。
其处理器模型支持8051、AVR、ARM、HC11、PIC10/12/16/18/24/30/DsPIC33、8086和MSP430等,2010年又增加了Cortex和DSP系列处理器,并持续增加其他系列处理器模型。
在编译方面,它也支持IAR、Keil和MPLAB等多种编译器[14]。
4.2.计时秒表的仿真
通过Proteus软件仿真,结果能够通过ATmega16单片机实现计时秒表的基本功能。
首先运用Proteus软件画出系统电路图,然后仿真出计时秒表的功能。
兔兔utuuyuyuyu
5.
结语
单片机计时秒表设计主要是通过单片机作为主体控制来实现计时秒表的基本功能,通过查阅大量的文献知识,对单片机和计时秒表相关理论知识进行深入了解,然后通过Proteus软件进行硬件和软件模拟仿真,运用AVRstudio软件进行编程。
完成设计的工作如下:
(1)在图书馆以及上网的数据库上查阅相关文献,对相关知识进行分析总结后,确认以ATmega16单片机为主体进行计时秒表设计;
(2)根据查阅的各个硬件部分相关知识,选择合适的硬件;
(3)运用Proteus软件进行系统软件设计,并且进行模拟实验;
(4)通过模拟实验验证,设计的单片机计时秒表能够完成设计要求的各个功能。
对于这次单片机计时秒表的未来展望:
(不足和改进)
6.
参考文献
[1].高惠芳.单片机原理与应用技术[M].科学出版社,2010.4
[2].张毅刚,彭喜元.单片机原理及接口技术[M].北京:
人民邮电出版社,2008
[3].马潮.AVR单片机嵌入式系统原理与应用实践[M].北京:
北京航空航天大学出版社,2003
[4].徐益民,范红刚,苏凤武.零基础学AVR单片机[M].北京:
机械工业出版社,2011
[5].老杨,李鹏举.AVR单片机工程师是怎样炼成的:
基于C语言+Proteus仿真[M].北京:
电子工业出版社,2012
7.
致谢
教育软件开发与设计课程结束了,首先要感谢黄卢记老师历时一个学期的悉心教导与耐心培养,是老师交给我们知识并培养我们的实践技能,才让我们能够设计出虽然简单却也实用的计时秒表。
其次感谢13级教育技术班,是集体的力量让我们发挥地更好。
我们会继续努力,不辜负黄卢记老师的期望!