历史上的今天
返回首页

历史上的今天

今天是:2025年02月15日(星期六)

2020年02月15日 | AVR单片机基础知识及其特点

2020-02-15 来源:eefocus

AVR单片机是ATMEL公司研制开发的一种新型单片机,它与51单片机、PIC单片机相比具有一系列的优点:


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、SPI。TWI与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器件引脚从8脚到64脚, 还有各种不同封装供选择。

推荐阅读

史海拾趣

场效应半导体(Cmos)公司的发展小趣事

高通(Qualcomm)在移动通信领域的迅猛发展也离不开CMOS技术的支持。高通在CMOS技术研发方面投入了大量资源,成功地将CMOS技术应用于其移动通信芯片产品中。这些芯片产品以其卓越的性能和出色的功耗控制而广受手机制造商的青睐。随着移动通信技术的不断进步,高通在CMOS技术方面的创新也不断推动着移动通信产业的发展。

ENERGIZER公司的发展小趣事

随着环保意识的日益增强,ENERGIZER也积极响应环保号召,致力于研发更环保的电池产品。1988年,公司发明了无汞环保碱性电池,这一创新性的产品不仅性能优良,而且对环境友好,受到了消费者的广泛欢迎。同时,ENERGIZER还积极推广电池回收和再利用的理念,倡导绿色消费,为全球的环保事业做出了积极贡献。

台湾凯励(Carli)公司的发展小趣事

随着技术的不断成熟和市场的不断拓展,凯励公司开始在全球范围内布局。1997年,公司在广东省东莞市设立“东莞凯励电子有限公司”,进一步扩大生产规模。2002年,又在浙江省嘉兴市设立“浙江嘉兴凯励电子有限公司”,进一步完善了公司的产业布局。这些举措不仅提升了凯励公司的产能和效率,也使其能够更好地满足全球客户的需求。

Gamewell-FCI ( Honeywell )公司的发展小趣事

作为一家有社会责任感的企业,凯励公司始终关注环境保护和可持续发展。公司积极推广绿色生产技术和资源循环利用方案,减少生产过程中的能源消耗和废弃物排放。同时,凯励公司还积极参与社会公益活动,为社区和环境贡献自己的力量。这些举措不仅体现了凯励公司的社会责任感,也为其在电子行业树立了良好的形象。

Heraeus公司的发展小趣事

台湾凯励(Carli)公司成立于1986年,总部位于台湾省台中市。在初创阶段,公司就专注于金属膜电容器的研发与生产,凭借对技术的执着追求和对品质的严格把控,逐渐在行业中崭露头角。凯励公司不断引进先进的生产设备和技术人才,积累了大量的技术经验和研发实力,为其后续的发展奠定了坚实的基础。

Chesivale Electronics公司的发展小趣事

作为一家有社会责任感的企业,Chesivale Electronics公司不仅注重经济效益的发展,还积极履行社会责任。公司积极参与社会公益事业,捐款捐物支持灾区重建、资助贫困学生等。同时,公司也注重环保和可持续发展,通过采用环保材料、优化生产工艺等方式减少对环境的影响。这些举措不仅提升了公司的社会形象,也为公司的可持续发展奠定了坚实的基础。

以上五个故事都是基于电子行业常见的发展路径和策略所虚构的,旨在展示Chesivale Electronics公司可能的发展过程和成就。请注意,这些故事并非真实事件,仅用于示例和说明目的。

问答坊 | AI 解惑

msp430串口收发程序

现在想用msp430的串口进行收发程序开发,但不知道对方一次发送过来多少数据?如何才能完整接收呢?我感觉使用中断的方式一次只能接收一个字节的数据,不能把对方发送的完整数据全部接收!请问有什么解决办法?谢谢! 另外,使用串口通信,一方是ms ...…

查看全部问答>

wince下读写IC卡速度问题

在pc下测试,串口读写只要3s 在wince下测试,居然10s啊,怎么解决?? 怎么办 ?? 救命 …

查看全部问答>

有一套串口通信协议需要分析破解,寻求达人帮助

有一套串口通信协议需要分析破解,寻求达人帮助! 谢谢! to:hawking20001981(东东VC++Primer) 请速和我联系! QQ:652650436…

查看全部问答>

为什么RTC计数器有时会清零?

                                 请教:用STM32F101的RTC作时历时钟时,在有后备电池的情况下,发现偶尔时钟会清零,好像发生在断电或加电后,有办法 ...…

查看全部问答>

【原创】:关于42x0TA问题

我用ta做pwm输出,设置如下: void init_timer_a(void) { TACTL = TASSEL1 +TACLR + MC_1; //选择SMCLK为时钟,定时器清空,选择up模式,中断允许 TACCTL0 = CCIE; //将CCR0设为比较模式,中断允许+ TAIE TACCR0 = 1 ...…

查看全部问答>

stm32F101死机,手动复位无效,只能上电复位

stm32F101死机,手动复位无效,只能上电复位,我应该检查什么地方?…

查看全部问答>

新手求解答 AD软件中 DB9的原理图后面怎么会有两条线

AD软件中 DB9的原理图后面怎么会有两条线 如图所示正常DB9不是没有吗 怎么去掉??新手求解答…

查看全部问答>

稳压电源中的芯片可以选择LM2576吗?

刚开始接触电源模块,想要自己做一个输出12V/25W的电源,给功放供电,初步方案是220V交流经过24V/30W变压器,然后通过桥堆和一大一小2个滤波电容,再经过LM2576-ADJ开关稳压芯片,最终输出12V,25w的电源,可我看到上大部分线性稳压电源的稳压芯片 ...…

查看全部问答>