请输入您要查询的百科知识:

 

词条 AVR单片机
释义

单片机又称单片微控制器,它是把一个计算机系统集成到一个芯片上,概括的讲:一块芯片就成了一台计算机。单片机技术是计算机技术的一个分支,是简易机器人的核心元件。1997年,由ATMEL公司挪威设计中心的A先生与V先生利用ATMEL公司的Flash新技术, 共同研发出RISC精简指令集的高速8位单片机,简称AVR。相对于出现较早也较为成熟的51系列单片机,AVR系列单片机片内资源更为丰富,接口也更为强大,同时由于其价格低等优势,在很多场合可以替代51系列单片机。

AVR单片机的优势特征

单片机已广泛地应用于军事、工业、家用电器、智能玩具、便携式智能仪表和机器人制作等领域,使产品功能、精度和质量大幅度提升,且电路简单,故障率低,可靠性高,成本低廉。单片机种类很多,在简易机器人制作和创新中,为什么选用AVR单片机呢?

一、简便易学,费用低廉

首先,对于非专业人员来说,选择AVR单片机的最主要原因,是进入AVR单片机开发的门槛非常低,只要会操作电脑就可以学习AVR单片机的开发。单片机初学者只需一条ISP下载线,把编辑、调试通过的软件程序直接在线写入AVR单片机,即可以开发AVR单片机系列中的各种封装的器件。AVR单片机因此在业界号称“一线打天下”。

其次,AVR单片机便于升级。AVR程序写入是直接在电路板上进行程序修改、烧录等操作,这样便于产品升级。

再次,AVR单片机费用低廉。学习AVR单片机可使用ISP在线下载编程方式(即把PC机上编译好的程序写到单片机的程序存储器中),不需购买仿真器、编程器、擦抹器和芯片适配器等,即可进行所有AVR单片机的开发应用,这可节省很多开发费用。程序存储器擦写可达10000次以上,不会产生报废品。

二、高速、低耗、保密

首先,AVR单片机是高速嵌入式单片机:

1、AVR单片机具有预取指令功能,即在执行一条指令时,预先把下一条指令取进来,使得指令可以在一个时钟周期内执行。

2、多累加器型,数据处理速度快。AVR单片机具有32个通用工作寄存器,相当于有32条立交桥,可以快速通行。

3、中断响应速度快。AVR单片机有多个固定中断向量入口地址,可快速响应中断。

其次,AVR单片机耗能低。对于典型功耗情况,WDT关闭时为100nA,更适用于电池供电的应用设备。有的器件最低1.8 V即可工作。

再次,AVR单片机保密性能好。它具有不可破解的位加密锁Lock Bit技术,保密位单元深藏于芯片内部,无法用电子显微镜看到。

三、I/O口功能强,具有A/D转换等电路

1. AVR单片机的I/O口是真正的I/O口,能正确反映I/O口输入/输出的真实情况。工业级产品,具有大电流(灌电流)10~40 mA,可直接驱动可控硅SCR或继电器,节省了外围驱动器件。

2. AVR单片机内带模拟比较器,I/O口可用作A/D转换,可组成廉价的A/D转换器。ATmega48/8/16等器件具有8路10位A/D。

3. 部分AVR单片机可组成零外设元件单片机系统,使该类单片机无外加元器件即可工作,简单方便,成本又低。

4. AVR单片机可重设启动复位,以提高单片机工作的可靠性。有看门狗定时器实行安全保护,可防止程序走乱(飞),提高了产品的抗干扰能力。

四、有功能强大的定时器/计数器及通讯接口

定时/计数器T/C有8位和16位,可用作比较器。计数器外部中断和PWM(也可用作D/A)用于控制输出,某些型号的AVR单片机有3~4个PWM,是作电机无级调速的理想器件。

AVR单片机有串行异步通讯UART接口,不占用定时器和SPI同步传输功能,因其具有高速特性,故可以工作在一般标准整数频率下,而波特率可达576K。

五、片内EEPROM

