ATmega128中文手册

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

产品特点•高性能、低功耗的AVR®8位微处理器•先进的RISC结构–133条指令–大多数可以在一个时钟周期内完成–32x8通用工作寄存器+外设控制寄存器–全静态工作–工作于16MHz时性能高达16MIPS–只需两个时钟周期的硬件乘法器•非易失性的程序和数据存储器–128K字节的系统内可编程Flash寿命:10,000次写/擦除周期–具有独立锁定位、可选择的启动代码区通过片内的启动程序实现系统内编程真正的读-修改-写操作–4K字节的EEPROM寿命:100,000次写/擦除周期–4K字节的内部SRAM–多达64K字节的优化的外部存储器空间–可以对锁定位进行编程以实现软件加密–可以通过SPI实现系统内编程•JTAG接口(与IEEE1149.1标准兼容)–遵循JTAG标准的边界扫描功能–支持扩展的片内调试–通过JTAG接口实现对Flash,EEPROM,熔丝位和锁定位的编程•外设特点–两个具有独立的预分频器和比较器功能的8位定时器/计数器–两个具有预分频器、比较功能和捕捉功能的16位定时器/计数器–具有独立预分频器的实时时钟计数器–两路8位PWM–6路分辨率可编程(2到16位)的PWM–输出比较调制器–8路10位ADC8个单端通道7个差分通道2个具有可编程增益(1x,10x,或200x)的差分通道–面向字节的两线接口–两个可编程的串行USART–可工作于主机/从机模式的SPI串行接口–具有独立片内振荡器的可编程看门狗定时器–片内模拟比较器•特殊的处理器特点–上电复位以及可编程的掉电检测–片内经过标定的RC振荡器–片内/片外中断源–6种睡眠模式:空闲模式、ADC噪声抑制模式、省电模式、掉电模式、Standby模式以及扩展的Standby模式–可以通过软件进行选择的时钟频率–通过熔丝位可以选择ATmega103兼容模式–全局上拉禁止功能•I/O和封装–53个可编程I/O口线–64引脚TQFP与64引脚MLF封装•工作电压–2.7-5.5VATmega128L–4.5-5.5VATmega128•速度等级–0-8MHzATmega128L–0-16MHzATmega1288位微处理器,具有128K字节的系统内可编程FlashATmega128ATmega128LRev.2467L–AVR–05/042ATmega1282467L–AVR–05/04引脚配置Figure1.ATmega128的引脚综述ATmega128为基于AVRRISC结构的8位低功耗CMOS微处理器。由于其先进的指令集以及单周期指令执行时间,ATmega128的数据吞吐率高达1MIPS/MHz,从而可以缓减系统在功耗和处理速度之间的矛盾。1234567891011121314151648474645444342414039383736353433PENRXD0/(PDI)PE0(TXD0/PDO)PE1(XCK0/AIN0)PE2(OC3A/AIN1)PE3(OC3B/INT4)PE4(OC3C/INT5)PE5(T3/INT6)PE6(ICP3/INT7)PE7(SS)PB0(SCK)PB1(MOSI)PB2(MISO)PB3(OC0)PB4(OC1A)PB5(OC1B)PB6PA3(AD3)PA4(AD4)PA5(AD5)PA6(AD6)PA7(AD7)PG2(ALE)PC7(A15)PC6(A14)PC5(A13)PC4(A12)PC3(A11)PC2(A10)PC1(A9)PC0(A8)PG1(RD)PG0(WR)6463626160595857565554535251504917181920212223242526272829303132(OC2/OC1C)PB7TOSC2/PG3TOSC1/1PG4RESETVCCGNDXTAL2XTAL1(SCL/INT0)PD0(SDA/INT1)PD1(RXD1/INT2)PD2(TXD1/INT3)PD3(ICP1)PD4(XCK1)PD5(T1)PD6(T2)PD7AVCCGNDAREFPF0(ADC0)PF1(ADC1)PF2(ADC2)PF3(ADC3)PF4(ADC4/TCK)PF5(ADC5/TMS)PF6(ADC6/TDO)PF7(ADC7/TDI)GNDVCCPA0(AD0)PA1(AD1)PA2(AD2)3ATmega1282467L–AVR–05/04方框图Figure2.方框图PROGRAMCOUNTERINTERNALOSCILLATORWATCHDOGTIMERSTACKPOINTERPROGRAMFLASHMCUCONTROLREGISTERSRAMGENERALPURPOSEREGISTERSINSTRUCTIONREGISTERTIMER/COUNTERSINSTRUCTIONDECODERDATADIR.REG.PORTBDATADIR.REG.PORTEDATADIR.REG.PORTADATADIR.REG.PORTDDATAREGISTERPORTBDATAREGISTERPORTEDATAREGISTERPORTADATAREGISTERPORTDTIMINGANDCONTROLOSCILLATOROSCILLATORINTERRUPTUNITEEPROMSPIUSART0STATUSREGISTERZYXALUPORTBDRIVERSPORTEDRIVERSPORTADRIVERSPORTFDRIVERSPORTDDRIVERSPORTCDRIVERSPB0-PB7PE0-PE7PA0-PA7PF0-PF7RESETVCCAGNDGNDAREFXTAL1XTAL2CONTROLLINES+-ANALOGCOMPARATORPC0-PC78-BITDATABUSAVCCUSART1CALIB.OSCDATADIR.REG.PORTCDATAREGISTERPORTCON-CHIPDEBUGJTAGTAPPROGRAMMINGLOGICPENBOUNDARY-SCANDATADIR.REG.PORTFDATAREGISTERPORTFADCPD0-PD7DATADIR.REG.PORTGDATAREG.PORTGPORTGDRIVERSPG0-PG4TWO-WIRESERIALINTERFACE4ATmega1282467L–AVR–05/04AVR内核具有丰富的指令集和32个通用工作寄存器。所有的寄存器都直接与算逻单元(ALU)相连接,使得一条指令可以在一个时钟周期内同时访问两个独立的寄存器。这种结构大大提高了代码效率,并且具有比普通的复杂指令集微处理器高10倍的数据吞吐率。ATmega128具有如下特点:128K字节的系统内可编程Flash(具有在写的过程中还可以读的能力,即RWW)、4K字节的EEPROM、4K字节的SRAM、53个通用I/O口线、32个通用工作寄存器、实时时钟RTC、4个灵活的具有比较模式和PWM功能的定时器/计数器(T/C)、两个USART、面向字节的两线接口TWI、8通道10位ADC(具有可选的可编程增益)、具有片内振荡器的可编程看门狗定时器、SPI串行端口、与IEEE1149.1规范兼容的JTAG测试接口(此接口同时还可以用于片上调试),以及六种可以通过软件选择的省电模式。空闲模式时CPU停止工作,而SRAM、T/C、SPI端口以及中断系统继续工作;掉电模式时晶体振荡器停止振荡,所有功能除了中断和硬件复位之外都停止工作,寄存器的内容则一直保持;省电模式时异步定时器继续运行,以允许用户维持时间基准,器件的其他部分则处于睡眠状态;ADC噪声抑制模式时CPU和所有的I/O模块停止运行,而异步定时器和ADC继续工作,以减少ADC转换时的开关噪声;Standby模式时振荡器工作而其他部分睡眠,使得器件只消耗极少的电流,同时具有快速启动能力;扩展Standby模式则允许振荡器和异步定时器继续工作。器件是以Atmel的高密度非易失性内存技术生产的。片内ISPFlash可以通过SPI接口、通用编程器,或引导程序多次编程。引导程序可以使用任何接口来下载应用程序到应用Flash存储器。在更新应用Flash存储器时引导Flash区的程序继续运行,实现RWW操作。通过将8位RISCCPU与系统内可编程的Flash集成在一个芯片内,ATmega128为许多嵌入式控制应用提供了灵活而低成本的方案。ATmega128AVR有整套的开发工具,包括C编译器,宏汇编,程序调试器/仿真器和评估板。ATmega103与ATmega128的兼容性ATmega128是一个很复杂的微处理器,其I/O数目为AVR指令集所保留的64个I/O的超集。为了保持对ATmega103的兼容性,ATmega103的I/O位置在ATmega128得到了保留。多数添加的I/O位于扩展的I/O空间$60到$FF(即位于ATmega103的内部RAM空间)。这些地址可以通过指令LD/LDS/LDD和ST/STS/STD来访问,而不是IN/OUT指令。对于ATmega103用户而言,内部RAM可能还是个问题。此外,由于中断向量的增加,若程序使用了绝对地址可能也是个问题。为了解决这些问题,ATmega128设置了一个熔丝位M103C。此熔丝位编程后就可以使ATmega128工作于ATmega103兼容模式。此时扩展I/O空间将无法使用,而内部RAM正好与ATmega103的一致。同时扩展的中断向量也被取消了。ATmega128百分之百与ATmega103引脚兼容,可以在PCB上取代ATmega103。应用手册“ReplacingATmega103byATmega128”详细告诉用户在用ATmega128取代ATmega103时需要注意的地方。ATmega103兼容模式通过编程熔丝位M103C,从RAM、I/O引脚和中断向量的角度ATmega128将与ATmega103相兼容。但是,ATmega128的一些新特点也就无法使用了。如下所示:•只剩下一个USART,而且只支持异步模式。波特率寄存器只有低8位可用。•只有一个16位的定时器/计数器,两个比较寄存器,而不是两个16位定时器/计数器,三个比较寄存器。•不支持两线接口。•端口C只能输出。•端口G只能用做第二功能,而不能作为通用I/O端口。•端口F只能作为输入,而不能作为ADC的模拟输入引脚。•不支持引导程序功能。•不能够调节片内RC振荡器的频率。5ATmega1282467L–AVR–05/04•外部存储器接口无法释放任何一个地址引脚作为通用I/O,也不能够为不同的外部存储器地址区配置不同的等待周期。下面的内容则使ATmega128更兼容ATmega103:•在MCUCSR里只有EXTRF和PORF。•改变看门狗溢出时间没有时序要求。•外部中断引脚3-0只能作为电平中断。•USART没有FIFO缓冲器。在写操作中,ATmega103没有使用的I/O应该写0。引脚说明VCC数字电路的电源。GND地。端口A(PA7..PA0)端口A为8位双向I/O口,并具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,则端口被外部电路拉低时将输出电流。复位发生时端口A为三态。端口A也可以用做其他不同的特殊功能,请参见P68。端口B(PB7..PB0)端口B为8位双向I/O口,并具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,则端口被外部电路拉低时将输出电流。复位发生时端口B为三态。端口B也可以用做其他不同的特殊功能,请参见P69。端口C(PC7..PC0)端口C为8位双向I/O口,并具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,则端口被外部电路拉低时将输出电流。复位发生时端口C为三态。端口C也可以用做其他不同的特殊功能,请参见P72。在ATmega103兼容模式下,端口C

1 / 360
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功