码迷,mamicode.com
首页 > 其他好文 > 详细

AVR单片机入门

时间:2016-04-10 12:38:21      阅读:265      评论:0      收藏:0      [点我收藏+]

标签:

ATMEL公司有基于8051内核、基于AVR内核和基于ARM内核的三大系列单片机产品。

先进的EEPROM电可擦除和Flash ROM闪速存储器技术。

8051单片机采用复杂指令系统:CISC;由于CISC结构存在指令系统不等长,指令数多,CPU利用效率低,执行速度慢等缺陷;AVR单片机采用精简指令系统:RISC;RISC采用流水线操作(Pipelining),和等长指令体系结构。

AVR单片机吸取了PIC及8051等单片机的优点,改进:

1、程序存储器为价格低廉、可擦写1万次以上、指令长度单元为16位(字)的FlashROM(即程序存储器宽度为16位,按8位字节计算时应乘2)。而数据存贮器为8位。因此AVR还是属于8位单片机。

2、采用CMOS技术和RISC架构,实现高速(50ns)、低功耗(μA)、具有SLEEP(休眠)功能。AVR的一条指令执行速度可达50ns(20MHz),而耗电则在1uA~2.5mA间。AVR采用Harvard结构,以及一级流水线的预取指令功能,即对程序的读取和数据的操作使用不同的数据总线,因此,当执行某一指令时,下一指令被预先从程序存储器中取出,这使得指令可以在每一个时钟周期内被执行。

3、工业级产品。具有大电流10~20mA(输出电流)或40mA(吸电流)的特点,可直接驱动LED、SSR或继电器。有看门狗定时器(WDT)安全保护,可防止程序走飞,提高产品的抗干扰能力。

4、通用数字I/O口的输入输出特性与PIC的HI/LOW输出及三态高阻抗HI-Z输入类同,同时可设定类同与8051结构内部有上拉电阻的输入端功能,便于作为各种应用特性所需(多功能I/O口),AVR的I/O口是真正的I/O口,能正确反映I/O口的输入/输出的真实情况。

5、像8051一样,有多个固定中断向量入口地址,可快速响应中断,而不是像PIC一样所有中断都在同一向量地址,需要以程序判别后才可响应,这会浪费且失去控制时机的最隹机会。

单片机结构:

 技术分享

AVR单片机特点(ATmega16):

1、131条机器指令,且大多数指令的执行时间为单个系统时钟周期;

2、32个8位通用工作寄存器;

3、工作在16MHz时具有16MIPS的性能;

4、配备只需要2个时钟周期的硬件乘法器。

IO口:

四个端口的第一功能是通用的双向数字输入/输出(I/O)口,其中每一位都可以由指令设置为独立的输入口,或输出口。当I/O设置为输入时,引脚内部还配置有上拉电阻,这个内部的上拉电阻可通过编程设置为上拉有效或上拉无效。
如果AVR的I/O口设置为输出方式工作,当其输出高电平时,能够输出20mA的电流,而当其输出低电平时,可以吸收40mA的电流。因此AVR的I/O口驱动能力非常强,能够直接驱动LED发光二极管、数码管等。而早期单片机I/O口的驱动能力只有5mA,驱动LED时,还需要增加外部的驱动电路和器件。
芯片Reset复位后,所有I/O口的缺省状态为输入方式,上拉电阻无效,即I/O为输入高阻的三态状态。

系统时钟:

ATmega16的片内含有4种频率(1/2/4/8M)的RC振荡源,可直接作为系统的工作时钟使用。同时片内还设有一个由反向放大器所构成的OSC(Oscillator)振荡电路,外围引脚XTAL1和XTAL2分别为OSC振荡电路的输入端和输出端,用于外接石英晶体等,构成高精度的或其它标称频率的系统时钟系统。

为ATmega16提供系统时钟源时,有三种主要的选择:(1)直接使用片内的1/2/4/8M的RC振荡源;(2)在引脚XTAL1和XTAL2上外接由石英晶体和电容组成的谐振回路,配合片内的OSC(Oscillator)振荡电路构成的振荡源;(3)直接使用外部的时钟源输出的脉冲信号。方式2和方式3的电路连接见图2-6(a)和2-6(b)。

技术分享

技术分享

内部看门狗:

在AVR片内还集成了一个1MHz独立的时钟电路,它仅供片内的看门狗定时器(WDT)使用。因此,AVR片内的WDT是独立硬件形式的看门狗,使用AVR可以省掉外部的WDT芯片。使用WDT可以有效的提高系统的可靠行。

 

AVR单片机入门

标签:

原文地址:http://www.cnblogs.com/L-liwen/p/5373728.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!