EEPROM 数据存储器。它是作为一个独立的数据空间而存在

的,可以按字节读写。EEPROM 的寿命至少为100,000 次擦除周期。EEPROM 的访问

由地址寄存器、数据寄存器和控制寄存器决定。

通过SPI和JTAG及并行电缆下载EEPROM数据的操作。

AVR单片机的型号标识解析

1. 型号紧跟的字母,表示电压工作范围。带“V”:1.8-5.5V;若缺省,不带“V”:2.7-5.5V。

例:ATmega48-20AU,不带“V”表示工作电压为2.7-5.5V。

2. 后缀的数字部分,表示支持的最高系统时钟。

例:ATmega48-20AU,“20”表示可支持最高为20MHZ的系统时钟。

3. 后缀第一(第二)个字母,表示封装。“P”:DIP封装,“A”:TQFP封装,“M”:MLF封装。

例:ATmega48-20AU,“A”表示TQFP封装。

4. 后缀最后一个字母,表示应用级别。“C”:商业级,“I”:工业级(有铅)、“U”工业级(无铅)。

例:ATmega48-20AU,“U”表示无铅工业级。ATmega48-20AI,“I”表示有铅工业级。

AVR 8-Bit MCU的最大特点

与其它8-Bit MCU相比,AVR 8-Bit MCU最大的特点是:

· 哈佛结构,具备1MIPS / MHz的高速运行处理能力;

· 超功能精简指令集(RISC),具有32个通用工作寄存器,克服了如8051 MCU采用单一ACC进行处理造成的瓶颈现象;

· 快速的存取寄存器组、单周期指令系统,大大优化了目标代码的大小、执行效率,部分型号FLASH非常大,特别适用于使用高级语言进行开发;

· 作输出时与PIC的HI/LOW相同,可输出40mA(单一输出),作输入时可设置为三态高阻抗输入或带上拉电阻输入,具备10mA-20mA灌电流的能力;

· 片内集成多种频率的RC振荡器、上电自动复位、看门狗、启动延时等功能,外围电路更加简单,系统更加稳定可靠;

· 大部分AVR片上资源丰富:带E2PROM,PWM,RTC,SPI,UART,TWI,ISP,AD,Analog Comparator,WDT等;

· 大部分AVR除了有ISP功能外,还有IAP功能,方便升级或销毁应用程序。

基于AVR单片机的USB接口设计

USB接口以其数据传输快、连接简单、易于扩展、支持热插拔等特点已成为外设与PC通信的主要方式之一。随着嵌入式系统的发展,嵌入式微处理器需增加通用的USB接口,以便实现与PC等USB主机系统的通信。针对这样的需求,这里采用PHILIPS公司的USB接口器件PDIUSBD12和Atmel公司的AVR系列单片机ATmega8设计一种通用的USB接口模块。该模块可方便为各种嵌入式微处理器增加USB接口,从而实现与USB主机系统的高速通信。

系统硬件设计

该系统模块的控制核心是AVR高速单片机ATmega8。AVR单片机是新一代基于哈佛结构的高速RISC微控制器,具有速度快、价格低、可靠性高,I/O口线驱动能力强和片内集成外设资源丰富等特点,其内部集成有可进行ISP下载编程的Flash,EEPROM、熔丝位和锁定位。AVR单片机的ISP下载电缆制作简单、成本低廉,还有免费的下载软件(例如PonyProg)支持。PDIUSBD12是一款高性价比USB接口器件,完全符合USB1.l规范,易于与各种微处理器接口。

系统模块AVR单片机与PDIUSBD12的电路连接如图1所示。

由图1看出,由于AVR单片机具有高速性,可利用I/O端口线以软件方式模拟PDIUSBD12的时序,对其读写。这种方式可根据不同的微处理器速度灵活控制PDIUSBD12的时序和地址,无需译码电路,从而简化硬件设计,降低成本。

由于ATmega8片内集成了UART,SPI,I2C等接口,该接口模块可利用这些接口与其他系统通信,使得该接口模块成为通用的接口转换器。其系统硬件结构框图如图2所示。

