AVR单片机新手入门必看ppt教程课件5.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《AVR单片机新手入门必看ppt教程课件5.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- AVR 单片机 新手入门 ppt 教程 课件
- 资源描述:
-
1、 ATmega16芯片有芯片有PORTA、PORTB、PORTC、PORTD(简称(简称PA、PB、PC、PD)4组组8位,共位,共32路通用路通用I/O接口,分接口,分别对应于芯片上别对应于芯片上32根根I/O引脚。所有这些引脚。所有这些I/O口都是口都是双(有的为双(有的为3)功能复用的功能复用的。 模拟集成电路的特点模拟集成电路的特点 模拟集成电路的特点模拟集成电路的特点 其中其中第一功能均第一功能均作为数字通用作为数字通用I/OI/O接口使用,接口使用,复用功能复用功能则分别用于中断、时钟则分别用于中断、时钟/ /计数器、计数器、USRATUSRAT、I2CI2C和和SPISPI串行通
2、串行通信、模拟比较、捕捉等应用。信、模拟比较、捕捉等应用。 恭喜你:选择了正确的恭喜你:选择了正确的AVR学习资料学习资料通用通用I/O接口基本结构与输出应用接口基本结构与输出应用 I/O口的基本结构口的基本结构 每组每组I/OI/O口配备三个口配备三个8 8位寄存器,它们分别是方向控制寄存器位寄存器,它们分别是方向控制寄存器DDRxDDRx,数据寄存器,数据寄存器PORTxPORTx,和输入引脚寄存器,和输入引脚寄存器PINxPINx(x=ABCDx=ABCD)。)。I/OI/O口的工作方式和表现特征由这口的工作方式和表现特征由这3 3个个I/OI/O口寄口寄存器控制。存器控制。 方向控制寄
3、存器方向控制寄存器DDRx用于控制用于控制I/O口的输入输出方向,即控制口的输入输出方向,即控制I/O口的工作方式为输出方式还是输入方式。口的工作方式为输出方式还是输入方式。当当DDRx=1时,时,I/O口处于输出工作方式。口处于输出工作方式。 当当PORTx=1时,时,I/O引脚呈现高电平,同时可提供输出引脚呈现高电平,同时可提供输出20mA的电流;而当的电流;而当PORTx=0时,时,I/O引脚呈现低电平,同时可引脚呈现低电平,同时可吸纳吸纳20mA电流。电流。 当当DDRx=0时,时,I/O处于输入工作方式处于输入工作方式 此时引脚寄存器此时引脚寄存器PINx中的数据就是外部引脚的实际电
4、平,中的数据就是外部引脚的实际电平,通过读通过读I/O指令可将物理引脚的真实数据读入指令可将物理引脚的真实数据读入MCU。此外,。此外,当当I/O口定义为输入时(口定义为输入时(DDRx=0),通过),通过PORTx的控制,的控制,可使用或不使用内部的上拉电阻。可使用或不使用内部的上拉电阻。表表6.1是是AVR通用通用I/O端口的引脚配置情况端口的引脚配置情况 表中的表中的PUD为寄存器为寄存器SFIOR中的一位,它的作用相当中的一位,它的作用相当AVR全部全部I/O口内部上拉电阻的总开关。当口内部上拉电阻的总开关。当PUD=1时,时,AVR所有所有I/O内部上拉电阻都不起作用(全局内部上拉无
5、效);而内部上拉电阻都不起作用(全局内部上拉无效);而PUD=0时,时,各个各个I/O口内部上拉电阻取决于口内部上拉电阻取决于DDRXn的设置。的设置。 (1).使用使用AVR的的I/O口,首先要正确设置其工作方式,确定口,首先要正确设置其工作方式,确定其工作在输出方式还是输入方式。其工作在输出方式还是输入方式。 (2)当当I/O工作在输入方式,要读取外部引脚上的电平时,工作在输入方式,要读取外部引脚上的电平时,应读取应读取PINxn的值,而不是的值,而不是PORTxn的值。的值。 (3)当当I/O工作在输入方式,要根据实际情况使用或不使用工作在输入方式,要根据实际情况使用或不使用内部的上拉电
6、阻。内部的上拉电阻。 (4)一旦将一旦将I/O口的工作方式由输出设置成输入方式后,必口的工作方式由输出设置成输入方式后,必须等待一个时钟周期后才能正确的读到外部引脚须等待一个时钟周期后才能正确的读到外部引脚PINxn的值。的值。I/O端口寄存器端口寄存器 PA口寄存器口寄存器PORTA、DDRA、PINA各个位的具体定义各个位的具体定义 位 7 6 5 4 3 2 1 0 $1B($003B) PORTA7 PORTA6 PORTA5 PORTA4 PORTA3 PORTA2 PORTA1 PORTA0 PORTA 读/写 R/W R/W R/W R/W R/W R/W R/W R/W 复位值
7、 0 0 0 0 0 0 0 0 位 7 6 5 4 3 2 1 0 $1A($003A) DDA7 DDA6 DDA5 DDA4 DDA3 DDA2 DDA1 DDA0 DDRA 读/写 R/W R/W R/W R/W R/W R/W R/W R/W 复位值 0 0 0 0 0 0 0 0 位 7 6 5 4 3 2 1 0 $19 ($0039) PINA7 PINA6 PINA5 PINA4 PINA3 PINA2 PINA1 PINA0 PINA 读/写 R R R R R R R R 复位值 N/A N/A N/A N/A N/A N/A N/A N/A 正确使用正确使用AVRAVR
8、的的I/OI/O口要注意:口要注意:(1)(1)先正确设置先正确设置DDRxDDRx方向寄存器,再进行方向寄存器,再进行I/OI/O口的读写操作。口的读写操作。(2)AVR(2)AVR的的I/OI/O口口复位后复位后的初始状态全部为的初始状态全部为输入工作方式输入工作方式,内部上,内部上拉电阻无效。所以,外部引脚呈现三态高阻输入状态。拉电阻无效。所以,外部引脚呈现三态高阻输入状态。(3)(3)用户程序需要首先对要使用的用户程序需要首先对要使用的I/OI/O口进行初始化设置,根据口进行初始化设置,根据实际需要设定使用实际需要设定使用I/OI/O口的工作方式(输出还是输入),当设定口的工作方式(输
9、出还是输入),当设定为输入方式时,为输入方式时,还要考虑是否使用内部的上拉电阻还要考虑是否使用内部的上拉电阻。(4)(4)在硬件电路设计时,如能利用在硬件电路设计时,如能利用AVRAVR内部内部I/OI/O口的上拉电阻,可口的上拉电阻,可以节省外部的上拉电阻。以节省外部的上拉电阻。C语言中的位操作语言中的位操作 AVR通用通用I/O端口的主要特点为:端口的主要特点为:双向可独立位控的双向可独立位控的I/O口口Push-Pull大电流驱动大电流驱动 (最大最大40mA) 可控制的引脚内部上拉电阻可控制的引脚内部上拉电阻每一位引脚内部都有独立的,可通过编程设置的,设定为上每一位引脚内部都有独立的,
10、可通过编程设置的,设定为上拉有效或无效的内部上拉电阻。当拉有效或无效的内部上拉电阻。当I/O口被用于输入状态,且口被用于输入状态,且内部上拉电阻被激活(有效)时,如果外部引脚被拉低,则内部上拉电阻被激活(有效)时,如果外部引脚被拉低,则构成电流源输出电流(构成电流源输出电流(uA量级)。量级)。可控的方向寄存器可控的方向寄存器DDRxC语言中的位操作语言中的位操作 a | b - 按位或按位或 这个表达式指示中这个表达式指示中 a 被表达式中的被表达式中的b 按位进行或运算按位进行或运算 这惯用于打这惯用于打开某些位开某些位 尤其常用尤其常用|=的形式的形式 例如例如 PORTA |= 0 x
展开阅读全文