AVR单片机概述.ppt
《AVR单片机概述.ppt》由会员分享,可在线阅读,更多相关《AVR单片机概述.ppt(45页珍藏版)》请在课桌文档上搜索。
1、AVR单片机概述,本章重点:1.AVR单片机与51单片机的区别 2.AVR单片机的资源 3.如何使用AVR单片机,单片机的类型:,经典单片机 51 单片机性价比高功能强大 AVR 单片机功能最强大的单片 ARM 单片机,AVR单片机与51单片机的区别,1.51是复杂指令集,AVR是精简指令集。2.51速度慢,还要内部分频,AVR速度快。3.51的IO口带负载能力小,AVR输出电流20-40mA,而且灌电流拉电流一样大。4.AVR外围硬件齐全,内部集成I2C、SPI、PWM5.用AVR比较方便。程序量比较大,内存比较大,和同级别的51比,内部带EEP,内部晶振,内部复位,我们入门学什么单片机呢?
2、,AVR已经成为代替51单片机的主流。学AVR单片机优先学习mega16.相对mega8功能强大,相对mega48、mega128价格更为低廉。,AVR单片机分类,1、AT90S 系列:AT90S8515、8535,属于中 档,适合一般系统开发 2、ATmega 系列:Mega8、Mega16,属于高 档,适合各种具有较高要求的系统 注:目前AT90系列产品已很少用,多数使用ATmega系列,1、速度快 2、片上资源丰富3、驱动能力强 4、功耗低5、可选择型号种类多 6、性价比高7、保密性好,AVR单片机特点:,ATMega16的资源及接口,1、16K的Flash,2、Boot代码区,3、51
3、2字节的EEPROM,4、1K的SRAM,5、JTAG接口,仿真和下载,7、3个带PWM的定时器,8、8路10位的AD转换器,9、UART(异步串口),10、SPI(同步串口),11、看门狗,12、TWI(IIC)接口,13、模拟比较器,14、32个通用I/O口,6、支持ISP下载,AVR单片机 型号的识别,ATmage16L-8PI数字16表示单片机内部flash容量为16KB;L表示该单片机为低功耗类型单片机。8表示芯片允许的最大时钟频率为8MHZ。P表示单片机的封装形式,P为双列直插I表示该芯片为工业级。,32位I/O口,ATmega16芯片有PORTA、PORTB、PORTC、PORT
4、D(简称PA、PB、PC、PD)4组8位,共32路通用I/O接口,分别对应于芯片上32根I/O引脚。所有这些I/O口都是双(有的为3)功能复用的。,其中第一功能均作为数字通用I/O接口使用,复用功能则分别用于中断、时钟/计数器、USRAT、I2C和SPI串行通信、模拟比较、捕捉等应用。,定时器,2个8位定时器,1个16位定时器。可做时钟分频器,供UART,I2C,SPI使用;可形成三角波,与输出比较器匹配寄存器配合,生成占空比可变、频率可变、相位可变方波的设计方法(即脉宽调制输出PWM),ATmega16最小系统设计(图1-3)电源:5V和3.3V两种电压。晶振电路:内置RC振荡电路,可产生1
5、MHZ,2MHZ,4MHZ,8MHZ的振荡频率。也可使用外部时钟,如图1-3。复位电路:51单片机采用高电平复位,而AVR采用的是低电平复位。如图1-3A/D转换滤波电路:可在AVCC串上一只10微亨的电感,然后接一只0.1微法的电容到地。ISP下载接口:使用双排2*5插座,与PB5,PB6,PB7连。JTAG仿真接口:使用双排2*5插座,与PC2,PC3,PC4,PC5连。,AVR单片机C语言概述,类型,符号,关键字,数的表示范围,所占位数,整型,字符型,实型,有,无,(signed)int,16,-3276832767,(signed)short,16,-3276832767,(signe
6、d)long,32,-21474836482147483647,16,unsigned int,065535,32,04294967295,unsigned long int,unsigned short int,16,065535,有,float,32,3.4e-383.4e38,有,double,64,1.7e-3081.7e308,有,char,8,-128127,无,unsigned char,8,0255,1、基本数据类型,2、AVR单片机C语言的运算符与C语言基本相同:+-*/(加 减 乘 除)=(位右移 位左移)&|(按位与 按位或)(按位异或 按位取反),2.1、位右移,1:,
7、0XA1,0X50,2.2、位左移,1:,0XA1,0X42,2.3、按位与,&,0XA1,0X51,0X01,|,0XA1&0X51=0X01,按位与常用以下用途,清零某一个端口,其他位保持不变:PORTA&=0X7F取某一位状态:if(PORTA&0X80)=0)程序语句保留某位状态,其余位均清零:PORTA|=0X80,2.4、按位或,|,0XA1,0X51,0XF1,|,0XA1|0X51=0XF1,或运算常用来置1某一端口,其他位不变PORTA|=0X80异或运算符使特定位取反,其他位不变PORTA=0X80;,2.5 AVR单片机常用位操作指令,BIT(x)定义为 1(x)BIT(
8、0)=0 0 0 0 0 0 0 1 BIT(3)=0 0 0 0 1 0 0 0BIT(3)=1 1 1 1 0 1 1 1,PORTD|=BIT(7)PORTD|=(17)PORTD口的第7位置1PORTD=BIT(7)PORTD口的第7位取反,TCCR0|=(1CS01)|(1CS00);TCCR0功能寄存器的CS01、CS00位置1。,PORTA|=(10)|(13);,10表示00000001 13表示00001000(10)|(13)表示00001001 这里表示将PORTA的第0,3位置1 与PORTA|=(1PA0)|(1PA3)一致,5、中断处理函数#pargma inter
9、rupt_handlerAVR有20个中断源和1个复位中断,向量号为1-21,关键字volatile,在变量前面加入volatile这个关键字后,变量的值就不能改变了Void main(void)Volatile int i;Int j;i=1;/不能被优化i=1i=2;/不能被优化i=1i=3;/不能被优化i=1j=1;/被优化j=2;/被优化j=3;/j=3,C语言体系结构是函数结构,#include#include/Declare your global variables herevoid main(void).void function(void).,预编译命令:文件包含指令,函数头
10、,函数体,主函数main():C程序总是从main()函数开始执行。而不论其在程序中的位置如何。当主函数执行完毕时,亦即程序执行完毕。,定义了一些与I/0接口有关的特定变量,他们对应单片机内部的特殊功能寄存器,用大写字母书写。,流水灯程序,#include#define uint unsigned int#define uchar unsigned charvoid delay_ms(uint xms)/延时函数int i,j;for(i=0;ixms;i+)for(j=0;j1140;j+);void port_init(void)/端口初始化函数DDRA=0XFF;PORTA=0XFF;,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- AVR 单片机 概述

链接地址:https://www.desk33.com/p-236164.html