好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

avr单片机的优点.doc

10页
  • 卖家[上传人]:woxinch****an2018
  • 文档编号:38993346
  • 上传时间:2018-05-10
  • 文档格式:DOC
  • 文档大小:61.62KB
  • / 10 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • AVR 单片机是 1997 年由 ATMEL 公司研发出的增强型内置 Flash 的 RISC(Reduced Instruction Set CPU)精简指令集高速 8 位单片机AVR 的单片机可以广泛应用于计算机外部设备、工业实时控制、仪器仪表、通讯设备、家用电器等各个领域AVR 的主要特性高可靠性、作用强、高速度、低功耗和低价位,一直是衡量单片机性能的重要指标,也是单片机占领市场、赖以生存的必要条件 目录目录avr 单片机优点 AVR 单片机的 RTOS-AVRX 应用 AVR 单片机的应用区域 AVR 单片机入门系列--MEGA 端口操作 avr 单片机优点单片机优点 1:在相同的系统时钟下 AVR 运行速度最快;2: 芯片内部的 Flsah、EEPROM、SRAM 容量较大;3:所有型号的 Flash、EEPROM 都可以反复烧写、全部支持编程烧写(ISP);4:多种频率的内部 RC 振荡器、上电自动复位、看门狗、启动延时等作用,零外围电路也可以工作;5:每个 IO 口都可以以推换驱动的方式输出高、低电平,驱动能力强;6:内部资源丰富,一般都集成 AD、DA 模数器;PWM;SPI、USART、TWI、I2C 通信口;丰富的中断源等。

      目前支持 AVR 单片机编译器的语言主要有汇编语言、C 语言、BASIC 语言等其中 C 编译器主要有CodeVisionAVR、AVRGCC、IAR、ICCAVR 等,C 语言编译器由于它具有作用强大、 运用灵活、代码小、运行速度快等先天性的优点,使得它在专业程序设计上具有不可代替的地位AVR 单片机是 1997 年由 ATMEL 公司研发出的增强型内置 FLASH 的 RISC(Reduced Instruction Set CPU) 精简指令集高速 8 位单片机AVR 的单片机可以广泛应用于计算机外部设备、工业实时控制、仪器仪表、通讯设备、家用电器等各个领域AVR 的主要特性高可靠性、作用强、高速度、低功耗和低价位 , 一直是衡量单片机性能的重要指标,也是单片机占领市场、赖以生存的必要条件早期单片机主要由于工艺及设计水平不高、功耗高和抗干扰性能差等原因,所以采取稳妥方案:即采用较高的分频系数对时钟分频,使得指令周期长,执行速度慢以后的 CMOS 单片机虽然采用提高时钟频率和缩小分频系数等措施,但这种状态并未被彻底改观(51 以及 51 兼容)此间虽有某些精简指令集单片机(RISC)问世,但依然沿袭对时钟分频的作法。

      AVR 单片机的推出,彻底打破这种旧设计格局,废除了机器周期,抛弃复杂指令计算机(CISC)追求指令完备的做法;采用精简指令集,以字作为指令长度单位,将内容丰富的操作数和操作码安排在一字之中(指令集中占大多数的单周期指令都是如此),取指周期短,又可预取指令,实现流水作业,故可高速执行指令当然这种速度上的升跃,是以高可靠性为其后盾的AVR 单片机硬件结构采取 8 位机和 16 位机的折中策略,即采用局部寄存器存堆(32 个寄存器文件)和单体高速输入/输出的方案(即输入捕获寄存器、输出比较匹配寄存器及相应控制逻辑)提高了指令执行速度(1Mips/MHz),克服了瓶颈现象,增强了作用;同时又减少了对外设管理的开销,相对简化了硬件结构,降低了成本故 AVR 单片机在软/硬件开销、速度、性能和成本诸多方面取得了优化平衡,是高性价比的单片机AVR 单片机内嵌高质量的 Flash 程序存储器,擦写方便,支持 ISP 和 IAP,便于产品的调试、开发、生产、更新内嵌长寿命的 EEProm 可长期保存关键数据,避免断电丢失片内大容量的 RAM 不仅能满足一般场合的使用,同时也更有效的支持使用高级语言开发系统程序,并可像 MCS-51 单片机那样扩展外部 RAM。

      AVR 单片机的 I/O 线全部带可设置的上拉电阻、可单独设定为输入/输出、可设定(初始)高阻输入、驱动能力强(可省去功率驱动器件)等特性,使的得 I/O 口资源灵活、作用强大、可充分利用AVR 单片机片内具备多种独立的时钟分频器,分别供 URAT、I2C、SPI 使用其中和 8/16 位定时器配合的具有多达 10 位的预分频器,可通过软件设定分频系数提供多种档次的定时时间AVR 单片机独有的“以定时器/计数器(单)双向计数形成三角波,再和输出比较匹配寄存器配合,生成占空比可变、频率可变、相位可变方波的设计方法(即脉宽调制输出 PWM)”更是令人耳目一新增强性的高速同/异步串口,具有硬件产生校验码、硬件检测和校验侦错、两级接收缓冲、波特率自动调整定位(接收时)、屏蔽数据帧等作用,提高了通信的可靠性,方便程序编写,更便于组成分布式网络和实现多机通信系统的复杂应用,串口作用大大超过 MCS-51/96 单片机的串口,加之 AVR 单片机高速,中断服务时间短,故可实现高波特率通讯面向字节的高速硬件串行接口 TWI、SPITWI 和 I2C 接口兼容,具备 ACK 信号硬件发送和识别、地址识别、总线仲裁等作用,能实现主/从机的收/发全部 4 种组合的多机通信。

      SPI 支持主/从机等 4 种组合的多机通信AVR 单片机有自动上电复位电路、独立的看门狗电路、低电压检测电路 BOD,多个复位源(自动上下电复位、外部复位、看门狗复位、BOD 复位),可设置的启动后延时运行程序,增强了嵌入式系统的可靠性AVR 单片机具有多种省电休眠模式,且可宽电压运行(5-2.7V),抗干扰能力强,可降低一般 8 位机中的软件抗干扰设计工作量和硬件的使用量 AVR 单片机技术体现了单片机集多种器件(包括 FLASH程序存储器、看门狗、EEPROM、同/异步串行口、TWI、SPI、A/D 模数转换器、定时器/计数器等)和多种作用(增强可靠性的复位系统、降低功耗抗干扰的休眠模式、品种多门类全的中断系统、具输入捕获和比较匹配输出等多样化作用的定时器/计数器、具替换作用的 I/O 端口…… )于一身,充分体现了单片机技术的从“片自为战”向“片上系统 SoC”过渡的发展方向综上所述,AVR 单片机博采众长,又具独特技术,不愧为 8 位机中的佼佼者AVR 系列单片机的选型AVR 单片机系列齐全,可适用于各种不同场合的要求AVR 单片机有 3 个档次:低档 Tiny 系列 AVR 单片机: 主要有 Tiny11/12/13/15/26/28 等;中档 AT90S 系列 AVR 单片机: 主要有 AT90S1200/2313/8515/8535 等; (正在淘汰或转型到Mega 中)高档 ATmega 系列 AVR 单片机: 主要有 ATmega8/16/32/64/128( 存储容量为 8/16/32/64/128 KB)以及 ATmega8515/8535 等。

      AVR 单片机的单片机的 RTOS--AVRX 应用应用 随着技术的发展,嵌入式系统的设计及应用对人们的生活产生了很大的影响,并将逐渐改变人们未来的生活方式,在特定的操作系统上开发应用程序,可以使开发人员忽略掉很多底层硬件细节,使得应用程序调试更方便、易于维护、开发周期缩短并且降低开发成本,因而嵌入式操作系统深得开发人员的青睐AVR 微处理器是 Atmel 公司开发的 8 位嵌入式 RISC 处理器,它具有高性能、高保密性、低功耗、非易失性等优点,而且程序存储器和数据存储器可独立编址,并具有独立访问的哈佛结构AVR 单片机内核有丰富的指令集,通过 32 个通用寄存器直接和逻辑运算单元相连接,允许在一个周期内一条单一指令访问两个独立的寄存器,这样的结构使代码的执行效率比传统的复杂指令集微处理器快了将近 10 倍AVRX 是由 1barello 编写的源码公开的嵌入式操作系统,它专门针对 AVR 系列单片机的 RTOS,具有免费和可以修改的特点,它的缺点是由于做为一种专用的操作系统很难移植到其他平台上1 AVRX 系统的特点AVRX 做为 AVR 专用 RTOS 有如下的特点:◆ 完全支持占先式、优先级驱动的任务调度算法;◆ 16 个优先级,相同的优先级的任务采用 Round robin 调度算流执行;◆ 信号量可以用于信号传递、同步和互斥信号量,支持阻塞和非阻塞语法;◆ 任务之间可以用消息队列相互传递信息,接收和确认消息可以用阻塞和非阻塞调用;◆ 在中断子程序中,大部分非阻塞的中断服务程序可以使用;◆ 支持单个定时器的时间队列管理,任何进程都可以设置一个定时器,并且任何一个任务都可以等待定时器时间到;◆ 支持单步调式运行着的进程;◆ 程序空间小,包含所有作用的版本占用 1000 字节;◆ 和定时器/计算器有关的一些事务可以用 AVRX 写成任务级代码。

      1.1 任务AVRX2.6 为了支持 C 语言,保存了所有的 32 个寄存器,最小的上下文是 32 个寄存器、SREG 和PC,总共 35 个字节AvrXInitTask()函数给所有的寄存器初始化为 0x00;只有进程上下文保存在任务堆栈中,所有其他的使用(包括内核和中断)保存在内核堆栈这样降低了第一个中断的上下文切换和进入内核 API 的 SRAM 消耗随后的中断(如果允许中断嵌套)嵌入内核堆栈,API 不进行上下文切换1.2 信号量信号量是 SRAM 指针,它们有三中状态:PEND、WAITING 和 DONE当一个进程被一个信号量阻塞时,它处于 WAITING 状态,多个任务可以排队等候一个信号量在后一种情况下,信号量可以看作互斥信号量提供的 API 函数如下:AvrXSetSemaphore、AvrXIntSetSemaphore、AvrXWaitSemaphore、AvrXtestSemaphore、AvrXIntTestSemaphore 和 AvrXResetSemaphore1.3 定时器定时器控制块(TCB)长度为 4(或 6)个字节它们管理一个 16 位计数值定时器队列管理器管理一个分类的定时器队列,每个都调整为所有计数器的和到其延时需要的值。

      提供的 API 函数如下:AvrXStartTimer、AvrXTimerHandler、AvrXCancelTimer、AvrXWaitTimer、AvrXTestTimer 和 AvrXDelay1.4 消息队列消息队列用消息控制块(MCB)做为队列首地址任何进程、中断处理函数和多个进程都可以等待消息MCB 的长度是 2 或 4 个字节消息可以认为是灵活性更大的信号量提供的 API 函数如下:AvrXSendMessage、AvrXIntSendMessage、AvrXRecvMessage、AvrXWaitMessage、AvrXAckMessage、AvrXTestMessage 和 AvrXWaitMessageAck1.5 单步运行支持通过重新汇编内核 AVRX,可以允许和禁止单步运行的支持单步运行可以通过编译内核库时定义下面的变量:#define SIGNALSTEPSUPPORT在能够单步运行以前,进程必须先暂停有两种方法实现:一是仅仅初始化进程但不使能;二是用目标进程的 ID 调用 AvrXSuspend,一旦目标进程挂起,调试 SPI 就能使用了,提供的 API 函数有:AvrXStepNext 和 AvrXSingleStepNext。

      1.6 系统对象AVRX 是围绕系统对象的概念而构建的,系统对象包括一个链接和其后面的 0 个或者若干个字节的数据信号量进程对象可以根据运行队列和信号量排队计数器控制块只能根据计数器队列排队消息控制块只能在消息队列排队进程根据嵌入对象的信号量等待这些对象进程堆栈中可用的 SRAM 是限制系统规模的主要因素,每个进程都需要至少 10~35 字节的空间来存储进程上下文提供的 API 函数如下:AvrXSetObjectSamaphore、AvrXIntObjectSamaphore、AvrXResetObje。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.