USB固件程序设计

本系统模块的USB固件程序采用符合ANSI C标准的GCC编译器设计,结合分层次的模块化结构,可移植性强,只需稍微修改硬件接口层即可将其移植到别的硬件平台,可重复利用代码。USB固件程序设计是基于状态机和标准的前后台式程序架构。整个同件程序的模块化层次结构如图3所示。首先编写硬件接口层hal.c和PDIUSBD12器件的命令接口层,以供上层模块调用。硬件接口层含有对PDIUSBD12写指令和读写数据的函数,以供上层模块调用。当CPU不同时,只需修改这些函数即可。由于CPU访问PDIUS-BD12与普通存储器一样,只需根据硬件连接关系,在硬件抽象层中编写对PDIUSBD12写指令、写读数据的函数,供上层调用即可。实现PDIUSBD12的命令接口层需调用硬件抽象层函数,供上层模块调用。再设计前后台程序及标准设备请求程序模块。

AVR单片机的应用区域

目前,AVR已被广泛用于:

· 空调控制板

· 打印机控制板

· 智能电表

· 智能手电筒

· LED控制屏

· 医疗设备

· GPS

从市场角度看AVR单片机

· 性价比:AVR大部分型号的性价比较高,性价比表现突出的型号有:atmega48、atmega8、atmega16、atmega169P

· 供货方面:通用型号的AVR供货较为稳定,非常规型号的AVR样品及供货仍存在问题。

· 市场占有率:目前,AVR的市场占有率还是不如PIC与51,但,AVR的优点使得AVR的市场占有一直在扩展,AVR的年用量也一直在上涨。

开发AVR单片机需要的编译器

软件名称 类型 简介 官方网址

AVR Studio IDE、汇编编译器 ATMEL AVR Studio集成开发环境(IDE),可使用汇编语言进行开发(使用其它语言需第三方软件协助),集软硬件仿真、调试、下载编程于一体。ATMEL官方及市面上通用的AVR开发工具都支持AVRStudio。 www.atmel.com

GCCAVR
(WinAVR) C编译器 GCC的编译器优化程度可以说是目前世界上民用软件中做的最好的,另外,它有一个非常大优点是,免费!在国外,使用它的人几乎是最多的。但,相对而言,它的缺点是,使用操作较为麻烦。 sourceforge.net

ICC AVR C编译器
(集烧写程序功能) 市面上(大陆)的教科书使用它作为例程的较多,集成代码生成向导,虽然它的各方面性能均不是特别突出,但使用较为方便。虽然ICCAVR软件不是免费的,但,它有Demo版本,在45天内是完全版。 www.imagecraft.com

CodeVision AVR C编译器
(集烧写程序功能) 与KeilC51的代码风格最为相似,集成较多常用外围器件的操作函数,集成代码生成向导,有软件模块,不是免费软件,Demo版为限2KB版。 www.hpinfotech.ro

ATman AVR C编译器 支持多个模块调试(AVRStudio不支持多个模块调试)。 www.atmanecl.com

IAR AVR C编译器 IAR实际上在国外比较多人使用,但它的价格较为昂贵,所以,中国大陆内,使用它的开发人员较少,只有习惯用IAR的工程师才会去使用它。 www.iar.com

Devices Flash Kbytes EEPROM Kbytes SRAM Bytes I/O F.max (MHz) Vcc
(V) pico
Power 16bit Timers 8bit Timers PWM channels RTC SPI UART TWI ISP 10-bit A/D (channels) Analog Com
parator WDT Hardware Multiplier Ext Int
-errupts Self Program Memory

ATtiny13 ATtiny13V 1 0.064 64B
32reg 6 20 1.8-5.5 - -- 1 2 - - - - √ 4 √ √ No 6 √

ATtiny24 ATtiny24V 2 0.128 128 12 20 1.8-5.5 - 1 1 4 - USI - USI √ 8 √ √ -- 12 √

