avr单片机和51的区别
1个回答
展开全部
①AVR单片机(ATmega16)的时钟源(晶振、内部RC
等)可以不经过分频直接提供给CPU使用,而51的CPU主频等于晶振的12分频,ATmega16外部提供16M的晶振,所以AVR单片机的运行速度比51单片机的运行速度要快得多,并且AVR单片机可提供内容1M、2M、4M、8M等可变的CUP频率。
②AVR具有超功能精简指令。具有32个通用工作寄存器(相当于8051中的32个累加器,克服了单一累加器数据处理造成的瓶颈现象),有128B~4KB个SRAM,可灵活使用指令运算。
③AVRI/O口是真正的双向I/O口,单片机读取外部引脚电平直接通过PINX读取,不需要像51那样先给I/O口全写1操作后才能读取外部引脚电平,使得单片机读取外部数据更容易。
④AVR内部提供丰富的中断及寄存器资源,光外部中断就有3个,定时器有3个,丰富的寄存器资源使得可以设置外部中断的多种触发方式,以及设置内部定时分频系数,丰富的寄存器资源使得可以对AVR的I/O口进行多功能操作
⑤两者的CPU构架以及指令集完全不同,51系列单片机所使用的是CISC指令系统,冯诺依曼结构体系的总线;而AVR系列的单片机则使用的是RISC指令系统,哈佛结构的总线,AVR系列的单片机每个震荡周期处理一条指令,而相应的,51系列的单片机则需要12个震荡周期来完成一条指令的处理。
⑥针对51系列单片机的I/O脚所体现出来的弊端,AVR单片机做了相应的改进,即加入了控制输入或输出的方向寄存器,从而解决了51系列单片机I/O脚位高电平时同为输入和输出的状态。
等)可以不经过分频直接提供给CPU使用,而51的CPU主频等于晶振的12分频,ATmega16外部提供16M的晶振,所以AVR单片机的运行速度比51单片机的运行速度要快得多,并且AVR单片机可提供内容1M、2M、4M、8M等可变的CUP频率。
②AVR具有超功能精简指令。具有32个通用工作寄存器(相当于8051中的32个累加器,克服了单一累加器数据处理造成的瓶颈现象),有128B~4KB个SRAM,可灵活使用指令运算。
③AVRI/O口是真正的双向I/O口,单片机读取外部引脚电平直接通过PINX读取,不需要像51那样先给I/O口全写1操作后才能读取外部引脚电平,使得单片机读取外部数据更容易。
④AVR内部提供丰富的中断及寄存器资源,光外部中断就有3个,定时器有3个,丰富的寄存器资源使得可以设置外部中断的多种触发方式,以及设置内部定时分频系数,丰富的寄存器资源使得可以对AVR的I/O口进行多功能操作
⑤两者的CPU构架以及指令集完全不同,51系列单片机所使用的是CISC指令系统,冯诺依曼结构体系的总线;而AVR系列的单片机则使用的是RISC指令系统,哈佛结构的总线,AVR系列的单片机每个震荡周期处理一条指令,而相应的,51系列的单片机则需要12个震荡周期来完成一条指令的处理。
⑥针对51系列单片机的I/O脚所体现出来的弊端,AVR单片机做了相应的改进,即加入了控制输入或输出的方向寄存器,从而解决了51系列单片机I/O脚位高电平时同为输入和输出的状态。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询