您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 基于AVR的可调电子钟的ppt
基于AVR的可调电子钟设计目录1.电子钟设计研究意义和目的2.AVR单片机在国内外的发展3.开发环境的介绍4.可调电子钟的设计要求5.系统硬件设计6.系统软件设计7.系统测试8.总结1.电子钟设计研究意义和目的电子钟具有走时准确,一钟多用等特点,在生活中已经得到广泛应用。虽然现在市场上已有现成的电子钟集成电路芯片,价格便宜、使用方便,但是人们对电子产品的应用要求越来越高,可调电子钟不但可以显示当前时间,而且可以显示年、月、日等,给人们的生活带来方便。另外可调电子钟还具备日期时间的调节与写入功能。电子钟是一种利用数字电路来显示秒、分、时的计时装置,它具有走时准确、显示直观、无机械传动装置等优点,因而得到广泛应用。随着人们生活环境的不断改善和美化,在许多场合都用到电子时钟。数字钟能长期、连续、可靠、稳定地工作;同时还具有体积小,功耗低等特点,便于携带,使用方便。数字钟是采用数字电路实现对“时、分、秒”数字显示的计时装置,广泛应用于个人家庭、车站、码头、办公室等公共场所,已成为人们日常生活中不可缺少的必需品。2.AVR单片机在国内外的发展AVR单片机是1997年由ATMEL公司研发出的增强型内置Flash的RISC精简指令集高速8位单片机。AVR的单片机可以广泛应用于计算机外部设备、工业实时控制、仪器仪表、通讯设备、家用电器等各个领域。AVR采用了RISC结构,其在速度、内存容量、外围接口的集成化程度、以及向串行扩展,更适合使用高级语言编程的等众多的特性,以及其所使用的开发技术和防真调试技术等方面,都充分体现出和代表了当前单片嵌入式系统发展的趋势。也正是由于这些显著特点,和具有极高的性价比,使得AVR得到广泛的应用,在短时间内成为市场上的主流芯片之一。3.开发环境的介绍AVRStudio拥有一个全新的模块结构,AVR单片机可以在AVRStudio开发平台的模拟仿真环境中进行软件的调试。在AVRStudio集成开发环境中,使用它自带的软件模拟仿真调试工具可以对汇编源文件或者第三方软件支持开发的源文件(如C、Basic的等源程序),进行纯粹的软件环境的模拟仿真调试,这样它将是电子时钟开发的编译环境。Proteus软件它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。从原理图布图、代码调试到单片机与外围电路协同仿真,是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、AVR、ARM、8086等,在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。4.可调电子钟的设计要求a.实现年月日时分秒显示功能b.用七个按键来实现调整时钟的功能c.将按键进行相应的处理并通过LED数码管显示出来。5.系统硬件设计系统的硬件设计主要有四大模块组成ATMEGA16构成的主控制模块DS1302构成的实时时钟模块LED数码管显示模块按键设置模块ATMEGA16构成的主控制模块ATmega16单片机简介ATmega16单片机是ATmega系列AVR单片机中内容接口丰富,功能齐全,性能价格比较高的产品。ATMEGA16是低功耗、高性能的CMOS型8位单片机。这款芯片具备了AVR系列单片机的主要的特点和功能,采用先进RISC结构的AVR内核,片内带有16K字节在线可编程(ISP)Flash程序存储器(擦除次数1万次),1K字节的片内SRAM数据存储器,可实现3级锁定的程序加密,512个字节片内在线可编程EEPROM数据存储器(寿命10万次),另外,ATMEGA16支持C语言系统。三个存储器空间互相独立,物理结构也不同。程序存储器为闪存存储器Flash,以16位(字)为一个存储单元,作为数据读取时,以字节为单位,而擦除、写入则是以页为单位的(不同型号AVR单片机一页的大小也不同)。SRAM数据存储器是以8位(字节)为一个存储单元,编址方式采用与工作寄存器组、I/O寄存器和SRAM统一寻址的方式。EEPROM数据存储器也是以8位(字节)为一个存储单元,对其的读写操作都以字节为单位。ATmeage16工作原理ATmeage16单片机具有32个通用I/O口,分为PA,PB,PC,PD,每组都是八位。这些I/O都是可以通过各自的端口寄存器设置为输入或置成输出,有些I/O口还具有第二功能。ATmega16单片机有三个定时/计数器:T/C0,T/C1,T/C2。其中T/C0,T/C2是两个八位的定时/计数器,而T/C1是16位的定时/计数器。ATmega16单片机有21个中断源,每一个中断源都有一个独立的中断向量作为中断服务程序的入口地址,而且所有的中断源都有自己的独立的使能位。DS1302构成的实时时钟模块DS1302实时时钟芯片介绍VCC1备用电源VCC2工作电源SCLK时钟信号I/O数据输入输出RST复位/片选信号X1、X2外接晶振引脚DS1302中常用的寄存器读寄存器写寄存器Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0范围81h80hCH10秒秒00-5983h82h10分分00-5985h84h12/24010时时1-12/1-23AM/PM87h86h0010日日1-3189h88h00010月月1-128Bh8Ah00000周1-78Dh8Ch10年年00-998Fh8EhWP0000000-LED数码管显示模块LED数码管是利用发光二极管的特性组合而成数字显示器件,通过控制相应的二极管的状态显示相应的数字。要使数码管正常显示就得有驱动电路驱动相应的段码,数码管的现实方式可分为静态显示和动态显示,静态显示方式只适合显示单个的数字,因此本设计应采用动态显示方式。动态显示用的很普遍,动态显示可以任意数码管随意显示想要显示的内容。动态显示需要不断的对数码管进行扫描。原理是开一个片选送一个字节显示,延时一些时间。然后关闭第一个片选,开启第二个片选,送另外的一个数据,延时,然后关闭低二个片选,送数值,延时……循环,那么就可以看到几个数码管显示出不同的数值了。LED数码管引脚介绍a~g代表7个笔段的驱动端dp为小数点,可以显示0到8的一系列数字对于共阳极LED数码管,将8只发光二极管的阳极短接偶作为公共阳极,其工作特点是:当笔段电极接低电平,公共阳极接高电平时,相应笔段可以发光。其中MAX7219是一种集成化的串行输入/输出共阴极显示驱动器,它连接微处理器与8位数字的7段数字LED显示,也可以连接条线图显示器或者64个独立的LED。其上包括一个片上的B型BCD编码器、多路扫描回路,段字驱动器,而且还有一个8*8的静态RAM用来存储每一个数据。MAX7219同样允许用户对每一个数据选择编码或者不编码。整个设备包含一个150μA的低功耗关闭模式,模拟和数字亮度控制,一个扫描限制寄存器允许用户显示1-8位数据,还有一个让所有LED发光的检测模式.按键设置模块单片机与键盘的连接方式可分为独立式,编码式,串口扩展式和矩阵式。其中较为常用的有独立式和矩阵式。本设计采用独立式按键,也就是每一个按键都与端口独立连接,每一个按键独立占一根输入线,一根输入线的工作状态不会影响其他按键。独立式按键通过检测电平的状态可以很容易判断出有没有按键被按下。独立式的电路配置灵活,软件算法简单。任意选择调节对象按钮,当按一下该按钮时,调整好之后可按下确定键将该时间信息存储到单片机中后继续运行计时,若不想进行调节则按取消键,就会回到当前系统的时间。按键功能K1~K5调整年月日时分,在按下K6键时确定调节值,时钟继续运行,K7为取消键则显示系统时间。当按下K1键时,实现对年的调整。年只能从此时显示的年上继续增加99,后从系统时间开始重新显示;当按下K2键时,实现对月的调整,月的调整从一月到十二月;当按下K3键时,实现对日的调整,日的调整根据是闰年还是平年时候,对二月调整有28天和29天,其他按1,3,5,7,8,10,12是31天调整,其他月份是30天;当按下K4键时,实现对时的调整,时的调整从0到59,当增加到60时,从0-开始继续增加显示。当按下K5键时,实现对分的调整,同小时的调整一样。当按下K6键时,实现对年月日时分的调整的显示,时钟则按此时重新设定的时间开始继续显示。6.系统软件设计总体框图按键控制ATMEGA16DS1302LED数码管显示主程序分析框图:初始化显示界面DS1302中读取LED数码管显示没有按键按下时间,日期设置模块键盘是否按下DS1302串行写入一个字节流从DS1302中串行读取一字节7.系统测试运行图8.总结经过几个月的毕业设计,完成了基于AVR的电子时钟的设计与实现,通过本次毕业设计,我发现了很多问题,也从中进步了许多,从不知到熟悉到最终产品的实现。对Proteus和AVRStudio+ICCAVR软件的使用更加熟练,同时体会到每个环节的设计和实现都不是一件简单的事。敬请各位老师批评指正谢谢观看!26
本文标题:基于AVR的可调电子钟的ppt
链接地址:https://www.777doc.com/doc-4047675 .html