ATtiny44 ATtiny44V 4 0.256 256 12 20 1.8-5.5 - 1 1 4 - USI - USI √ 8 √ √ -- 12 √

ATtiny84 ATtiny84V 8 0.512 512 12 20 1.8-5.5 - 1 1 4 - USI - USI √ 8 √ √ -- 12 √

ATtiny26 ATtiny26L 2 0.125 128 16 16 2.7-5.5 - -- 2 2 - USI - USI √ 11 √ √ -- 1 --

ATtiny2313 ATtiny2313V 2 0.128 128 18 20 1.8-5.5 - 1 1 4 - USI 1 USI √ -- √ √ -- 2 √

ATmega48 ATmega48V 4 0.256 512 23 20 1.8-5.5 - 1 2 6 √ 1+USART 1 √ √ 8/6(DIP) √ √ √ 26 √

ATmega88 ATmega88V 8 0.5 1024 23 20 1.8-5.5 - 1 2 6 √ 1+USART 1 √ √ 8/6(DIP) √ √ √ 26 √

ATmega168 ATmega168V 16 0.5 1024 23 20 1.8-5.5 - 1 2 6 √ 1+USART 1 √ √ 8/6(DIP) √ √ √ 26 √

ATmega8 ATmega8L 8 0.5 1024 23 16 2.7-5.5 - 1 2 3 √ 1 1 √ √ 8/6(DIP) √ √ √ 2 √

ATmega16 ATmega16L 16 0.5 1024 32 16 2.7-5.5 - 1 2 4 √ 1 1 √ √ 8 √ √ √ 3 √

ATmega32 ATmega32L 32 1 2048 32 16 2.7-5.5 - 1 2 4 √ 1 1 √ √ 8 √ √ √ 3 √

ATmega64 ATmega64L 64 2 4096 53 16 2.7-5.5 - 2 2 8 √ 1 2 √ √ 8 √ √ √ 8 √

ATmega128 ATmega128L 128 4 4096 53 16 2.7-5.5 - 2 2 8 √ 1 2 √ √ 8 √ √ √ 8 √

ATmega1280 ATmega1280V 128 4 8192 86 16 1.8-5.5 - 4 2 16 √ 1+USART 4 √ √ 16 √ √ √ 32 √

ATmega162 ATmega162V 16 0.5 1024 35 16 1.8-5.5 - 2 2 6 √ 1 2 -- √ - √ √ √ 3 √

ATmega169 ATmega169V 16 0.5 1024 53 16 1.8-5.5 - 1 2 4 √ 1+USI 1 USI √ 8 √ √ √ 17 √

ATmega169P ATmega169PV 16 0.5 1024 54 16 1.8-5.5 √ 1 2 4 √ 1+USI 1 USI √ 8 √ √ √ 17 √

ATmega8515 ATmega8515L 8 0.5 512 35 16 2.7-5.5 - 1 1 3 - 1 1 - √ - - √ √ 3 √

ATmega8535 ATmega8535L 8 0.5 512 32 16 2.7-5.5 - 1 2 4 - 1 1 √ √ 8 √ √ √ 3 √

ATmega48P ATmega48PV 4 0.256 512 23 20 1.8-5.5 √ 1 2 6 √ 1+USART 1 √ √ 8/6(DIP) √ √ √ 26 √

ATmega88P ATmega88PV 8 0.5 1024 23 20 1.8-5.5 √ 1 2 6 √ 1+USART 1 √ √ 8/6(DIP) √ √ √ 26 √

ATmega168P ATmega168PV 16 0.5 1024 23 20 1.8-5.5 √ 1 2 6 √ 1+USART 1 √ √ 8/6(DIP) √ √ √ 26 √

ATmega164P ATmega164PV 16 0.5 1024 32 20 1.8-5.5 √ 1 2 6 √ 1+USART 2 √ √ 8 √ √ √ 32 √

ATmega324P ATmega324PV 32 1 2048 32 20 1.8-5.5 √ 1 2 6 √ 1+USART 2 √ √ 8 √ √ √ 32 √

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2024/12/23 18:58:37