AVR单片机特性
AVR单片机是ATMEL公司1997年推出的全新配置精简指令集(RISC)单片机系列。片内程序存储器采用Flash存储器,可反复编程修改上千次,便于新产品开发;程序高度保密,避免非法窃取;速度快,大多数指令仅用1个晶振周期,而MCS51单片机单周期指令也需12个晶振周期;能采用 C语言编程,从而能高效快速地开发出目标产品;CMOS工艺生产,功耗低;有主电源3 V以下的品种,进一步降低功耗,一般只需几mA;还有多种低功耗方式,在掉电方式下,工作电流小于1 μA。
AVR单片机已形成系列产品,其中ATtiny,AT90及ATmega分别对应低、中、高档产品。根据用户的不同需要,现已推出了30多种型号,引脚为8~64脚,价格从几元到上百元人民币,内部配置也大不相同,但其基本结构和编程方法是一样的。
AT90S8535单片机是AVR单片机中内部接口丰富、功能比较全、性能价格比高的品种,特点如下。
AT90S8535片内有4 K字(8 KB)的Flash程序存储器,可擦写1 000次不损坏,且程序高度保密,避免非法窃取;
有512 B的SRAM;
有512 B的EEPROM(电擦写存储器),掉电不丢失信息,可在线擦写100 000次不损坏;
有32个I/O口,输入/输出的方向是可以定义的,输出口的驱动能力强,灌电流可达40 mA,能直接驱动LED、继电器等器件,省去驱动电路,输入口可以三态输入,也可带内部上拉电阻,省去外接上拉电阻;
有2个8位和1个16位的定时器/计数器,除定时计数功能外,有些还具有比较匹配输出和输入捕获功能;
有看门狗定时器,便于程序抗干扰,程序飞走进入死循环后,能自动复位重新启动;
有模拟比较器,便于发现输入模拟电压的变化;
有8路10位ADC,可直接输入模拟电压信号;
有2路10位和1路8位的PWM脉宽调制输出,经滤波输出模拟电压信号,可作为D/A转换器,这种模拟量输出很容易与主机隔离;
有UART异步串行接口,便于实现RS232C和RS485通信接口;
有SPI同步串行接口;
有独立振荡器的实时时钟,在省电模式的低功耗方式下,时钟正常工作;
有16种中断源,每种中断源在程序空间都有一个独立的中断向量作相应的中断入口地址;
工作电压范围宽(2.7~6.0 V),抗电源波动能力强;
有商用级产品(工作温度0~70 ℃)和工业级产品(工作温度-40~85 ℃)供用户选用。
AT90S8535是AVR单片机中性能最强的品种之一。它与AT90S8515相比,增加了8路10位ADC;增加了一个可用异步时钟源的8位定时器/计数器,该定时器能用作实时时钟;增加了一种省电低功耗方式,在此省电方式下,实时时钟照常运行;中断源由12个增加到16个。
学习了AT90S8535单片机,在今后的设计中,若其中某些功能用不到,可选用ATtinyXX或AT90XXXXX少引脚、低价格的品种,指令系统基本相同;有些型号少几条指令,可用别的指令代替,程序略做修改即可。
而若AT90S8535满足不了系统的要求,须用容量更大的Flash程序存储器、或容量更大的SRAM、或容量更大的EEPROM、或更多的I/O口,或者须用乘法指令进行快速计算等等,可改用ATmegaXXX单片机;但这些单片机只是内部资源有量的变化,质的变化不大,I/O寄存器的访问和系统编程方法是一样的。有些品种多了几条指令,熟悉了AT90S8535单片机,使用这些单片机也是很容易的。