秒节拍显示器系统.ppt_第1页
秒节拍显示器系统.ppt_第2页
秒节拍显示器系统.ppt_第3页
秒节拍显示器系统.ppt_第4页
秒节拍显示器系统.ppt_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

秒节拍显示 器系统的设计 马静芳 2011 5 ATmega16单片机的一些性能指标,特点及外部引脚 vAtmega16单片机介绍 ATmega16是基于增强的AVR RISC结构的低功耗8 位 CMOS微控制器。 片内ISP Flash 允许程序存储器通过ISP 串行接口, 通过将8 位RISC CPU 与系统内可编程的Flash 集成在一 个芯片内, ATmega16 成为一个功能强大的单片机,为 许多嵌入式控制应用提供了灵活而低成本的解决方案。 ATmega16 具有一整套的编程与系统开发工具,包括:C 语言 编译器、宏汇编、 程序调试器/ 软件仿真器、仿真器 及评估板。 v ATmega16产品特性 高性能、低功耗的8位AVR微处理器 (1)先进的RISC 结构 (2)131条指令 (3)大多数指令执行时间为单个时钟周期 (4)32个8位通用工作寄存器 (5)全静态工作 (6)工作于16MHz时性能高达16MIPS (7) 只需两个时钟周期的硬件乘法器 (8)非易失性程序和数据存储器 (9)6K 字节的系统片内可编程Flash,擦写寿命: 10,000 次 (10) 具有独立锁定位的可选Boot代码区,通过片上Boot 程序实现系统内编程,真正的同时读写操作 (11)512 字节的EEPROM数据存储器,擦写寿命: 100,000次 (12)1K字节的片内SRAM数据存储器 (13)可以对锁定位进行编程以实现用户程序的加密 (14)JTAG 接口( 与IEEE 1149.1 标准兼容) (15)符合JTAG 标准的边界扫描功能 (16)支持扩展的片内调试功能 (17)通过JTAG 接口实现对Flash、EEPROM、熔丝位和 锁定位的编程 v外设特点 两个具有独立预分频器和比较器功能的8位定时器/计数器 (1)一个具有预分频器、比较功能和捕捉功能的16位定时 器/计数器 (2)具有独立振荡器的实时计数器RTC (3)四通道PWM (4) 8路10位ADC,8个单端通道,2个具有可编程增益的 差分通道 (5)面向字节的两线接口 (6)两个可编程的串行USART (7)可工作于主机/ 从机模式的SPI 串行接口 (8)具有独立片内振荡器的可编程看门狗定时器 (9)片内模拟比较器 v特殊的处理器特点 (1)上电复位以及可编程的掉电检测 (2)片内经过标定的RC振荡器 (3)片内/片外中断源 (4)6种睡眠模式: 空闲模式、ADC 噪声抑制模式、省电 模式、掉电模式、Standby 模式以及扩展的Standby模 式 v I/O和封装 (1) 32个可编程的I/O口 (2)40引脚PDIP封装, 44引脚TQFP封装, 与44引脚 MLF封装工作电压: ATmega16:4.5 - 5.5V v速度等级 0-16MHz ATmega16 v ATmega16 引脚功能 VCC :电源正 GND :电源地 RESET 复位输入引脚。持续时间超过最小门限时间的 低电平将引起系统复位。持续时间小于门限间的脉冲不 能保证可靠复位。 XTAL1 :反向振荡放大器与片内时钟操作电路的输入端。 XTAL2 :反向振荡放大器的输出端。 AVCC:端口A与A/D转换器的电源。不使用ADC时,该引 脚应直接与VCC连接。使用ADC时应通过一个低通滤波 器与VCC 连接。 AREF: A/D 的模拟基准输入引脚。 vATmega16 I|O口介绍 ATmega16有4个8位的双向I|O端口PA、PB、PC、 PD,它们对外对应32个I|O引脚,每一位都可以独立地用 于逻辑信号的输入和输出。在5V工作电压下输出高电平时 ,每个引脚可输出20mA的驱动电流;而输出低电平时, 每个引脚可吸收最大为40mA的电流,可直接驱动发光二 极管LED和小型继电器。 AVR大部分的I|O端口都具备双重功能,可分别与片 内的各种不同功能的外围接口电路组合成一些可以完成特 殊功能的I|O口,如定时器、计数器、串行接口、模拟比 较器,捕捉器等 ATmega16 内核介绍 为了获得最高的性能以及并行性, AVR 采用了 Harvard 结构,具有独立的数据和程序总线。程序存储器 里的指令通过一级流水线运行。CPU 在执行一条指令的同 时读取下一条指令( 在本文称为预取)。这个概念实现了指 令的单时钟周期运行。程序存储器是可以在线编程FLASH 秒节拍显示器硬件设计 v 通过对智能仪器课程的学习我将设计一个简易的“秒节 拍显示器”。这个秒节拍显示器就是用单片机控制一个LED发 光二极管,让它亮1s,暗1s,不间断的闪烁。图1是它的电 路原理图。 v 秒节拍显示器的硬件电路使用一个AVR芯片和LED发光 二极管作为信号的显示。当ATmegal6的I/O引脚PC0口输出 为“0”时,LED导通发光;导通为“1”时LED截止熄灭。电阻 R3起保护限流作用,控制LED的导通电流。适当调整R3的 阻值,可以调节LED的亮度,并限制流过LED和PC0口的电 流,保护其不被大电流烧毁。 v从图中可以知道R1为引脚的上拉电阻,保证了该引脚可靠的 高电平。系统采用外接4MHz晶体和芯片内部的振荡电路组 成时钟电路,产生4MHz的脉冲作为系统的始终信号 电容C1和C2应与石英晶体配合,改变C1,C2的值可 以对4MHz的频率进行微调。R2与晶体并联,其作用是稳 定晶体的阻抗,提高 振荡电路的稳定性。 v图中的ISP编程下载口的2、3、4、5脚与芯片SPI接口的 MOSI(PB5)、MISO(PB6)、SCK(PB7)和引脚连接 。当需要改动AVR的熔丝位配置,或将编译好的运行代码 烧入AVR单片机的Flash ROM中时,就不需要将芯片从 PCB板上取下,只要将一根简单的编程线插在该编程下载 口上,利用PC机就可以方便地实现上面的操作。 v当PC机对AVR编程时需要先将SCK和引脚拉低,使AVR 芯片进入SPI编程状态,然后通过SPI口进行下载操作。因 此,在设计AVR系统硬件时,如果考虑使用SPI口实ISP 的功能,所以图中的电阻R1不可以省略。此时R1起到了 上拉隔离作用,正是有了R1才能使用户在外部对引脚施 加 低电平(0V)。当编程下载完成后,外部一旦释放掉,该 引脚通过R1又被拉成高电平,AVR就直接进入了正常运 行工作状态,R1的阻值 在之间,太大和太小都不合适。 秒节拍显示器软件设计思路 v下图为秒节拍显示器的系统软件流程图。从图中可以看出 秒节拍显示器的软件设计重点是一个1s延时子程序。系统 程序每隔1s(调用1s延时子程序)将PC0口的输出电平取 反,同时也控制LED的亮与暗。 系统初始化 执行秒延时程序 PC0口电平反向输出 秒节拍显示器的高级C语言源程序 v在这里给出一个通用软件延时的子程序,每调用一次该子 程序,其运行的时间为1s,每隔1s控制PC0口的输出逻辑 取反。这样LED就会亮1s,灭1s,实现了秒节拍的显示。 v下面是使用高级语言编写的秒节拍发生器的C语言源程序 。 在程序的初始化代码中仅仅对PORTC口进行了设置 ,而没有对AVR堆栈指针进行初始化设置,这是由于 CVAVR系统在编译时会首先帮助用户自动地设置堆栈指针 ,方便了用户的使用, 在C语言主程序中,由while(1) 构成无限死循环,循环中调用了延时函数delay-ms(), 延时1s后将PC0口的值取反输出,控制点亮和熄灭LED。 因此程序的运行效果是每隔1s后,控制PC口的第0位输出 “1”或“0”,使LED亮1s,暗1s,形成秒节拍显示指示。 Demo_5_2c Chip type ATmega16 Program type Application Clock frequency 4.000000MHz Memory model Small External SRAM size 0 Data Stack size 256 #include /包括器件配置定义的头文件, 不能缺少 #include /包括延时函数定义的头文件使用延 时函数时不能缺少 vo

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论