risc 优先选取使用频率最高的简单指令,避免复杂指令:并固定指令宽度,减少指令格式和寻址方式的种类,从而缩短指令周期,提高运行速度。由于 avr 采用了 risc 的这种结构,使avr系列单片机都具备了1mips/mhz(百万条指令每秒/兆赫兹)的高速处理能力。
早期单片机主要由于工艺及设计水平不高、功耗高和抗干扰性能差等原因,所以采取稳妥方案:即采用较高的分频系数对时钟分频,使得指令周期长,执行速度慢。以后的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位机中的软件抗干扰设计工作量和硬件的使用量。
性能特点
与其它8-bit mcu相比,avr 8-bit mcu最大的特点是;
1.哈佛结构,具备1mips / mhz的高速运行处理能力;
2.超功能精简指令集(risc),具有32个通用工作寄存器,克服了如8051 mcu采用单一acc进行处理造成的瓶颈现象;
3.快速的存取寄存器组、单周期指令系统,大大优化了目标代码的大小、执行效率,部分型号flash非常大,特别适用于使用高级语言进行开发;
4.作输出时与pic的hi/low相同,可输出40ma(单一输出),作输入时可设置为三态高阻抗输入或带上拉电阻输入,具备10ma-20ma灌电流的能力;
5.片内集成多种频率的rc振荡器、上电自动复位、看门狗、启动延时等功能,外围电路更加简单,系统更加稳定可靠;
6.大部分avr片上资源丰富:带e2prom,pwm,rtc,spi,uart,twi,isp,ad,analog comparator,wdt等;
7.大部分avr除了有isp功能外,还有iap功能,方便升级或销毁应用程序。
avr单片机重要特性
转st和avr时都没有系统的看过相关文档,都是根据项目,拿到datasheet,备好工具就开始了,看得最多的就是feature和pins,所以经常在一些细节上疏忽了。在经历过惨痛的教训后,总结出来一些。。。。
1. 通过isp给tiny25下载程序时发现内置的eeprom的数据全部被清掉,重置为0xff了。经过多次实践,可以这样说:给avr单片机下载程序时,内部eeprom的数据全部会被重置,所以,如果想往eeprom烧些初始化值的话,最好的方式是定义个.eeprom段,在烧完flash程序后再将生成的eep文件烧到eeprom中去,修改fuse和lockbits是不影响eeprom数据的。
2. tiny5的a/d引脚如果悬浮,那么该a/d引脚的ad电压就会受到其他引脚电压的影响。所以,在使用a/d模块时,确保每个a/d引脚都不是悬浮状态,不用的引脚可以上拉或者下拉,这一原则不仅对a/d引脚,对其他数字引脚也应该如此处理,不留悬浮引脚,减少隐患,减少emi。
3. 打开avr单片机的lockbits后,再读flash程序和eeprom数据都会是ff,但可以重新给flash下载程序,下载程序后,lockbits自动清掉,默认是关闭的。
美发店中的智能镜子,为美发行业带来了福音
如何判断UPS电池的好坏
智能电表上的小灯亮怎么回事?
新版小米10已获得入网许可证
电线短路的常见原因
avr单片机功能特性介绍
AI加持下的虚拟偶像已是未来热门
HLS导出的.xo文件如何导入到Vitis里面
ATM柜员机正式启动建行重庆两江5G+智能银行的应用场景
新机realme GT会很难抢?
浅谈中国车用LED市场及行业状况
数据流技术其实起源于模拟音频记录技术
电瓶修复—电池组受影响的使用寿命3
摄像机中的大哥!两个镜头+32倍变焦的4K摄像机
三星电子已决定将其LCD业务的计划推迟到2021年3月
Verizon发布4G LTE无线宽带路由方案
联想小新Air14 2020款内存性能测试 频率达到Ice Lake平台支持的最高速度
韩国SK电信利用其5G网络超低延迟直播庆祝活动
可穿戴设备现状:颜值与显示面积的智能手表占据绝大部分市场
微雪电子AIO-3128C主板PWM使用介绍